From 259f397e86fd2871325611981bb40da04ea5071a Mon Sep 17 00:00:00 2001 From: alxpps Date: Thu, 11 Oct 2018 22:28:48 +0300 Subject: [PATCH 1/7] Tema1 --- POPESCU_ALEXANDRU/Tema 1 PSSC.pdf | Bin 0 -> 195510 bytes POPESCU_ALEXANDRU/links.txt | 3 +++ 2 files changed, 3 insertions(+) create mode 100644 POPESCU_ALEXANDRU/Tema 1 PSSC.pdf create mode 100644 POPESCU_ALEXANDRU/links.txt diff --git a/POPESCU_ALEXANDRU/Tema 1 PSSC.pdf b/POPESCU_ALEXANDRU/Tema 1 PSSC.pdf new file mode 100644 index 0000000000000000000000000000000000000000..691da3fd5264319c1c297ce8a8e958f2b7714a9c GIT binary patch literal 195510 zcmZ6yV|b*?_XQf;wryu(+qP}nwryi#+fF9NB$+trBoo`ZIp_TD^Zf69J0H4IwX15^ zUVGK5>TYsHQE_@^26hal9>>hc4#qS0To2k1 zceL|Uqxwx(>bKEklX`l>vwQA_6ABlL>6DJ_r zIz64Mu7-~oAQvHSZaopd(_MEiFZL7sFShm)<%X0ww0ztW0S z75k3`XT7F5f6r9#fW&sMfQHg=+j5(|Tr%46(X{CU`_6LnYjubSK`gI0S}1dyPh4<^ zbW}Bhi$7Tc2W>bX?fO~{2V>lU@3&w#@mKB7uTFUSULXB|F5R0x;xdg4jy9uDJ~A1$ zJG?f^-V)Xub)BdOdJd1D419$Ej{)yUo(~8$tR72Yy?inDkGYW1Cene$4i1-{t})%x z&+O?&Z-Sef{k0Zf?fTq=3FES|4qb&7E?;VGs9pm$*PiJCCcnaT+Qp)a5I20NfA$~l zf70`u^?$M}uDt@$ae}_sE?<3|HaMP5yQPmkwY+rXL=xgXd?b&|6$ofN47LU6Gv?On zg-PMpDg-uCTr1JmAn%6QT?tU;(q~9A6$m-k$n0?=6=HfS8sY_4JGrPhb;HmdzF2L_ z6@t{BZd6fQHj&}n@fd~-jr~M}VXs%NLhHGOS{8L5F0+`&AmUDEkFk__7yQ}vS;Ao- zO)Xe2wfm>NGCi3OJi;48L(rNwd^lkbYX?L_2*pqfG8~5s-VwNbgZVSt7^6)e z#2-pcnU12B6?SOy7Fso751HuZqyZ}<#OVcA3a6b@Y6Wb#8|yl<4*$Dsg~iWFKM{C z?v>xkk1S8Zdm}G`BU&cSMtF+Y-bIe7B`cYxwlW>ecDvUf80@9AhY+zS&Ze zYO{Ht3w$?Lyb`y}9pZnUH8uw3+CEJ$3XdleikR*5u(9F`Y3%{ld9w z`?mVOPcAoA05ERyA!0&^nV}&T{N={M76`=m6CQ=|nZZ;rHYaq`UzIV|trj=6Bi#AQ z4Cf)z=?n_C;$fr<=KU$Z9ABcj|iPziDR* z<6I*jrN`S=F~l(3j~Tr*NHIDVAi?+V%xnYQeuf`(xNt0n;yCE*T38(eq3sh623yvu zGes~lw-Xlbz!x!8=7JX;eKe)LHXqaLI@i>jJR;F~wjZ1~7qwYROUz~U&KEQ=%h@XN zG!b8!&;RwXUC5kPm{;JqLHsG$_mbU)OK(tfer{7mRzJ z^o$yJ0O^GiYcSHb*cJk{3H(I_X&~6P%oY@QJ^mdS5QM%C%wb9iAns250=9P~Iu3zd z7g>kBoOn|NA}}R96uu^TD+1CI{p0}~h|mS|2M|S0j81$(k|PN+gpmMPrcw%j+;UPy zpa5W~#Ogv>05q9sUWipic%2Y5i8j=$LS}&aN=dbe2gNwvuv^v2xE|Q0LIf}FLu@8& zFN$S}PmpFq7-vvfk$kyMZ zgunF$a28^6C%qZcI}79n^#H%P{eYYm-G;ItE|7WQ)x`9IpN+5w$jyiJWZi-{@ZZwt zLiJAQ6e7Nm{FUg#;t-7=RR00#g?l(RAP$h()dkEAy(E=5QXkF@QUKj%9;7J<0 zEK?c77y!m0u?Y>Lez=W2V*ulzI)HJQ15iI;K_am$-2wJO^GtWU;z)hVJ`u5}{fu|3 zu?IT=npz+7izH&#y94h9;+f<&K(P1$le5`{syxi@0ku zArM+mx)b$|@=m!K>x;P={7%||{$dZn-0R=XnGguyNW2PiF#7CGy$ZQ9oDCShn0Qh_ z81_hl-1A8aVFL3Yx(dagKpc2VA`B%IMHo=njhGN9>w&!#^@qBQ?g2tn@dxt{eP`{! zeF@m@C+QC>Q1M5*6xxP=BKZQjj5&`mQ2s=J=e(^aj(zW+m>YI5M0#Ofi+caT8~6@( zNVzvS;nD!vxd zXm$kh5AsdCjk%@;WbCdcS?qeG1|WXLyhA?2-x7P$-Lm0@k0&JzpiVFjr%coj z2>=^UB)zr+;jdc@0Vi#kgGazP?i&rXaD%Ia(|$@l%VqeEd+#E zzv8Mc?G$EzLaf}cej9x^b*nn5SCI>dvwpQvT{0-i{>1sNsx0r9X8%z8u2Pl@NV9%r zt~wd7EGI0<_K&rGRjN9X_*qU^mhGQv{Yv|7RFwS*vvRNTZ6wS7VODj*_}yQY^(*ps zyKkeSZ2wT}SEH(vh;O6vZ2!#v3g0!w+5VPz>>nIbO9tKPkl(FJ|8Jo% z+dt6y75Ka6+vI!dAS?Hn-$Mzqe}Gq=^p|D#6}YFQuNp)0`5ZM#}naZq`VB&5_Y8M zs+9G~-a?>Cu_5cYg!S|!{_ zLGgm6pp-KA3Y3DFv|AwD2X!*B^UQqWuU*T4Xd2X=!SQUqD;4M?g-Jm8_n@DCikZ9z zTVN33%Zkmof)L@GV)xbs^dyP&{zY_xC;`#G4d=10i=?X6ty-50idQOyN|bHbyyZ4K z{&pZQMiE*@7cET+JT$)bWxl9jIpd@Ylk%HZ7xTr7_C)i#*r4=2K+NL;fu^6y8qNpl z!$O2;wG|U9ihWQ+>?Be0K z!{(ir9{aj#$;@-<)6?N_kD@S*X7E5R;4^;tW_+YzG+_m`4;2utEcZ@5?5F)$fdx0Q zTwn}Qf^g3*t7S@ylL`@+9Itx-UkOb(T#zhPKuAy^96NtQJ^4Xx^@flsKpycu@&QN~ zQM?B#7M60zxBFPmSPRvDZIM8C6|z_(cx1OGY1_7oSuNUm@+C!|Xtnwh7E1G{E#(T$ z0_2b4LlgfPIs^SCQJF3fen*pL&yp3R^g1i!Hv$Sl9o%2g+J!zUeY zY2d7cjp%XyLtXfPs4MuRF8zt2|Pan~`R$3yJcp(la17~HF^~UNinMjj>*;<2b+PTzgU&v+_<@ds| z+*DvG=+QbO!1$c}7vGk1h{Pab59E(WvhQTo8Cy36Hby{sX`CX0@&+c%hU2asEL0Ae zwIph$vUG*$6(i(i;I}uhnoYuOhDK9EyB7kfo zwh`?37ZtX}9KnTu%kOE|G31;(s6afK^ZvEtQE zp}6ewVB&6VvadZ#ETVPTrn|AciGm!(6ao^dZC6Ad+h_Afvx>Rj$bhB#HCfG63canz zxh-dCC<(8J(EB(!Fu(+|P@pk^fjp7!#Gw_K86xUm(*!uox{ZZMSufD&KRv#cJ=FFI!n`F}01Wn1(SlWrt02rw(rX32 zt-C2tI+T5b&Vc!#YM(8**?{db&I}H`<=wP7>)(6rD!8aEeg^icW;2$jihmuzfc?g` zrE6n*@M1&8V4J|!{NcazAF#9MbE}=;y52tdkG$rO=WPnU`JI$VaTWvF@G})UBs0YH zxlx+5BNwA$-4r7hLTDfYJw=VER=^&a7owWAH#Kz+i<$0M^zM-u6!YYzN%j}ape z$(x{J*R`Jew$;(;*Z2#u0hOppjcr+~0{gp6{tk?w!vFV>$mzB!*bV+dpl@ zW`(H3$GV~6;C>oS6j`-kVPT0A{r{o9b=K-ti&4F0+qBW@-2hm(!$69~$VqgF!^Ons z6y{#wOZv{xe^%VjfYOTer{LB?+gT%I#IW0 z&0zwh|6!1K>c*cQ4<^s)$e_buLX*aXe_g{XC4#19ioc;cqEWD0I~U>07&soIa4-wx ziJw>isqc_vE7q`AuwYL4iB_;>4qBq+(C%f|lqk7k98<#WPtjjyoCb#+AWhH-hfpmu zU0@tLqwV7iMOm9f&vZ0fE%!5VkV*9EUl-JxJpaRq`F}WZRQ?~VL21`Y$-jy4~^k zPP+t(F>&Ae#v}iepQoMtDf|v8|15vZ`_z1c{-k(phpGIASju-CGXJ;rz*1fP3wSlL z@&7126favmCMd`VtXQBv@f-5y_5Xu>)%$)S?cZsau8TI`_CYW&{q_w6dE&VXs2}8W z1VXk}p*};Qm}?b-Wc@`>r^RnCM)23`n*V87i)EnL#9%A5ltqaubCM z2$OW3<{ev3;fI(WvBI|LX>8|a4HpWWbe(tBDm13o;Hg&tHLS(ZuA}Myn0}1~hvb_s z6V?7p;6(Z>db9twsH(ymw*KXd=_l@U{rUwE`GVC0p!Ss$C-m-v|5Di3Sen_DyA#pm z+`oe5QAND`KTTQER}UvkL3~>ITsr}*Z0L26xu)dnn-_2ZvtXie`9{vG^4AjyjJ(z z)Gt`tyUPM|jOhcx^t8PUewQM+o~Ry67w@3tO+@=<{kGE13Xtzqq32?wB?k=&J;|XN zux%6PgE6(&Xr8ep?t86l*FQxqQ`Ch}R1a4;Fvd?s7j8sUQ8A^pXZ&2})rWm7cCKHA z<%k$PqrQuGEEy~NZwHfM5%s<1XNepjN1xaRfz56%`{vU;FBV%9%34%(?4I9RuK$V~ zR==hHoWc7~G!XxrD*q%q;MX?dOCybEd`tlppp@meDOQ&Cne!tc9@6!r67-A!#JbkQ|l&>*OXsP5S zJYM$;oN>RLDgJPKEEX08RCawnjJl2fGVz|Pv4Ep?)T(G#*EhnnE9*q+et}Zigm$4+ zG6Z#XbvC696%UaVuquWooVEQF3nFp!J{Jr6GZ2YQwJ&P8?9yvvI@TYk@K1cm0Yx63 ztW7Fo@jm;qI^xQaDi}jqJoOx9!VsX|vXhiQY}^)bBNLXrlH^_mTJ(EsU~Fsw8NM(v8CuDO?`H(=H$QmP{PV&Pey=% zZyJbQTkiHU`9TvNWE5;TSqpF2-d#cv=6mk>=-VCAv#TQQLY6VYR#_0wi~p-S$H<#} zS!3WH+pZ~1kovPzMj9W%ahisnKFqhEq{UPl8VrR4BLnB(oe=ULy{Dv4V4=yeKap@L zm;K1H_E>>?LYPt$mgv9IrLq!^7ivFQ`=9E#KAdj>{G&P)<+%RQsoOeJAYf+yoJG{| zvvv5}Ydn?Jk~G!Qj>Gr6s-j7#XsPO`^7y1~&yh#`h227Zis8O-he$g5OQ-_qJB9N8 zmqL%-*#mpm;#+y(Yd3iM5wL|IUr?n=q|HX+q=F`->8p(4W7?TYAwSWZ(vo4`@6t26 zH+Qo&^p$|Yi>rHjihM_KQNQV6Sc&E2ZZw&gWw|i>n-3nOIreEHFXg-^@}9UC1t_#) z;KGUJdHzvRe>blFcRt8mK$7~tzpfcFomwXWIk$^}4q;grA`wtuX>a}AqMoj{k_JY( z%GJwcrLAX2t@=v2qCQ<8Oyjlk&tdQ~3QeRU<&EiG%0&VE8+d@(A}wlcEVA5A8{!V# zFs1gNggp7bj&FgM1@FgwO0&d{hI3yg?)-pQHHP1*nJi$Y9rQ_csOtv>0^H)pVe{Lv zvvIC5eXOgFS4X_Gtyh*FN~`wpjG3uxpa=y1>+I}| zSW#Wkpx-f?EnK+{LkEvto@5j@NJ@$PAFoc9fB`cT+rc24DT04kl-+J=w1NdMd;X-t zV8i`|&ubC~5Xkx^B>a2iEU|@)5MyOxl4bfo0%v*ZAI__~X?euHP_e0CSJjxdzm8PI zw9eE5Rgpe5m)ByZx7WR2&P)@P*in^?25b-fBN5*0NOmGSS--VAXb&1pAgPo+Zn>k> zjhCWxUS=a+0j-*0I0==6RpofyCXn1bNQ@zNO{lvj=?}#6k{~2~5>4(FXAD}tn(%TJz z3#{Ne62|ElfHTs42=v-!$zoS&&8}EF zw$pm!cMRhn=RNQo&b)x_PTaZm`TozEC2n;(#F-qP3McpBnk?3Gg&giOe`h^AIX5*k zv6s@O#pHcMCBb{lSD2oB-}YZw7VTQ#G3%ymf8Dg>w95eKc&e=s8(pK0RvwyKIJzAT z*`*n&;&!BO}?wHJwJHGm0(dl68~N#-wcO8d0@E%w<-PfidAb(A>e>;hgI_@$?isv~eNO3)ziIhVl(%Y<>u=32P%A$!Pn$4$*43wY7PI z2GyNbF|BUm>JoDkrpYm&vO$G(oj9ka7<=vD459#SylGadJ zoe@|L!y6<-I7)R#ZYb-ntY9D24Z%m73QX{eJ=F=UNjrDVp$>QLzVD6&-F4lB+`xqz zJsg9G5GedDnn1p8i3Y{b8x-`+=UiJ^QfA781g#cmXB8kjqD)uSfQR}0*9f0Yrxd(| z+P}zvp+u&ITT8o1o4*dvO34v9AHk?mVX7m zyJ%yaifS{)cZn79Z=VPv zRh@Nob=Q>Stzq)`CCSOhJru8pOQQU7M8!$R(AKiself>CI-DG#T*v)XmkH^NR)`E* zt!*l{_p-# z+d5nVdZX+9CJ+5mQStoDr`Dl}k|%8}qf=VC>vzZykD+9m*&AtVnD1qp(t8yonn`mP zlTU25MAMP`Q{gCLX6)@Q%w6O)226lkL#IY}qRGQls6b^S(ujj)2^(z(x&_MDO|r2H zDMtL`8fjaB=go;U1l|zN)s^!g8RQ5NqSHnLKD@(bW7VBMG?`IsBKA^e5UYZTMuuZ_rj3?vbP&; zftR?eNV%&BX}jS5QdwL^c(^q!vm)-uF5!1R*~)L@C_!lg2=LAnvM?n$RE$3EwzTH)9E1F+h-E)QMd}?9A9(_!VJyW|q`w%2U4w{~!n{NWL z=$MRxb83iJO!5GdFz7TVI>B=o_GD2 zX6%u%7MB;Mvl4}`23O65!MWSYzb3*xG4=PeMznUQ(xMQ575ts3tH%hQ=687hC(+5a z(e0pkg1>4GMnq9BE8KQa(5_(SFhzQckr|r-j(P?I3G%1IPq@eXl#N7q07I#Oci70$ zVu?tNmrh6!LrpPN(KresUcS;9^aDa-PHuA-?Tw@+q%G)v4KQ!>+>rcFx(mKuT%HE1 zNIQ~`N}rz0p^%2i(yn>Mmg2fl)scsj04q{3cIXdpr#%+keY>|J~hD+KfOX_Wx9P->IexyM=((g4&(x1m>F&W&mhH8P1<_@#iOHhCeqDRS5tH|UwZo*Avu^> zQTQ3~oPqu%jQz}faGkg$BZB}xQ@}_sTY#;%rlq78&>=NP80^7B^(^vk)bmtfbCIj6 z5>PxDijDUr*5HWuYy|lQ31y-v7#Uz?;birJpKz;S^pf(9IxnH&V?1G6D-n`#BLI$j zxvlUFS(XgxkzM;R-;&l3-0IAEs}Co^lsixu3j0Dhh>m4H;wS(?u9^6OWzAee#P!bi z&bK!EHS$0|(Tc?|;z$ZXPOwgB^7#__(*1IGoi#CMFt-zo=wwGvdoQ)^40VvXi)&aa~Y!W|y*$|Ngs3xPM+X z@{lB)8;+M@D_Ev|x2QXe_mSA;UE^8KRVD;$)ue|D=U}hPmkO!0VBwHQ@8yB#I#EA9 z;?tSeIpZLy8!uJUb=@)VSFu~w%ddu6GtFa`8W(JWG;V)ddk0!Cad8Z$NGwm@OP!mJ zly|0EdpIAf&$J0nqctJrcZ-`J=_b{EQw5xClL?gTTs#(Gr^kFl4g(_i`<&;~Pb)iE zGAH){(UCQ}Q4Hnwg7n9$Wo#+?FZl#U9Fy9+oM~T1U*Hgs+r$`V+0pr6p~)u%^wn3w zql{s5`q1f5S~QJo4XS!Y>ND*h8zsJcHOt9DL>zrMIIY*HUtQw%V`@Cvb^EI-hy&i6 z8xLzHzYjiZ#z~!m4I*Ah0yx6mJavB?mCTO$3PQ+2V?FNQBFCy_HW~84{%$s`19zd% zgq;jERXx*aDZ_e)`(d)SP)scwH*QEmOwnL&5q*#PRDz1kv9F7)m_Z}3a_fBy242bI*Jf)>S=kdfo(>8Gl5XUdyy!Rs8m<(9AR{l@?{n zYcs+p0;jyjQahZx4Ph7`%d^FgF?~nIMk3>~;>8F+$`%l&8UQ)-M2c8HyyOKC;}*eyu;6KJ^yXt@BS><)Y;15D--*n~Iu8og{Z?-az) zW^F2_3Ija$d-=|@oXvYVw!cbB)EhyBPQ*(pEVU1`OMutFqA~Cm>83#;IK7id+@XI@ z@ls?A96N{6{et2FNbD!q@-tuTC-bsr^Owcu8(y!rV*oA<|B-{UW56K>wbZK~^(SjP z)aBqa*x0e5FDBckfX@yAp_tpJU%rdExkdB(`8h>SUazSI<2spX%6T#_7zT@A2X+z_ zCUmwlx*`eLCR#O$4Ra*SGEFq*fHvCb??gwf0qd4i1yR`FZ)L$4^!kghHq_SS-B&K= zCPn>^9|wK{SI2js2f4W}=0~|%Ub8MA{LLZ4U~dNQl=k~~gkxt{!v_Y5iPOgdqS>)$ zZG)l*?;)V8eDiu7m<8Se9_!Y=r+%f=o~L|UW|TMQbKSq}M=xhDo7B%a+$DYlX}D2J zw<@`7O2SYV@Fa**RRD&9DCGxu+KmPHU2fJcS^U*N0|ZgVTq7V&G^T(0!VHy8dglJd z=fKbs92%qdC9_4kAV)5l1I`iZNehkDzeLyx^+y`1j0J6|%cWVTudntgfnR0 z%=|KVSjMH(>-%{!+4J=>cm`Q#<$ccty|)%+Ut=XKsr8Z-*&Gf4Q7tir=Ff~Q^~|H} z@*D;ZcuuvfDLG)3ph=6V6#OQVxdV|N~!&%R_85EGB#b;W4C~Cvu`S6>V`LM zPvKOR{H<#<`XRXmfsAdgu5UkITRqq~MNBlVco%wy&emq+L6w?y zk0%RAQB25ZrJ$eQtVSXXda~ZfmoM>Gw%n{ve0^b4jh&vcJ>H?q37qN3qR+wNyt|R= zCPmIw#@JJFM~vDH-AW=JyRLH?-jfW^HAi92M-4JR-~u{6N;N$yWPzJ5VwsKl?BA@z z`Uqgc_CE4u3Lpr`$HIiT@97 z11nsswTbIO?~8sAD^)fX!MQ1Ph<=V#cBAmWFyJ)tY1H7=&o zT`M0?wkQ<0^ECLccbz`pm*~SDtxlHci|Di}CueXR2S;g>)gPb!)C*}?8)b9$mJkex zxj#he^U(9rv(#8@A{y9w*qT~QPY{fpJ)KRRCjt1vejWVE2Fm>+kzpoDno_nAg<-9c z>ctmG>Nq-gnb=*ovip|7401J6wz9S|yje)B75H~Pe>^7!R()LSQ;wieA!TJf4A^_1&fWx0v{$fJO%8BUZ_*mSH@ zxJ%_0-6wmb{+Jdw)7zyZz^c#z%WM|wWYZO!g9O{?#HZa^9!l5OWtKwBB(D@Q|0&Em zgotad=jvkNHXo}*%8Gc#Li&}FqFZBBqo!G5h(77i=!bts*!T%wEoeXXc&te{_Gfsm z!C9SOy|*dou8?br@8=Ya&pvyaNXpurR^my;^z^+6i7nJh5Z=h6 zS2E4Zi=WXENVCP5sEerIPf|K2jy zdo?<$W?wR$fxKdO!?4uY`r&(1TF;mNFtG77CMOb!z9d@>KWR1TNkT*Zh&PR!&}&Uc zW~hornF7Q4YYsl8;BOkc`)a6Hg>C43+0z z{I$fC8%N53G>LJ`(3wj|T9AmEX~mh0I2iPVE%S$IxJD)*+>TT$gFmpjX#(rk#u-W5 z2qtRp6HGh2Co(baM1P-z{6u5vYIh+7fJ!BMMS<#grD8nJYYhK_UB0c6l(A$1{Z;0| z;DuHfF^9x9OVJL!GW2?H%#wRf?jTHhDMwO0>M`wu{P-Tr3&-$Rj!@w%iZ_mE52j~H zVS>A~Bj&L6fEdyZ4u)HE>sbop#`n&{C&n9hPN>NHGO_8hx zK)6M6KA?9-VU7p4M(Vm4y2W|d@`bdrA)}piD+Q$v0IT;4#tR%|%IrdVR@U7kVu2s$ zNXCDDCvb+tDZ=*N(`plmtvFrsva)zpIANnEXH6Wk18Dh?+kwjDSO59 z%75qdm6-W)S9u-mnfI*rDi5$j#*S-I7+Y7l-fk~S?UF+IrPCqJ1LlY>vPaSZhA||* z1}Ei-xm|_=Z~XTw*R7HC9JELsZE5&g{)P8Vg1$4AP8fPKae=uv$JW@J}w#?ZH7I!>DsZHaiSi(a4U+N>1yZIP*!}Y1hMi1sw zC}HiI5f-5yIbT(7V;W{TrkOMYu8mcLKRcUWM$x6bKYuCbsLYjrrsn7C$K6Xva{UyP z=1H2OuMFX7;Em7jNa&H&Cw9PX`9!CRth}KKRl=Q8w0>YBC|VND1j97R3O`iNj50%* z4inS-EeQDzW*=TKgzwm{bUE635jbv0nEv62^ee{^k3Vc~uO2NelV$k`ioTp#JAxKp zWPEAz9)%9}M48Uc6tov7>|>bhk1=mjY~%B^g2UD90|-pbtMdF)c<6ry{pIonKShfvEcO#tr#NW50hEtkR*y8wT`g#}c~@ z)O!!^&f3lOfy*Mh2{S%gd(V!7BtNg~j91&0vK@l?5w9=hK*}0weZ%8Se*3|EqYZeH z>_U)U#~o6?g@#?~H~Q0o-8)w87^El}AbMtq>AmTHox*QPY3Infu!r;xoDB8g(Il}a zoE^7#TC9#0ygpJ*2j$Q}w>WJTN^%-X@rs@|mY*Eoh%3T|i**NMkvY|LfU~C3JL7}9-hr$kTyMa!}24E;lArvFj zkve%ZcJgll-z{7z2!BaIQn zOO{H!0(?Jx;W-NW6IyiK8I}tqbu*AHL6pYlLBFh{(+eUjvbyx;CqS{>E;hAuLod zBeE`7bVX5-ohQ!Es8NOI+6E*B6zbkygL znmcZG=Rip0=a#|jbE36)m48~tcWdNV-qEP{<^F+iF@~E(6>D>SYHq_2 zNWE%nELvMXZuLl0iZN7ES>DxF#j=xSVce58MC=cNfj*NsHey^7N{(J4u4Wh(R?{-3 z60jE*XMJz$tI8#y#~)p9O>d5@uvb-6skG&*_Lg#)v1wq@d~W)hlkZsi=kKqBl|p(xf|KM29v3>xy>M9qS6Mr|b)W{>11e*{>c}%4M>k zYRpIb z)UQ1Yp8j1G*yf=AYu}@vYw)LIcXpZGp{kff?X6q)cjhCFzn(8-Fu8Lm(&7S8dH?T-FquMLNy;tLrKrRVEg(jAC<0Pws) zYSr_v_^!*riVrxyG3EO}43TH|0rpb~z)i!=(kRf1)#IHAWXHPb8O-#E-D&m{D&c!#^SCSJBSYr*5f6 z%Zdn_3f-)|^#e!OZGVroHKWQJN9=0cM<#}rbtkycyvn;ck)5LE8H?RR9D1<{J0Q01 zK7hW$85NSM%u+lHZ(b*ykbM2Fgxh*xa6-Nr-hu!ZVE&oTopFk*RC~JC;bn4ne2mCK zE{iIckVVGln8l>hH_fi1M_1oa@5pQD#bgol0sRY=D`IrGE@Rn4@2ZLtWCv!aD_5Qh zX|s6sWY(h_Mm1&KOo<+RzkwOL)~(#$d;@ zXo^V6vE#&>!mJ|vkeU>g8=U&{huC(trkT89yzN9C znXH*ks)@?f0ye^s-!zqc&qgoITSS*5({96_$H;_3iZf_3&m~{> z4{A6s%6DKtRQDzd`xwd#`Dp#5znVgOXYHX1n@MO2kM8txX2SXXu(==H;RM%%Wowm{ z-A}Y?%jv4sc1__$538yy$@L9A-y8UB5q}G!yAL3oZ!CP_>2;b)R3XVbNNz#Ga<3`O zZp#y%7L0bThUpulo(VJVkz`6f6idVXCB4~O^kUXHPi5XHj~Rg}!>r2)m7y(8^BeoNg2lBJ4?!-6dzrLSd;Iv<eQb( zw(8`+9DZj9CoiQ}d!7^2uU2443Vk*kmxg=r-C(bX6V@`lUJ7L`1r<+QB?!3uG0VMl z$I0_gNY=4y)w(`%YlF2tNR9fO95ml3n`-I7{;alzO%wZ6la83rYTo|+)0Nx)p?>MI zeXHKKapy|Fkf-o{%w-^8HhvQ3wHwf` z2}y=KNv%~|{ECj_y1O%5r+Z7jM%=O;w)q>6x0PRdlRxQyO?i^xEiX7{HT6Ohamb6K z*|R;5+71~~dn)9{naiu;XRBahc&6Zbq$(<=`Zk-M3&Z{=>XV`hr3^83JHUY_4L4sQ z6XkiFPx)7;0%UqCo6pmm9XPmo4uq6SLH<^im1Px$1_7%D`T96t?TdL@2Jlbe|$j(5j9MZ(szHMY~PR4h6a!X350^pNjGy7) zK|0Q9}k;+E>y`=R^eCvY(RL7Cz%k_ z*+hL+4gP*|sAHgrlZ2648LUFlbLc9Y9iRfyt=(JkoCnaLd4&+1s z%gdN@1m~OyGG;|p{AD-$!`O}KX?@NgkE4sNmxK_Dgn?xd)LWNcr+aRrd+zE{Smrx; z;Sl0x^O#j-#~A1K+j5dRW%WZhnx`XsCxS-;22YVBwQkb-fjL?EzxOqFODI~4OezRj zZ1wC|?%-S6Qu6U>T{5?KQRgzU?m$jd@qwh5^Z3Q2S)Y!C$Gs-TnQvi95A5DpAV!w3 z4u}O%&5rZrhewN6b+$Qi?Y>p8L6&XB^H#}D%D2}ki@)b{f!D=KG6Qkw!}HA+Si_k* z_a1Jn>#JkL;n!by{c}{J0O&7veJ8t4#wv!Z=lITdt@i;A{=>*xj}*)qJ(;(z;SA0UoqYlyU~f5!Y8H=N+wkhdssDRn{Gz*5`O)5&sVWKS030 zYk~m*vjCG6EJmpjyFw6IhpVO+=KG2#RnZcN!-!{}cs8~2{Wa51L1pT9U(H+|84_I1 zTGs^1BI{F6zn=Q!={M&3U>vx>4GjfoV-wKE9!DFihKCJ#P0bR@o(wQ`%<=DxOcle)>>rFOY3<*`+kP770OD?ClLZMC-xzYhe{zo@{v`cIw`3)niojN+715$(`YT=Gw<%Kic+td~ z`RfP7i{k7*6OBbtxadN;pidfM7|kW2d~crvGOi9pO^O^TDIQc@TFj*EqQZzRXdey% zO|hGzS>?nU#zqO`3@7GdsT?ekoO0v)j%bwoY1}K#7;cp3n6M1(*Q;j@9$ZFgs4U;* zL22veR+lSOR?W&JRDnIMWh|7FG=1LP8am&Q4V-eGEu$s`xa-Xrv%MOPyC&%5IhNBd zNg2yVi{_}&WlRx1L)DqO`sq}EXZz;Abu`{SN*i?vwYo1V$XkBm*3>nxY?;2G`|cwb ztX?`aH`mM1%BOC>c;&0V`pa{v-n)w;ux>$pu&Agya&>CX$YE!H^L5WJe|zPn>L6#h z3iXFu{DWxmW8vUAl(B!j&RI_)$@H1MT&|JoWcsY`;Jej^(N!CQuFk~?dM-bm3n4=T zLWZG+lIc^rVW}ZwV#qT}L3C1pwG3+vYX!;1){M0tYXZ4x89@pQD@M=?Ult|xF$1l< ziXi37FO3Fb+$?)vjq?5v(O#Y@>FsUfw~s$I{=|48cl=hLUfYDb6!q2;423kWFBq!U zycNOFSj{^!7^0dtD;Unzyxw3qqIt`M;Tp|5A{a(4gbNG3BS(y|Sh8qEdAZN$l^wYu zs)yis2m+yas4cWTbS!itB!!YRpnH_@v&Z+2XMyoBerzOE(^NgXnpSTeH|GO2I!QUb zjK2m`+LxW?dTP878;JZ^xT^Liz7OCAegq8Sd+RaSjZC0Y?Q1P4i!raq@Fs^A{B%*!?NB2TmojSp z*}E5J4h9FVg9lUd&Kj;M2niqm$v*xu2!wx&8AY)3(_0BDGJ#!2EQg_JQCU?juWR{j8E;q@uWj0Ih zm5<3x7Wg#T&|x{5{$>xq7I#v50e`eSC(st`2%ZSCc(5rrJIH#2$AXlL^&*s|5n<5z zv@aV7Ge+W`kt1)t-FbF|ARq5-wNnifB`!f~#Dhxw<1ZKfH@yE|TJ+lg!Cqv%!S+ao zf34?udG;=2AGtV)5Me)ZF+e^txad`g0s#^LJ#;BuNUx#m16u-*1r7wVA(Vs-dR5N+ z+G+H1KSeIGU?_ix*FGYYrFoTLIG_bcoamVJ{mExns4q;JOrC&NnxxO`vHbrOkj>^S z!_KpevsngXv$h83w495`8Bcxsw2_pf6`XA0ftc(5GSq$VUJNM?#byLmg)(2#bh^8h z2?qCACYmDm92x)VV!?lnsLrARWk=1%X?SKd7Dfg2aW zHKx?2$k4zFwwQ<02$brp&pt6lbLLg7GA5Ym-$RV;T$89aK4YHLA zag$>NjEFU>OJR|Eb!@eI58M|!qQ0k|f-h97RYlk*#mB{2ty&u&ud@7jv04;ok}Aes zE*2$&@Mt(0=BiU`+%@s~%E^_B$aQ3uy4t-WzMkBwu8nUY_rxC~kHoiEc2&OOI;{3q ze&BjnJyzN0`dt0oeWLOV`G@Q4cw_=hbd8J6gl54BZ6si0UTbR#l$)jEu+f;;JhiQxTyf z?Jkeo?V@H`CL|s&E|KGxp{=@O6`?>NxINevZc0yaCHX4^X0 zFc_3R_k#$<_)CEP1m^p(6smyX2ETWQt~#*Sb;<*&kc^oS-%-zbN3^!~cGBK5=5o~R zn39)W51B@(Q&oGNsyOP1tk$`b>0^6cb*^|`UFKztQJbNKAn48pHO9>De2VDYmxfR^!3^?C zI0+rGOA+BknqvLE@k_(`{eKr$o?Uf=RvL*^2bQr_GfN7JBj3F*7>8%q|8rpdcef!T z=lJegfZp8%)0@6Mt%ONVOnACm zr2%-v4LZPKaFDk{YB{{OD;)GV>`HMF?E@KZPFH2_8?Nqo=G$AB zAjVmmdLwltwFovq0>-?udt&F#)KjTFJ?o$pM#1H~)*%N=iLEPfvouX zu$oxKN_B;Ih41>3wu-xbrq$~H!hS|r_hk{yoxDfIO zhNBcU0tR*_Q6uARUxu)`#dvjJ5Jq6Ux3!=^c9teh|J~i{%rgR|lZvw0aP{){fs(&R zHB{q&@%1I(ZB+NZb7rJjG$U!WFC%G2mPU)mvLs8gCC7;-*jaEA;((Lb1QVB?UiZd! zA&;eLOj*(Zml!A%@>-I%?C_ezIElhi+?J&aZqwd=yxiWK65f|mTI$xlP4l%EY`=5P z$VuRR_c@>DoH?^-mjCkm|Nj4@{J;8#41SBZPNpTj2pyLYer{mElcB`A;@m6H^1CHy z`N3a~{Br!?f0Q3xUb-}V!`D~e)m!KxZ=b(;Ooo=fEZ;;8q28K_+nzpdTV=6)Ypn0< zYg|M<0=@ytOo}Ly>#)8}#Qo?&tN3y6Y5>l=6K}@e%upA{pUIGZ+1GqsoZG*-n z>zNa|KW7#)Rwv;FLDHFma*=OuZqHp8zcFiRWXVtncx1^QZ6MT?L_j!Xi^jYN-NtmX zNsY%FNZ^K0DE=a;kW6FxDF#WC4_z)JGCj;7Lya^08ImES7emDwcu=>uq{874X}8$` zAXq1+=lTqKZpHc%5j_wk*F!T;Mh}avK!@?+@m8v}$YNP!@pE9YEV2z=50*s_9`s;Y z^gL1e+%XU!J`<9Q0|*amxRO6>$YHiFhjn)_Gb2Jl92m`N5IuJUg5u0BM2#V8*jWie zxyD?WhPnBC&W|KDlaIt?H51DgKt2K&%?(WjA{NgnEd@ZpI1URdjN(QO{-qPmNm3V1 zO$ZeL!^{bHB~@EEb;MmE#Q^Hg9u_M((Ow}8At#UnL9i~~WU4X0hi;>($sPhMe2B~^ z6GNdE%m;)djM_tFO0bJqlVggB+I++Oqw}SL zVvUHQ#M%-Ta13q0pH58g`OXW#KX~u9PnNnu+z;N|cW3+6fy=GEtJ-cd`; z-+oV@Kz+G}8? ze!R8Z8l)uCR{z$(*5Fo&He1a$qH(I-bQ6D*^(NbP`*37f9?lNucC+{JyR5rxciDGo z&zhbsh)!$4TC|qJg>W%kLIhyOq(l@soz4`Nfn{XXlndk{IXM?yT3lLMZC%~i%Wtx7 z7B{6gX<-@2q*RbgQfsfjH_#jGZ@HpyMe&N#6|I-I*(jb*yLc%b0JA$bJVpv z{uuLE_VL`a*{Rg`8{g8V+GpF{m#}4t*hWeRz|R2*c7i&8s9Q^W^C2m`O_m~&m&0hJ z7})D>gwiV5+=5`!ghrbw!QqCEfjNi}Q+Xve8>!|!lXO?9ln(^*B${$_>53pD*A&FCaeae2F90OvV~$4~mZ>BsToXgppTs6e6UdC&@%SVPvNb!i0K3 zbq>6E#SLH8mi_*F_pSN!t4oUV4}*a)qpHEa!$UhBY->->Kl$+5Q~zt|*0L`cwLmzb z?b?6k&JD{7Yj#}sg|BVc`yOYmMzY`+4?Q?|*X1qOHAQ}S)BU{<{c9;8XHl%cFPt(T zf?lE-ylCKx+``mLjoD%j=Re}O)qB06Vv263*V4DzO=?U{w!~VJD`G2>PbHajvXUfw zayRj}+xI44PyRhYci4`Ct+m zUED!-H;q8J$Z@PLR9GFtJvPUZFtk0RJKSz$v9a~0ahMB7j~Ib4zS6F0Nz8%a-2U9b z+^L)?Co9<0E7+LNjHWrF$BAT)|8eoJ%(snhe#%)T55FH62odLWhDykVG#j6Ni z0xXn>oHiz) z+;NGjmg1vxht|I{+I`dE6Ql}bO(Zc+h~vMDuqfGvBxcfLr)AP$+a|prB3j{vAGOJ( zm$5-djkvF>ICuQ`6v(24oZu9rz{~QL=ez)WYrm0dE0l~>TT>Rd`khLw_*du0@@$lP z*>}wUO7LLxAB_3Az>C3G%}3~CjQM%-$)@$;9nDgkK9?wC~tjDZ)20g=`F^|bpBR@K#L?4Z!44nq8Y~akm=>aGs z^>`FjVIYeNTR-mn_er^aoQpgEhY`bo21bz~v?XPfzK}npx7poP-JOj76C9U zV6tTX?rOD^o=>Xtrlc6Scp2GvWw{yj13lZm!Yr8As@7=!+K<0%dhl|$95bsb*Bo#8 z{3pMq95-dcB_7%rD5cWE`^*j~r4{PZ^K9@D4wTagw*y7ac4vi5k|8c9nRqA3vjn1P zeU&N})^p+-;Akr&uojN7SaNiQaoYT@iU2}Qg!gdU`A=v64!cHq!%64=8ratZ& zj!w`T+r+1Ylq(fXOO2^yzLl;7i@8;F7qf<6E%nlUOds2C=@a^beYxKJjr29l5Pw7P z2I-#)+fCc)?aX$|E&T1m?ZI259idy4o3nSD?q}}}eKq^l-0u8C%;WsSu7~}P2OpEZ zmU<-nwcNAp^W5|N^TB7O=R(hipUJ+&yu=>0)Pj?_w{!ns|G|F}{)f_iL-yL-4f)-i zsVogew#omTFeQO7sbAWh-H@Ytm>%|Wo-#3n1p<_iH`^FW%Xy~4 zb9K!K6V4^=QjQCmc!%+1B`3@9fM+X7CsGZl8y#3Vkb3wkb@gcCLLrvpEFp+kA`zCL zp|ZGwZpoF(rlpiqfM-cY5>m2~FH4o$!thHHZ&7Ls+jMu1WfXzu8zi{56bywToW+7P z$RmZ|Kqwn#*#^Y_uxTD6`?}1JlE(* zl!4jl!ITnuk#$O`u*fI@PeWaU>q>0+9jwK!BqD?{DSUpguG+B@v!irT#I4QWlbZkO z{B(T&3mL(^VhK3wFO{1B|9(n=k(VnFaHUBxUM^;U36M=;Z(=D_`b05y*T=6=SAX(N z({*3=B~(?-HN?I=$B?^5x3nZ&Rwqltp>$#AoJ@Z7rJOIt+Ef$=U%W6w?WPV8EyPml zz6| z3~reWCO;Go9@1POBBpdxt|;gnJgK0E!)WP%n}piJuk;AoNf1ms{lJe${df<*s79EM zCKHi`_!vsS08Wl*+H`gfsm`yoX^@30*wju?;8f(w zSoK-%h=p=$&K<;#!ac-&{Cy=l?DV#a)v>CH3#~P;rB^5`8rHV!)!kv%Vq+Ad;bO4H zaxs5#X-!*a`^8H)^Vjotb9Y(p;_bcOJH4b_-C89F*#c4QXijH}uRx_02w`FB2v-qO zd_}caZS5 zhcjatGE;)jtwycX9VWhcDg!cuDp9ZsLa_)R{3q}Y&>IV{pr4Tc zl#0AFB!+;k0WR9W<&?k`Rp3K8L zg%WvcLd4AxTcu5b_YU3ogn*h;I?q@93SaTTPY6kSkcU2d?(yg~g(m(y<=F6&Tg3Kn= z?7@AvU9u$PwD|0z;OQ8?F5eEm-n71JQ+e%OUvLDz^7+nu*DagkyRU0#Xlie6DP}f} zr{#;ZyXSv==Mpz#?I=Im^)MLd2s8~=(Erv)E_}RjnmT5FfbbG=aQ3|II217>8z3TU zV0H_H--1hT1Qfs^Qz0NhMMJoQEQNsfx1#+8!S5qXBlZl<=I?xA*> zo~B-4nN;H3}|rX__i>LKdU+8uX5mBG~z zqy7ETOCExZ)>z-<5X7lcjhUGk;uhr<`MSlTS1f-9N1Id&4u|(Vw?%^`cklg|Uw-?( z7kZxBWLNy5MjLQt3SX#f`Q|sTDV0*>*<*kC#hFLO+S{qa-&h?KW5aW)x&LS>{OI+A zuSsr*R#!qf>xMomN;V)Vn_x{~(MyrRPZbJbPeXfEJI4%0hodA4mT+N1Gz|U9qzlH! zu=A56$Zv)76m%reNoWJrH)gOfO{1#FLrz?$^u@+Zk%*x;?6Yn*lOb2H=`t7>^)h`@ zUx>NhyxlxTj72Aqk(aX*Xyh%R#jx2!n!XAMX zvLep=4idw}IB}4eB2Ez;8X$@1zZkqTNcIH5z90zJfS@~PX+Y2-ZA^eL)13{S$H)f_ z(hAkg4UCS=jSQR~!J?;W)tQ+Q>>y4%>uPAZEPQqNi(%^FFhI4~P=CthGAN^j0WPz_ z*lUsy{U}WMqQ@gV?{yS|%mS`u;avDmU}mTvgg?yD|o zD}pNy{}9mcodC8y>k`?7XS*EfzUo^~e%#r7E5b`%3#UzHX!B$uLylg6ml9cA(~ze9 zSOi%^9I~D7tjc zMs9Su2^i8bO-&R=LC6+n;Rn=F&q;`Rrm!fZvYGmuxYP-cA{3sY(4nE>Fwnz;VKOZ9 z@HD&^TSc!4nLv1jZqzC!yB#h`v_(;}&1t+3zBzg$O=p|2ot)MTbBT&|G-QBI4h&3J zXHcAY64~QpL>7jDt5y}WNTDv$nu~+kFPXk%zSlICJ&>KsGJ19_OA=Xcqet6l-pKZ9 zk21_^1}ND!%PPwz%VVZz8uw?JsqCyqDhi=QUxvEDL(jaTLs_p}sa$6nQf^cB5&M+q znPbdbjeLT2C57eAh^xyJPI{MzBH=C>9>$xRJou@}O`xesrg)j)qk@7!kJB^g9rGUW zQnGj4OL{*__s}SGO*I!$dvsNa?riSdS?9dg&CHDsbj)?2KUCu|3U3)2ToGGbLOgGH zg9**VCe;L+RtU`m7b!+nK%==yS*#XCRflDy4=8Endj6R^Ls4eO*Phh zUc&J-5tTL&fDrCD`zE%&AD{fzs*oc#@?&tKYq+xhh9CXpeP*e#UZfw{L+dMg)0I1M}ME@-YNx%n+Eimfn4u=Ew z2wqYh48e#DiIQ29=x7GpY`7m|sx7>WkAR(@97S4V%JV!nHwgXXdO$=(4q)+zKp;Ck zbsh$UJ!8avXymBHS{Hl~#y7G!brwgWE;0&pkf8`>5Q5(QjEQ;3^lj6Gi9%n+z*|Ea zn?PdkcFPfXpQsD(7ODrjTiDpVXvk)hBcBEj+VpXR9|qnS7|>eqwZbc%#~RJV%yEVsK`nZADCKw%hPyjVZX)OPpi6Z*E6%N+ot}N3_dF(#NBUP2fN$_PbW4aO zn=oiGeYLZKp79kDKyQS3hxMkUirovgd3SpEcq#80w|fkgb&a!Rj@`q)$5JAzv+z#X zgX}4mW}mltOvG*^S5%Yk%-K*?K1J9>n_{D8ZNP@EgoDr0)*0!nVM7d0i41mtQNgDm1KqLJ)u)$Q| zD9$!A@Z0!UMbI-9EBv5Is}m_i1)>Jok_pLJlZq8K#1MbpFD`}@F4|YGD>po(6M0BA znlKVAzXsP_v+MG^GqUF=k3IF#Uykg3Yi<{K)+`3DZoTYIa>+Y4-E{RW?%nSL@NXXh z=BLlM_r=Tl9fPY~2?=KBeaTz-L7P&3#cW_0A%GMGz{G$7h&z}nJ)#T5=t_>TUd zJCS1BoY-U-r4IDVM#ZRZVdHAVM-cY3y#}NSCynN|%uI<>)#({=#&CL5C;)gvd<*@1 z1J~!(4ZtzNj*lVWp?Ww?$KjdSG{6cBXr#FSM*{dVPUt+=VmuDle~lvon=R9{=;BVI z1^oKyX`^aJ(wE(*JnnfsL3L4G!s@`?)ZK!4uL)!`JEQ2Q_4cv*xF^IX90xO;NJIO! zwQ;LPhFIHVgng(1Oh%X*#p-e_vM=&_gp4@ist;&AFyPNMrkxI&Wh^38j2gJ~r9Cjn zuaRdbK%-UzqHay4fz$2~AF|s)90~bLgM&rfwznH?wQ98SJZ^PwC|Vr10i+sRZNs)H z+i@Fh3pBk<(G*ipLK?!nZU%}xj^;aH^TELBQCvLI(J?pLQJsU)e70UW;#8AvZ$kAX zRBtLoB;D~4_)G>K3g{tUyvF=d=Y}E?2YiPP82)~AWGL;R&sBn0j7pG#W=vW6Of3jX z&%{av813S4*C+E+WS-?FXk=EU%pJ*GY8JAHTg_mu8kcIS#c zYwlV9i0={qvj}Yv75)ecD(QC5e8c zThYGGebEEa*P~RlehhBmAyK%m?jP?4-DuWkw+@H8n~=(N_qc((23Xy-jRiYd*m0or zVTpdc6Li+7yeI=Q#nXQm#~Krp9_fFS<7?)No)AQ_6<+gqzM_;sAF3q&tzJN!_e$$!*cM?1#_XyagQ^ z;)UWC+nz^Pf|Z!@TA5e8!0sLP{v0}&+QNV84s@JXKtRNcuhCm0U(;QWS3xzOqk1T^ zhXSa;j-=3|41|lgg=eME*CY6jI!DnxQa4_{SuG8*M~9ji)+5OICM6a~~j=R264X1u{f6qaxZL?hL)szFM$gQk z6cid!-&5hpC{oz^JlAt`T^ISa+tzGuUlA{b!ahGRC)AdFAz#c>^zy{|M6=qM*rfJ` zKxj!MM64;TQ;3T|RUwv|t0AH%vo1tjs`VWfeRnkJffaR;X929R?d!LC%d zG>cG1OQI9;agX)zu*=s!(9JvS2+6sw~K|KxToR1x|{k_15ktLJD-& znD-731p?i42kz0#h9*1W=?#B~A5T!6-g@P^oF1}0i?s!KLI&bA=vb^CLSkCYhyT^t zj>Xvu6}59ORL|nUc_B3=jGUyz3~8Pp zF{C)Y_1lmt_!G#N%V;1GEtZlQ5H$$`xiN~*5zY9~IWo0{|C&UjuyYnufSE;2hMhm^ zb_^Nt`7!{;pvx@~2sq(Kg`X7sB#9zQPL?n)SZXDbj&PF+v4YtwiiGj}5%_NF(J+SM z;u~+Zh;L}d$TSR(-?$($?khTx;+OCeeq*u-Pl`_INLnyBuwX!7!JxrXXAbdDolEqW z+dvc#NAYkJ4@cqM%wn4cJO4R}Ho(p&N71%SrrcJ?6c|#}`_l+Y!n-ioMx?y}M;tZEt~(ks=}5A>!IF-M z-LYsolBiKOy*XA&HZLzmN?kxnwi5U*A@XxLL`%RQ=f*AIpas}1!mb=uQX?8n!{L zAEW_|Q8{Kf&THscNt=cW1nsznek9?X-dGi^F;Tok=b2oy zrrue;-00|mwl;dBj!4A)G>N{HAe3kW<3hK0Ru7>gIW8WvV(qb#NJ*?%d(fR3+T%xN z0&5!_Icg|eJa&P`7;!ed_LI}qX(QQGSDe6j91O;XiMO;A zaa(RT+Dy)9V=8X-=0LCr)ydV}U`GU(O=!q`!4> zb_16FbmNjGjg1{kz8uIepYQB!mN+I745e(qZGHf4=xA(QG9R5&HdUaw2Rk-`&ppzl z1nlu)f?T+IekIsr-UDSj4Q4O!9em1#!#TF2tu6h4_T-GNjnh01Fzn z%C&`gdQ8m+*UF^v-8$Z?GdvZ{eXc^})I`P(~n3 zM09J_(8h!Gv^0sOa%Qw2O@Xfe-iA}F5a&5bF%+@c!)nMbhd{(8A$$fFBR1%IV8|v- zdc9(ruCe(eIswv*DAkzRi6POBnFJ_Ubspg}!gWDP(p&h9jHR@W4h@RZ*pK#a>B~oh zlH+qxf3x?zr0v0*8?}yk<&*0^I(<ql$VA!5F5bJOOmPop=HFRSF9VH(Lf~m6&2G4-S09}+}+yn#q z;ErM31i|P16db5x9v#`UqvO6Q->i@F;Q)VS5w&`IWl0hECal-A_V|GA>+ucxhJE9{ z{cuM{NJp6N29S=>$=G5#5?&HRTL=)h3iZ<%WeKGv#c=`j2w+ec7RH7B!mMBxCcGDz zC&Q^%JI)&<2-k7UkL}T-IBUn&u%?iBekT~d-Sx%gVke??Xf*$4-Y@aAnbq% zHkk9+#1I~iXY&OcvTW=F?%NP@8E@`bLb8e9_JEhg39}rz#KCt9B;-3bx%(Uf2@{-r zUN#9H`Kqd=@tDi*W$f-MRaciv-GBY{zkf=9W;xzK0U;8Exd?gl^)xdN!}!K9bvlM6 zN^3;V#`e+#LW`{;12S?=Xvo8P4F_Gx+vQ9b3tuhB|g~uOsUg4&7G|qJis} zXhvP@B)*P)TtG_3mII#is^(o5uDx+hlitc7L(5?8mc-3|90-v9-yOft$i>2N|tCqBpb@Ls-=1>(-+eqh@U^XEDY&eyekCcdCp2jlf4b+V4yyd&!e;={v{kq#Q#TT&^FVxStRBt z{4R~(6SwhpHI|6mqCw!`dmQR~8h;nEp2Z?Uon2>HS}Mq1({co*r?>Y?%URXb4@v&x z+c}d3o7R<@Wo%!Etqtl1rT-`B{d%qIWdjL*i|;D#nQOMpV+5|*rpjP+i!-;iyzXJo zonKnDVrSHAXKUBB`&|p8K9&w7*H!NxCP`1Qr^-#9n z_H3*L;_<-3wcysj&KjE@#D6x(o&PJue`SiEkN>I|{}nOo-D@}qGQ2m25J?_=iiP4D zgArNB2OeV)#*3MFFJ|JsSoiGhA~kQVX$jQbON8*vAv{nB4-wKZ53gbNTtiE) z!0vZ$3FpLL>Aql5kWFu#E!VVm{#j8*-;QH6e6O>;Ocd2oR60*{;Xl!Qz#g5 zAh3ncHGF*L>^!U^AhaVGto&7Eb8EqiC5>2?*Nf|T0=>rge4N3%F@y07gK-Vx#VT$u zZt^my$?L6Fh!E}>!VMvOF@%38)`EADjD}DU>Y-`X%Ad>9L)N6P3VC{_im*npI$GUa z9j_j&nsPMIaeV@QI#M+ssh+QrN2*{mY&ct`LX1}n^9FmbY2oneFIA*Z- zy~*@IG2A;CBx0p9{>AZFjOQJ!&l|TKWWW(5B^zfZnb#SbLF|1%D~ICgh&HNi*2Xn@ zLOZA((I`R_G*ZLLGl(X%%@u>i&;0o;zEhGZGp)*$F9=L#$>i@Ye(cDBeL27`gTpUb zc$V}}F*eBIla?OAPQ_ImAb@A%h>)1i;YA@jAHP#qEVI zz0A@BBlq9OIndH|FYATueP`v)d~emd{)gKStdGc;x#!n_`}gepd^^e|3e%g&;)NKyr;bX2)=Kf4!vzPJAcW7A?s4_de0-^aqDCJ+W|{NFI8!*ik^&s zS3TeNlX?WKV7jw$(g;j4POiBI0xu2Dqw^@enI5MP(nn}B{Q(NF*VJv3Hqthyg+&&m zNMMv%btHA;sw1PRy)V2U znD-IxLSt8b*lQrOY4JKICoDg}pLWF={0bVPtNfuah*#!jzD0uR4K827?@Prxb zt1@Y9GYX*-!YNp?K^J$EyUh=>4>}%ne%8BN+8tzCV=co6&KeZNMgSfjB&OyJF*VYA z5dt<*A}ov#yTLQuRX2D;k=2nO*J?hb%W^wAl46oL|GB&GdwuWg58k=whc{O5UOf5v zPknCNa_aEc_8)%e^2D=$`R&jB;r@Z<*B*YY{m+M9x%BvE$cg`?tQM1Wdi5zJ!4 zB9>j)2WN-j+J&*MOEGp8%pw0q4`8BEfxS{@N0I=t15SoRvq2NUwwi*0Yr&i?#`%sh zMg~Fs=h%e^nj69j;b!46k=~aD3$x9ItFkv|?-K9I-pf27K9Kza^Q`54<_}hTap8vY zSY>;K))#^TL!~sQ3zB#8z8)7O@{%zk8C{bM6N98PlcMOnPy=Wtqy^1MmK>$t2z!tv zH?tG$VU}Wlt&mtu5Kxp+WSTe;1<0h&Fyk{tH}@gKPRwqhsDT}uPK02QEXX$}3!)qX zqQi{PbcL$L&Zw1yEm2gfmXZPrc6cgVYYOP)^2#Sd(_t+OLc7O-#azQSoo0(8KV|vl z$?Xo#CmW%NWJkw8-!Sl`)Uv0mfHm|U$u1F9_RbThnhX?-T%9|_776@`AyEmiV0R<#wmo^*MHSXfd)#p<}{#x0AkzeV3rEX1kCuD2fe)b=mDG4sq`51(tl ze``6cs=&+jZlP`)D@u;N?Qiag^=(-F=@npJpKU^#4#VNQx?4t9*!|;S%uP9oD^8(h3KV%y6a{{6)+kp*j8$ zgMS3^n+VaP3bsv%MAF(-q63bPZ4+8^v_?SR0ht57M3#7+)cMcT7Cj9%r9lM2F6Kt| z#ga*7AQ4Uu5-gV%-HHHc35E4-2sU6FqbR}x`Hf9xpqqg?A4!8WA;u$-hyo^*g9=F~ z0^~o=D(4lGvRV7vIS&DYgV=Rp=dMoZiCr@-vE$uD%oAzuf^+}`#$#Sd##_F`rfgG; z>-gPN${_rWSW3WC>soSlX?Wk9G`~JyurPe@1NEUwJhtBB^yG>z`{G6I%(5PtHQ8hS zNRkB}>hO<#v?QCXEp={KV(R?%L)QfjS<{v)7sxjuO!d-t&4a0A8N*ar zNBcGju)H2%c|G6*ekN%{?a3&QB%J6Pk5Fg{UFUl(Op=e%&Ws5>U;^7sz@!!c0BMVS ze;C{z24Pk4gU$YNKk0XJM02{;g1ch@mau3cQ%VFzkRmwu#yQ~)1BcE*P$|kM89MC^ zJM$(o-D@$1k)5kd;BM1HCeoy)ErVgOCH$E%8CIPfKr{TE?ne;C^W~DCabSu#=|n{` zSuS;O<+M>wBm1=$I)v%zR#TY9o*Nxoc+HxXv!v6R*SSVE#Wf`Nm~CU?8R4n8iM6mP zR@+=2FHe-se0d5e`hJLZe_;QCV>&*q{y6ql{O#;Z6q zJU~r&Cj1kDiQr?o19>}&Q@~PIn>om4U+ejPj0sX+w=?Js$yy-$wDoEB8Rf~?lX1?O zv8S>tvunzm%AeIfo89O5M(l9;J?h<{O=Eh)#7krtL_h%tdd(aoUdm4azb>Ywu>4XW z?2q_?;8)<2Ll@EEcrtx z08XT${}5SVP;Q+YM=_Jf`GY*gPl1{)C;f6h!T=^anFO1YU=;^-zl1_vVx7T-d0_$|y~0A8KW^vTc01P% z8Zc%=4QTDUCT;+%cA{bD6|22MWX6n`Fexpf2%^~%5h3et)|eoHLg*5flqm>|?F4J= zadd!>EguOVi65uv))-{!QD}e-x;zOc$w_LG`-=Ub=b-;!;9&6Sp1+Pw=4_B~${-y- zvR%-*LaY$~%j`4pXR@Xi%8ROtDMfBrQ*s07Y=eYHz%Y#SV_g#4$it>AKCBI!5Oy{l z3Ob?i9)SifM^G=7Vm^#;e=n|Y-ANDy62+K^ROG=paeVo z9y=P~qVBZA@3F%^@Q_4&eA3P5+CO0U{fq^4J4xpKes8|lBC~1Jl;zzM+tU_j7*>vL zcXFQyf?$L{z=}#7{=nBYTSq}d#d6n?BA%Qd`hYwbP27LWvUN&i(-S{wBIKvwpDr@h@H9SbFQh zzQ+2UU-t116kpDL<+o%%{aqqJrsmu6g>)yxd?BpX;cQq0VDq?u$%U&fyhXaYRspWA zuE&L*pbV-i2r$ferg&$Cl|N#c zq01Et&SU4X6>oF)e5-XOCi}lgkQeqyNs01$B-u{^baDp{0m@VC%$6#WBrw~mXwu%-JwNk& z=%GA!xC1{VxGC^~o>kzsoG*lqgvby908N|X?ok(*Z~?+4xQ@8ay3V_P?lQYJ2fy`L zmz10}oby^ZSU!qKO*CgOpiNnrftM}-xG@v(a6*iZO>iKMxC@bprvd=tHbCQer@+iJ z*i((~z%I6)!Ejsl#6&lS$TGG}PavDU8V)qQ@~yYZspujx8Jif)Z%F^g`n@@yMt`^c zPs?V%Gqy-e-FAC<)9vKesCU~?;trIK9dgyP)Ki2?ZkPvu-XxZHF&*^|r=&VE?+#6- zggd;;1w*5#_;E+S6U*0~UBGm9xg1!zgjM6tc$cYhNUE7r9FjSdb#NABfqN1$H4IA> z-pL?qPe`~lg_#e!ibW$n={uSEwA^}&VVX=aET?diBd+@3sK$^SV6gs&HS|ANBc%AT zHpq|3JU@#$dMCpq6bz$^*^qlDoJfO(x;VRU1U(^CjExBw*PXI-SMpK?tsx z7=$z_wmYwaBoaC)NwohQNzxUr9_dqtB14MF&$!kgo+i2`tR`bj5)4?v%%H-lA!Z6J z)m<#1s&LCgzsJFHEXPH$`-Foy0ss%j!6bMc&;T2aIAwp_=^S+(bdeMAbi_p=@Kibg z3c)k+y}j4ciYS3YC##AP!WpLyKr^4C7Lfuo5ah)m?++4!7!X210t=OpBL%=*&9OL+ z3UYe8Dw$c%5t?Fb#~@#0C@;$fEjiCoq6@B&e6&=f9Uz9El2z(jXC_8#!=z<(9miJ?AuP{8 zSXRhi&5y5OCHzh^j^i)FLxBfL{hy-*M2bl2*(|`Fsc=>5(<`yo0AscGMB#m$8w)hu zF0+`%tbx-^;ueT86kJizIOj4~{~M-&g?G*g*c(T;I&Wk*NH@!rjC{nnY7g2CKjo>q zWw$?O?O~&$;*3j*toZw^4YtpT0$BF>S28QCgX~gisl39!jrl6`wDmvxzY>`2d7k(N z^Q`sj^4I;}2>b(c(t3&jV?dn0Jtdu%U-X{|ob7p2`iT8V`q-bFw1OUNZ?U<8%S^9P zhBc#HzT7C2Nu!L#j8YVFsq1pE!uLE(>;k*Uanr-fUzi>d5A<03mDB+ErB>$Y0ifZrdtGO)&2%qE&< zAZh4wLh_9;`(;j=0&v6I!~%hhvy<#8_6^p=?y&|CunW4maEN(<`4L>@d#v(qKXUR` zP_nAyyt88M7>T0tSgDGN)3z#MJqua8De&?sp$AO#7*7NCLggvmRf!^0Een|piXx2g zihovmSB7gty5yfhMRZey5%Lzon_-33G!k^Ux&aMb zE-VDVAr88+Oi;`N5gZOCHP4%G`53OJ0x}hMEZ9DywO{b2B4UYpN=+!SV%tpG7la&E zo>Ns?3@^L<8_HBG2v!E^MC?~Cm`=cTl{IX&JL@VD4T}ykiv&^*!kUm6I;BR;ycsQs zX0uT6HReYx=?b6{aOWPxHbp_q1mUxUO@$fbEG4Wok-~#NkOf&{w+d8lcM7C9WAtn` z7mem~9XbxjYi>1>0Tuo-!)F*j|G-fv4t@}9R=r8cHj8Rf$#2SUvySKASKm+lUj2Q_ zhB_Q`RdK)90+C8IpVzk3Lb4nQ#DqM}CPIm9qLEnZd(QWq^jw1B)Ox(0Ttf_l5z7i@ zd3;%NBsHQvYMBrw#J^G>O+BhjRTc#5l2loSk_55XpeCRgh!>vz@sP5 z5_f1ZWdH8b1BFo;9FoCH^6T=?AbxxzUVw-oa9ZJ2Ai$U2vHMof0D(vl9*7HUI$PM3 z0D58qMY0DUoUram7MK?yLSP^%$0|e$Or$QRNMyu*65g6RWWmC}Q4LIJ0O?p1P1lZS zXSMU1McbU4qu6GU7FPDp%wB+O+RhFZfK7hb053}y{E&=8M>o+3$~pq~Ohn#wLopcj z8G|#Ni*$ryEHYih!OU;@vty~CNGe9KUeGd>I2njo5LQW`V7-WyLaqlcgi%5$R_|Ql zM#aTrzJ`hl5B_x2GZz@CgJa-|qf(?p3`b2w7VqT|o-nH^oV3eO0~;Y$T%D*$E*B1_ zV&IuB=IML}G0H$Zb}#`q`00PFNJ(!$I58AE91TvJ?OQdRBSF8`WbF?*UKSCs7tBLxV8`X$6j z3ut{F)oM$yQYAs>2sm5;Nw;z?fn0#%M-sWPXdtFS0SErVCqrJ2HtGG&r7SpLKj1hZ z?oaHmyv4oc`)Ts0WhIiHgM1L>~Qya6S}jO z1D-X`=r{dE0wd9(gnj!Uc6l zY;TN=9f*OLtmgBLa_)DUmMo9LC%&f&swR^~l`WQdRdrXZs?D2B7Rxqwxom@PU$WYK z<)kWe3knH|rEC>THHeUE)@oh6mJfnp1iq6(9=#AqB#0u~`SUpiU8Qp%mkWnOtPK*q zCwF*(H?K|s$8kjlG8)1rRCW1?{B!xDOrr+0@5^V%8c`-J;Lc;!d=lc5<3t&h&ye3m z2}8+|geM!$yVk>|EHW`ADrR0;=QC86EP;;xaNe8M>9^HR+t{h|CIr!&)@P zc?VVv^&~*8H{QE;&xM;1D-GviNy7i$#jAZ zbF_o!;}q?tD4OC(ng=$A&yK!@9yI||(QY#fn|Qz%0m<@b$VG&MpvgsgmIC=nlnQjz z4vKc&K5nP%{(`URTjQgAwmerQNI=S7-`^NZc=e^7BbP3qlu@l+BbQni1o#i-z}?l4 zPu)3oys#jZzJJfO1cVt#ru<8%zzdJqm4W0qUUiNu=XEPwV^k5Iurl2aE4+?A#k~!F z>dOB*&>Rl)FKXJ5lxEDQAP0JgEBKDG#jjxH>P=U>6?80;f67=JAj=6Bgyz z%p{Lf*O2U=NM;D4IC5F69`%4IGOwspw{Vw#LT+xq@u_}SfKHhyV)iRw^|n<$fdg{; zmvJgB$4V>P>g6|LS>?_vSB!XKrfp<`7$lIm@2%YgQPd?;7#tlWiNW!~BZKD$e?Dju z29-f_P@S56GpIy&YQ+K|AQbDodtSmG;}dUh2Za9 z0Ph4KGJY&ZO(SBf8N7IkFx!1TKQ#qzJZ_b3c2q`Do>cfwM`kC;!I0qg_<3bLcX`K)B9fH$-g?B_86AsFO+N^ZnVK;Eg z5Kn;59FL+5sc@35k(t>RNoi3HSc?vyq zPHE+NKTQ48&0yJvVb*H5XPw%0E9*q3sMR+F}2u6|EW)yjrBV0K% zvr{zeGZ4_CWCVtI&)eTjXBRcEYm(+nqCcxEL^Him!8Yb;>>`TP#evh63Xx;k+(MjY zAV+vpNt8K>-A<&;A&#MxC>Bj9T?er;wq)o!E<{Up6f32>nHm! zf#Gxx_g%09>>ZD0tF88e+k$SE$vyZpn>CnK(rsIO*`lLI?|603y2qE~B0a@MR1K!f zcewo2Q|8&e9Zk5IX2N%ZU$k7jIQw_o6-f-n<0D@nZ(4Qw+}pvHKN?A(j;FhWm|qEv)<)L#(|Ev35IrKz{;aJ3&w8 zfh>CH2y81{VYEgbs)6wu=wa+9!py#&gceqkJ>-e7Wnav%g(JzBXwPPR6e;-=skASb zo&rg|ocodFA&615aaWR}0Kt*5u&G2`p7bB~lYT!OuvRAHjve*`cGCU?FIQ{-4kUKr z(AcnNW}ICw8Q**;l=3B~ySG#<6-t!ZmB_oxL89c$1?S)p^5DpBIi0R}Btl_5xhczU zPHy)QK!E$|Zy+F61hY9Brml%`Fb9ZNArVQU>+>LP5m_$zFm!flJJ>GH89kUi9?IIj zBfNBZ+nQ=DJ9^Y|(}|6rzU{A4p2m`PV{yzaDQf;ReLX%^uu(&^hqo_DK#S-8TFBA~rT4o4|94HdI=dOz*$SMNh@0 zcQjef&U(GxbpJ?w@!k8u?dwNa)@JwmM7YD%2Dd-bo=!Jf*TMaZVfr)0pFEC5m_DB!n+cnhAtOf-%I01_{de}`$2&Qc{3J)%?3 z1ay8=Vn>2}IRPSxLV`?4Q|%{@4rL&%(;BNHDFXHtr4AEbBZF#J0pP|SMILT|R*=1JNI++ok4-Qp!I*z3p+ z;@I6tM&6Lv-RPk0qK!m8N2KkTuj6fm3`1uORZz3v*|^pN5;;I3kE6f|_$dCr4o7od zXb<^6>ETEn{!@O9@IBCBa))UfVJ7au>md3d{VGlFChi6I)8nRb^ECA;{bTx>H2vn?bWp7{W0-@&njT7eTZMd)TsX_hhT zS9ZlzOY9F*{}5?^_=~Vl=P^>#C0;q{XS#Gh;{uk5mVRPo~cX>vFoD%jr#10~P2X z<~WMga~#Fn;{=h`o#f#muxaSP(1%0R%R{dZkwf7r;K01Zs;eA9YbW9fUTGJ>(JRjp zZla+_NQj?Vo>&9`3k!(1fdYzv2Eax?1kp^PT$mBdg;qaYAGi+J3|P=xbXAcRhJjb+ z(8?>z@AO)nvbc6hqH_Hg+C^<$J!*BVFBWfHefL)Ml+Lst02i-J6CPqcq$_n+s6aGC zkRBH^MLwW&cGU8J+4~akIF2&Ws_wbZ?zuHbYi7FV&|E$DXhzb^NE#iMbvTMFpJT_i zI5J1+u#=k7ZdDzV{wH z-hyZRs;WnakA&lU`+fVdnqR8^yQ;dn>c8r*>gsBv9_sbxmthT1cwaO%lclskgK7ul z#~8+ndeoIFMH^|c9$myfJ)0pf6xf&j_E2tR%gtX$eUqE-n-L-oQ&%m?s|~&K>B{7c zDk`f*yb5P{d9f_NIL~AN)kq1mA#xXMuE$ z-1Xb9k-L8Vq64$wdxw?cesWDKYy7a*C5H7 zX(sVnKPnHVQ4uz{I0Jy^bFdfBVW}P2WN)>XI(vEXOmDBrR7E4xXb$(5mS$R7Cj)Zu zldG)t@4IY;#hCkX&!Zh1#Hw1W*eIT*C#tORIxAUTloqnMV|Zgu&KG_(4b!u_-+x_8 zA%DfX7UmcA#xJ_BT;0MnqmBQwxO$CCwXMzJq+J#pvW4fDW%;acED;m)5O#%}Mi9X4-r-Po8`bS54YRT3V+<>V;RTG`bg= zCaO_ugBxkIiyy3EFU;K`{`Pe$;`xQ&vQ&j89mch8gHmz*MJ%_AlX0a|g*88vD2avf zsrZ|%Yx%cZgvemKNu^R75*?BJ^!m994;Zi)Y?W=3jRPejpB=P=5c0eVpaO=#1lR<2 zf_-2P90T`)uUGf%KeSFube6J;)1eZ+RbjH&^x4I3>_R4~=KV ztL+*#t7T@Q%a-Xn@Fa8)*ey|V)J9pF_m9bws@dUyP zTCJ>IDPze?{W9sL{?=aO%R3siHWpv`Vwv*q80 z35ZxX6&KUu`3!y0Fk4TuK=#%QI>Gbtwa-v{KuL-jVQcYedAu zhi3z^qEF}R+8|Ed9&K0JgZcHlDjSXr`HF9U`JJcpIqH(XW7qEOLUg2BaK^^F_)Q~P zwzFKxc=J;;iN53ae|T1gdIq7nlYRoVPXqLz^F^InsZq-CisN->^hzz%oTcA*POpZj z6`z;OklR{WKrQQqk=~DcjvsD!C%b z9>;b?O7LazV-1r(tr?k^4%BL3&%}hr6hODAG|r_(%t8_0$6L*Ol{~-7VCL2FbOCI!hxaEa;=UUwywx91KG=jE`!YqoaJ}jb&(@S> zgs;{zE%zs6(pA1(woDZi3fZ0Ujn$Ce+NQI5-7cfE)050Q<KP#hGe?;0PvRhZtedCTzY?=80+o`RtT5I!#$dt z13PwrV|(`QRY_c0Jde0U*d(!s@F{aOqmWgv*O|t-jEK0kfaA#HM$EGFs~Dyr{7TT6 z^7s=3R{ZcFgV|(XV$;%88{(Wa(e@^sq%bG#`TQzIX7dFDCHwNg{y{$8ZfbJ}+KnDx zsLh#+3mStS-dh}EquTZoGUw5vPw%q~mj7Put>iUL9WP|sjaRa_qyE^I02TV6&tx=J-c4+8MD-!`0U9W%%O5*$L7TqW^aD9s6zG(d8wG!Cy^eSKo}eaPgPUnImDWHPSQinYi8kGW--0YX~bnb zO(tTiBz;It;<43A2D_t8U${GDZtm9!efg#?+ZWJZ$!Md{wdvRx zW;Ojj7*d(+7H`a@E$+N~U<35&R4Y8`+&qvkinW-PHh5g?eluNO7s70Yn&3z;b)fNh zWhA7<=ep?R&^25x%pcl0)PeYn`!~KhNI!%0cPrReO+7FH_e~s|px$AHR;}msFdXjf zg@VVE-5%wqgls%t$nx1_0Zb`I1GR1tiR0BFQH}iqqcEZ#4*BE@IK(P>h3UkdT%AGI zGnK5@A=@&Rxh2i9Nt%UwJl|E?wxVB48Y@{?B~e(!Li(B9&igkcYH^#v#xclb`kg7C z-EY^aT$yO|rz&SE5^X8f$&=kj|7>q{|8NMYq=yrno^r;SO$Zt%>~R!JIV=6_rM+b)nySjuzubYpn+Y*6D7^_|F zY##NJ3TzjfgYusty50uf4W6uSP=Qf_J$XElVAX2J{p>sT!~HvsobG`=`TUe{BzXj~ zN7y62_c%=V2|gDu_A$d$xsFX_mbrl6i6V-U!O2)rerFSxc{AIISdn=v#=@&?BmL~}Wbf{N zGYeXFbe8hgXl~~T#QfL_^F_a%Z!te}t*N9(enh1H&yUoRd7rNBdU^$a;czN1^-3`&#It9rBMlChb0_# z7z`RsI1mWB+@7#UP-c~s5+O;s(ju2DAxz4va!QaxxjY;U1)O1*OXXlS208QyT!7Kw zX~#E^tRQJgFAzWiP{dl=CT1L{yUd6u8T{-Y-ol(TEXa}YplB9PCbi}2z~sb4xo;oRCVAnUoE!}_Pve#OWf}6-Wn{}n zn9C`yx~*Rf}18kJ#N^Fn5h6>@pc`a0GKh32`XpksHlA zIc26~l-3dLO{RuKw^2sZmp-ac1WLoab##4!qOh%Bclk#$3dvyw9I5h~MOZKonW=pu zELSR^-Rp%uH00@B{^&q2a~4t5IuV00Z#zU_*9KCR%5)JHQ%IaXZx4jWD3z49{pF(XkukEB3->M`A?m2>nYzX|%Ol zUA;pi!uq?nrupK?h6#V^u9Aay+YP+RE%w*%7@K+N;f<50UO6x}>vwP_ja^s8R?%poK#!I7q_*3d%8E+L?$q@@V9#h%6GZyL+m>W4+ja+fzG?;c!4hU!1t_)Aiu){j(9I+A_i5 z%>=3A@lLOnzjT;Z%4uV;a?^>;`=6dKLz;$2Dso7t_MvuX!J%qC7!Zs`6Uz$tiveB% z3PL=e3CGnAAugB%lYUIiU4RsQ=SLw_|>5D(9t@A6IcerAmp5|jhvBTDUk&C)?`sjw*WuaXxI;k6RERR}` zElNLXeH?79h71OlVdB6G(JvrIy#Y>T7Xk)g07`Yh&e$1F8HjSo>sdVG@p2qq@P+zb zsi`XsKDX53^J&st)Yg@z7FIXay1J1*x<4edLhK47P}}w`7}Nt?H=JthB({KwGWE3BN|=Wlr8&-ZVcl`@S9VKxJ~vwy;pnMi?|| z`3slGn>T;u=mQrYyJ7Ub-#(F_%a|RER%Np36;y!wbZ*aRV(Nj9Pfgx8yH2#}ShEVs z26`w&J)N&R^>4|-ji=7+p8fLU+bveLRzVr94mGxg4y5h4C+Pz7)h>n2CV12qqX0af zSWh|>%L!ea5CZ`t*UpLD1b3Qyl2cS#$TvAT#|3g}wSrS-ku1C@*exN>7Qo(^G&nGk zO^?!BDK^^*m3F0)t8~JD&R4x^%KApAFX7~Qb96A%_+DCQgfIToeZ+k;kmZ{pI&jOMKVX zl(YvfHcMisM=f&|bMULVqD!Xsbc%vCQVvu7-fq#u9s+SrME8E)>GWSi(UTg7~S%=A}VqI#hLqn;3l^pyIeTGZ*3C*W`eZ4)dU19YAZiiYfv81)7S-4fa#hyMnoLf?YjyhNg3}8)AFB2XCT+mVnGw+z z8|O&98%xIFd}g`w%Qla`f|QiHr{+~qXn^;sqcS`i5H?-9fXPS*`a}ARHChuJ@3Z?X zYGrtOy!nQ}iCrG5-`69$cuY?}lJH-n+NHs#s{6OP-~$jILw3#SqWJ_1jchwhu@0k5 zEwoV%M>LxXMtwXQ4>CN(yZ;=(qu^bD+5=z>Oac6UpaPjn3V4zr%0#JX&}8H})(Kq# ztMRzqDMwqIEX7e$Pk^)_Ej{k5EWDOpU@nnSd%cmCtV8-jz22fiCWBOhIakMC!8-yYcC4mDdS^CsA-wn(oa-H=&;y(eGhIzYzFv zb(h+hd>p_#!6`s(0Wi!$z?xVA0t*DnM%@V4KkdRVIgvYhzDH zv}f8h8YQRp9W>oxqPCgfun87T&=ll=nh@@_MM9!9@*nQ&05Zyy6{OCk<$W7u>qbtTJ$&Tl6C>+SoV_`H^vJ#m z@hdbNs2v;|J2((vX}Kj_+dJI1YarI9hK>C%JUBk_o-ZCb^o3I!tf?E0{n<9l#shQP zy1KT_?VqyvZ`wDzAsrd6?>iuk-{@PBBnW7fvHm5XM9ttC(JNA-=qXx_0l~vNJb_5S zsMBSw4$h`2WCQ#v7qGD)4KrGUjB`t_AZ!gO$ag3a*9z8a9l_<%1boRpwR`W4*`6Io zbCummH9yeZX!y&bOXIJV;Iyhe7_~&#Wjvvt5r1IFLSLkfd}a60@V;KosBQix(A{Ch ztK&VD5;c-t+ z#p!iM4(O$RlKC0&jah62>MOJn5p7J^7SvhnXqbx90F=DJ<%0@Ei&R&2kdnbiw3I0k z+3Z$mv*q)vo}$q1=ARnOtXaoJQ|4wzrsC6Te3dMG#yfVyWFVY##qxR40HHk+O?n!A zrbsg9;i7JXCqE{-^9=kt_6VE5ES5cJbZUv!l2k|>h*^1=vEAj_-jx{43J!y;`4xAR zvnT}k8#G8T7>vU^Q?F4gxN&sjC?RZ$mD(`3EB)gkE%Fz6Ia6eM67sY@p81%ZZFNevyX zcW8suv(astXor2Suf* zUW#HUFGW#CmB82xc%$o!1xuQ=aWGc`fFz^a4 z(dB=?)>{&r@k|$|`jbp=n56|heetJ-K0(*$3{>K6g3uPP1gNjuqLq%HqS~vFCB6&Q zz6f?zbH`(Fb8LT%I>o|=7RJd%epo_Mv3M!-|3YAK5c`PoK z#^v$(JRX;mWmOu7Q{~ho9Zrh_{o}yp)Ovglivns`&fM}{mS)H*h#q(b1KA%2eEFpO zZl*OUMj};Al*FVR5|yAeNM3O=o3YUewy1;OA}2lY6N!XD+x%}DgGv?+LdGu!d290@ z1I-Uv0|M@Vd1!W8LiWZB6zdMRJG5;Mp69wY<{K7zFw^OhVQtQ6~HJdp>$Fe{di=~s^rwcC>sL=u}7GPI?eV$U~;R70Ys|G4GP?Imvolj?9$Wo7I z;T>7HE(<%e@IdBx=AjJTm4Uan!}d%zrsWxoQXJfue?q&o#aXzr4FT=#}$4rLkGH?S8+Z@xNh1>Gt^zHV><&cwWv% z#;TVZ)Xk0e(UGoxpAvJzje1Ex;=~wKRUZ$BljU;OZU=@zLoGR+=Ca9QFPHUeGVNTJ z8_*kS2A!ei*UV;b%bv*6Q;7Bkm_@NkE^FbqY+D=0Ay-{9lu8aKwLZVb|4|HCcnTS~c6_4<lP6R*vRkPb}(Hc!!8RU6O zX7j+a&94uQ2h|jwS;qUic;EQ4&g=IxMw3Q{7nrL|BcCo&QMgW_t ziTl-1tyHOiQw!BvI1Ql|0w`#-7L7)W*k;A!K8*?nG#WJ6Yjp-_talD816kRzih?X6 z>iG=bjS2c%BR=RO9f6ttc4HfS_r}?hOBW1Y+Dm<^`SSSIj6)~5>5G?Ue5LV3^9}k5 zlXycJ>hKx~@=QVg3Ki7f(OS`c4om_|RZRggs#H}eG;IDkK&Cf}-%L{==dMU{ze{>E z?Qck4G)UxB)++R`&MTGt_;ShL1)l@!q>?)_xa9om++@Z;{=jm{fA{>DRC1vGnv%zw z$FT>5^1cV>g>RrPSo;D5^}5Sdg;BDq+(bP~jmRGZQLwFQQpyzy{+$LxTRfsxqakLS z`7ErR;UWtBfy`RfbWjb8>UHWZYFdl91e8#D7H<9=CkK^Fbv%+n7AB3&3>3+9bn8hZ z9(ga#F)q1?mjTjGVVwqZVW7WDe^>VQRd8-K zC=!Z;G8oYiqCuYp@1uum)@Jp9=ukt-z3M=+)t`uX}D}$NHI3_2?(Y3S*xiPme!2k(hXC;#V8+@5vh~ zH+*BVHu=)zOE>PD5~m*7XxMmidUR7af=8|cAGb`We6V>hf{$MX z&m&k^gEd%#HCTf`ULc$FK=fBaVH$i1$iX2%1L5*%6c#Uk4}~QZ3V=p20w^~BFA7VS zx1(^&<^3q!dbtKflzIk*MS_=5e1^nifbp^ig)9jLl$t|%wxh6wN-Lr~-$S7hm01J~ zN-YAG;2u;$5eNjYp=*m^n1rL3PoQv;#BU_{W)zl4IVE(j8VVUyatYlL;~rFp61uMk zg*9~F5-JCWqnDpW;UvK~5_~fX*MW7YoQk;JLnNdLRXK7-ll^xL(9*(buo?WYh09jukplu-p5S;-2c5%1a3zWF zAh?R)MS`naG?Z|Oh7vB(P{Jh|O1NxQ9*Kq$F40iJB^pY&L_-OeXei-&gUzvy;F?wS z*W$VbcM@E;D&Bzc;2gp6tKNp-y#zNS+!TD6;FeYSt+<>PZd(=KMy`F5;4X46sZ7tR zJngG+f#m-T!6O8Jh2U|5e*@#HRrOb`x|eQMyl$y2p9Ef{_eqcfd4x@Y{a_Xy$G{vo zjQ;1rad3ph^rN$*2*=?r6n}u^NT8HnMA<{=IEmu+q3h?tt>kPL9cNMQ+fg_}a!#Qf zHJoC>5vdLjUvRE;A?(PCE+ThT`VH-an{@SLZDK)_UN&?*q4? zR^fYlK^T>B0PI2d9J&VAV;*#XY0|n|TleuI`X!J>%C9P2Dto2m4d6yp($sb8KDCV1 zNbQfIG7h6Uc)8S^cP zIMkxj;pJLMSKLbOEYV^mZb_b`HpG_C=a=Q{TIw7j=QHRUOx+lvmn7j!{E_Z*bqfv< z`8YH?tX2(x>m^mZi&>Ed2+ucO~&O*ZJi;zW8#+25$o_)lDF#$ zshTBxnQMhot0eq3basSK9plAO>C996IqefWp{?|jZe6C>Qf($k$%j|jw$cB`-j@JIRbBm` zduI|7ChtuIgoO2hC;>xQMFm6xNl0)=;v}phGD#*R5HfL+fKUWQL3H(sbUro{R~KoN6KY|l*8ht9g84`Jk)o= zw^E7pMN(G_vGj#fM?y2QM)O&jl$oSJ8&5yBAm%&+gBKHryg1qe!+2Cgb4-~DXKMHH z4CN8}mQua|b!2o)wxC;p_txBHv<4`(^gGZlziFjp^dU441;#L$@ZLwY6bIwpFbNU3 zWsFcImKK^{jaC;>TfB0fst%52IF=Y=I7E(kC22`nunhsdHp^1oxf-e=(97_d#w^nz zPAn!qE^Od924;h5jF(H!c*9yyM6Rea#FzO zhtKE@m4LwfmI>)}HwQ8>Hl4maCQ`C6O+yrQl?7G+PtR2TZ`l1}89h$&Ms zF2a)t1&#W$F;_nIHcQTlMoaTCT?_Wm+^Q_9G0?Ip7;|I!neuKbmYqfAiS~>7Gbo%L zY-fgSX)5tZlq|}eh%ItaOr%alKNsopsQy&yv(egY>O%(JH~NxJEf6)Q$i5nMf&dr;WA1pmzIB9;*;?nYYT266s zX`xpetmRdC%FDb!N?&=hHm$U<%IDWy9)FRyyh03iBnw}Vg_=|0_Z3waRwZkK;i5m7 zB~U?Wxwg2Zw6G+sVT-ZS((=Nx>LM{XfyVpF%a&+Kr2{qZ!UAkdh#X5eQ)`L5NHEjy zt*r7R+i(m*6^QJ?vc?bxl1j0bD(^xu$o^8SwaB-)yv*k*GBeL(u*&Nf-SJ^n=vG%% zR99(5Ug{;%lz7W3%p64#EMFqY#du(W$exnYf>LaAilPWfEB2L@`DpwltCO_?PbIe1 zS8i}ND?d00NhMWP6{Cj?@s_77E?rPs;Vmllr1<>vhKSe@q`bjpP!3GiJR}vBqG6(# zoC4TEOB`6LFHqZBAp9E{Xi@asN z3WMElPgzBYmgy-k^c5~3R!;VnlxvyQMU_JL6eU*-P9-S;_8VE?#a#3J9^_0>vR3T( zdWG;5mU#U0u+M_W$SWLC%&z$gsywCTf+-&4WyO+!nAN=(qCuX@N?&2AN61H!udsR{ zjtD8TR$N+!oJkTTntH3{p#(4X_`Qb)Qj3bbSYW9!4iV|J#idmxA~{UllBKwb)(38v zm7<&)b&In61}I?-q(h>I$=X6+QE9R8y~L1;YV1&D3F#{qT~IA_w^AfZDZw5N!H!pY z5#_K1G1ihx5t~XGM3sipNKR8D7MJ)Io}rII4XXX+*cdMrP~_7pebkou-omPYfQ953 zg}nN76?jdW>j~?qUsPX-I9XMS zLxjp}DEgTgAoMLWUCYbK$e*6-PS>*Xv|M-2w5+uBG;Kg?9>xbGYtysxGjpcqYe?Zv z&CZ{x)@8BP%~!l$n8rrfRvV?)Z9MvX+)QC3R9d<;uZQ+(af@H$5|*lCZv1 z{F|7cm6I*HF)=4Q-;L2^?4>(Dn00zqUV5^Y>dwj&49RfkVDW;Tm?MV@!F<{2Mk#{T znrTFkM8v1&rH9&*mY(XuvhqacaN-mNmj^!DYKUcjIW6f6U%M`QWXuIMQk&W@gr;Th30Fg!E*Ite!Cq z-#h+_;inzXV)!}7UJUPZ)BtzvcYKWDe>#p~`u{n;#PGizUt#!b$JZGC#_Z_a(doHfpmz~=ne`A^`^ zPn@4%_+L)sfb%ow=NSGXo_=jS9_1~b$8!wZ;%&g=?eU2i?jGMA(|g1hV|ZTtJPemy za1F|oT}l>*zBJaxC>!G|M;5v5Mn31q;0VUdh(SKb%!-+VVNXmUy2UXS=q`#`g6`6o zWq5Z*%&q9Ij9G~(x5eCs;Z-rKF?>hNofuvlvkt@e;s}bd`%;b+$1%DT!^w^z$l;-m zp)?BEN5{V${~``Qi|%uA$eFl3$Zf&f3(@VWbVaUqQ@UX|L2#RT(-Dr@o`5Ki-%|iu z;Szrt+%(VcT>xuKyaj&PROYEFhex3&*fUbyxQL(PnyJCayzDd$#!q#p32+u)TC_nF z>T7oyj)r*XA;TR|n|sP|40M8CG8_w?p*QhV#O>6QF3=||g@FSuL>LRCh+nmd2ky$x z)S!31`x;IB;wn*c)b?)BSH^4za|z;iA}D4D6%yeh=wDb-Spjd7dz9Qy$vq)l#us?~ zCUBKJvh_YkgjK~8n8N2nw6D*^e^9mlCBj!AFi zyw(iqEb!kA5#1;dzrAY1F^f8f7=u`PCq4%Kjwl%lN`Mok5U>?}Q7%vx;9|H0mzhbp zxf}$Sq8tsz$#Dq1b3GhJz(}|ZM#1H91zd?s{xL8Xu7Yu=DYLF=9JQiDo%~MXH#*MZ zuVNipcQ%NPX8Ej$Rk2lU1KYxOvS-<0c9b3GcHV{e=OcL<&*w$Fim&3k`Egsat;n{? zcG%ACL+x|y>+PHDTkX5;f46@g)jPUNhw=`~JKP-;7c(?wOUyyXC5};!497G_v15^A zwc|0z6OMP|w7BfJIdSE2o8q>{?T*_Q_jcT|xbKxXrKggtj8$C9Y^6+DrmR;sDO;7@ z%0A_7<(Trl8mIPDlhv`ROP#Hjsms*$>Lzuox?A0+zO5cpzjwwtdpeVyW1TMNY-gEs znRC5!lXI(cw{xHKZRauP_wjM@J>!$($Hu$jXUCVtFNSP$CrX9gy``TUMv3y|I2;xi_qT?{qj4s=&m8ac z5J_FIrp_nK@uWrO_`vbz_@D>O@k`6h@nQ@8Jk1jS-W>P2A(n^7u|Et#?Y;R?5WnIW zjNcLymLCcK{H{6vmlAXQ$yF4OLPSmgakw+o;M21i(w{5+rPALZ{cWeo_qg;AOaF7j ze=bh?Ns;qCH&Xh!(l3+#8tHF2O}_2Y-!J`RhQFty^iNaYo>9`zm%d;6_e%dX{oAu! z`fp1AgyBEmRr(_-pO~$>B2HZ*Q`4khB>h#=-x85}m-Jtg{?~^8Lf1&tFCfC(RnRVx=Yiu33*>_>$r_#KtZ-Gf>)#qoprp=S8=m)zJpl6u__CgWCb79Dl@VJWPHwQwJ7gooiV*a1(#)9?};gg4=R z_yoR$lZ@j$(g|mhemIv5$Jt~8o6Ov@MA`DaQZDu`lKyJxOO4*UMfy_u_R1dYeMS0` zlY1qH_ntEReeu$l9Nd>8{qfS59NafY`W4c@Mf&$i{}Jg+4(@wa`cez_eJuU&4ZlVr ze@#E>O9ZKrdQdY%`tzl~+$@c^Mw=yi{~U_Pkz}SskUE1(O6z_(-utDr?w9(sU$%O` z26hUrwm4PcO^5UVd2m+lj`3_xs~oXC$s?(s13L53_L}F6HtS zDOayZ?!2N&U*gv*Qm$W_Ed5#1FP46l^d&;Qa&IJ^Js_p_fW)2yS4e*{QICOTunN}0 z2G|5!U@Po|-S8~zgTwGP9ED?W9KL6E7RS1iL0YzTpx|a6_QJ~p+Ndl&JIX9 zJ0Ow$fE>94JESj1?7$J}eHjaR|g-J{*%&| zh;Z;9(wFrdk|TC#ko09ehh#m6WIcyuJ%?mHhot@-lKOKf+<#k!h>rxVq$d(`J5=r-tNIo4| zF8#IAxA5f+ySdG)d8E?bkka;sTo1h=S1NDho4LMvXILE9jc+_uhj`dJ^NmL>@vWBl z4om!TOZ-Vo{8>wUk0t(sCH|5nzRwchZ;2nY#E)3wmUZ?A7_b=x5Ot{;%Sz6h9#b9 ziBGn~U6y#ZC7x@EyDjk=~ZMGlHWyF}*O6zs% zgg#qOJ43D#J9iQoF%78 zBI`Ont;f`@mmz9{S3lfE z>l-oe?9l9}-zY4F9uN2R$BlbU(SznO;k~R!F3f}TLE5Pk#Iq9N2k!-SQ@`Cv7u*fH zZEofZneblL-H=?Rp*#_Gp$+3eXnxeU1^h7g_H%7<%bA9av%q$gt6n5mVrB^E)d=IF z)%S?dJ-t_5XOGruno1|?sM&28z3O97!(Knrd{8HDxf-oGt=fq1OUiFdwwrbn!8B|? z*lv&)M?!8B*VMk_jzoV?WTZboxOG079~S!5UhM`_POWIlm2jl8PpxRW`r3x6|M}JV zYwCX{bAFnJoykznj>gpl#&zl$T|M>88R~w#N$RbKIaBMJ*XWz|8htZ`HX2uJGe+xL zg9)`nFE*~$X2N-O=5>2rv8|5vZq>J*CcV$87g63{45n0??w3SLZ7w5Pr$>pF>ru^E z>twx~K0=>{p&mxcsqMPBCL4Fj4bDCC8U7r74#mP|@8 )C2A6X85hav_`B7nY!$q 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 voFYmKi2*B66Rv?!Q%9jR5o%a Date: Thu, 13 Dec 2018 23:05:36 +0200 Subject: [PATCH 2/7] Added Tema 2, Changed Tema 1's dir --- POPESCU_ALEXANDRU/{ => Tema 1}/Tema 1 PSSC.pdf | Bin POPESCU_ALEXANDRU/{ => Tema 1}/links.txt | 0 POPESCU_ALEXANDRU/Tema 2/Tema2 PSSC.pdf | Bin 0 -> 210049 bytes POPESCU_ALEXANDRU/Tema 2/links.txt | 3 +++ 4 files changed, 3 insertions(+) rename POPESCU_ALEXANDRU/{ => Tema 1}/Tema 1 PSSC.pdf (100%) rename POPESCU_ALEXANDRU/{ => Tema 1}/links.txt (100%) create mode 100644 POPESCU_ALEXANDRU/Tema 2/Tema2 PSSC.pdf create mode 100644 POPESCU_ALEXANDRU/Tema 2/links.txt diff --git a/POPESCU_ALEXANDRU/Tema 1 PSSC.pdf b/POPESCU_ALEXANDRU/Tema 1/Tema 1 PSSC.pdf similarity index 100% rename from POPESCU_ALEXANDRU/Tema 1 PSSC.pdf rename to POPESCU_ALEXANDRU/Tema 1/Tema 1 PSSC.pdf diff --git a/POPESCU_ALEXANDRU/links.txt b/POPESCU_ALEXANDRU/Tema 1/links.txt similarity index 100% rename from POPESCU_ALEXANDRU/links.txt rename to POPESCU_ALEXANDRU/Tema 1/links.txt diff --git a/POPESCU_ALEXANDRU/Tema 2/Tema2 PSSC.pdf b/POPESCU_ALEXANDRU/Tema 2/Tema2 PSSC.pdf new file mode 100644 index 0000000000000000000000000000000000000000..817a39836a2db1b6d92b6bc262efe041b050961a GIT binary patch literal 210049 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%0AW4!BEdPZU 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 Date: Sat, 29 Dec 2018 18:37:49 +0200 Subject: [PATCH 3/7] Added the project, created the database --- POPESCU_ALEXANDRU/Proiect/Flights/.gitignore | 25 ++ .../Flights/.mvn/wrapper/maven-wrapper.jar | Bin 0 -> 48337 bytes .../.mvn/wrapper/maven-wrapper.properties | 1 + POPESCU_ALEXANDRU/Proiect/Flights/mvnw | 286 ++++++++++++++++++ POPESCU_ALEXANDRU/Proiect/Flights/mvnw.cmd | 161 ++++++++++ POPESCU_ALEXANDRU/Proiect/Flights/pom.xml | 68 +++++ .../pssc/hph/flights/FlightsApplication.java | 14 + .../controllers/AirplanesController.java | 25 ++ .../controllers/BookingsController.java | 23 ++ .../pssc/hph/flights/entities/Airplane.java | 26 ++ .../pssc/hph/flights/entities/Booking.java | 29 ++ .../hph/flights/entities/dto/AirplaneDTO.java | 7 + .../repositories/AirplaneRepository.java | 7 + .../repositories/BookingsRepository.java | 7 + .../hph/flights/services/AirplaneService.java | 23 ++ .../hph/flights/services/BookingsService.java | 23 ++ .../src/main/resources/application.properties | 3 + .../src/main/resources/db.migration/hph.sql | 53 ++++ .../hph/flights/FlightsApplicationTests.java | 17 ++ 19 files changed, 798 insertions(+) create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/.gitignore create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/.mvn/wrapper/maven-wrapper.jar create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/.mvn/wrapper/maven-wrapper.properties create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/mvnw create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/mvnw.cmd create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/pom.xml create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/FlightsApplication.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/AirplanesController.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/BookingsController.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Airplane.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Booking.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/dto/AirplaneDTO.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/BookingsRepository.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/AirplaneService.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/BookingsService.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/application.properties create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/db.migration/hph.sql create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/test/java/com/pssc/hph/flights/FlightsApplicationTests.java diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/.gitignore b/POPESCU_ALEXANDRU/Proiect/Flights/.gitignore new file mode 100644 index 0000000..82eca33 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/.gitignore @@ -0,0 +1,25 @@ +/target/ +!.mvn/wrapper/maven-wrapper.jar + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/build/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ \ No newline at end of file diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/.mvn/wrapper/maven-wrapper.jar b/POPESCU_ALEXANDRU/Proiect/Flights/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..01e67997377a393fd672c7dcde9dccbedf0cb1e9 GIT binary patch literal 48337 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 \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG="`dirname "$PRG"`/$link" + fi + done + + saveddir=`pwd` + + M2_HOME=`dirname "$PRG"`/.. + + # make it fully qualified + M2_HOME=`cd "$M2_HOME" && pwd` + + cd "$saveddir" + # echo Using m2 at $M2_HOME +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --unix "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# For Mingw, ensure paths are in UNIX format before anything is touched +if $mingw ; then + [ -n "$M2_HOME" ] && + M2_HOME="`(cd "$M2_HOME"; pwd)`" + [ -n "$JAVA_HOME" ] && + JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" + # TODO classpath? +fi + +if [ -z "$JAVA_HOME" ]; then + javaExecutable="`which javac`" + if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then + # readlink(1) is not available as standard on Solaris 10. + readLink=`which readlink` + if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then + if $darwin ; then + javaHome="`dirname \"$javaExecutable\"`" + javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" + else + javaExecutable="`readlink -f \"$javaExecutable\"`" + fi + javaHome="`dirname \"$javaExecutable\"`" + javaHome=`expr "$javaHome" : '\(.*\)/bin'` + JAVA_HOME="$javaHome" + export JAVA_HOME + fi + fi +fi + +if [ -z "$JAVACMD" ] ; then + if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + else + JAVACMD="`which java`" + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." >&2 + echo " We cannot execute $JAVACMD" >&2 + exit 1 +fi + +if [ -z "$JAVA_HOME" ] ; then + echo "Warning: JAVA_HOME environment variable is not set." +fi + +CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { + + if [ -z "$1" ] + then + echo "Path not specified to find_maven_basedir" + return 1 + fi + + basedir="$1" + wdir="$1" + while [ "$wdir" != '/' ] ; do + if [ -d "$wdir"/.mvn ] ; then + basedir=$wdir + break + fi + # workaround for JBEAP-8937 (on Solaris 10/Sparc) + if [ -d "${wdir}" ]; then + wdir=`cd "$wdir/.."; pwd` + fi + # end of workaround + done + echo "${basedir}" +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + echo "$(tr -s '\n' ' ' < "$1")" + fi +} + +BASE_DIR=`find_maven_basedir "$(pwd)"` +if [ -z "$BASE_DIR" ]; then + exit 1; +fi + +########################################################################################## +# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +# This allows using the maven wrapper in projects that prohibit checking in binary data. +########################################################################################## +if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found .mvn/wrapper/maven-wrapper.jar" + fi +else + if [ "$MVNW_VERBOSE" = true ]; then + echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." + fi + jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.4.2/maven-wrapper-0.4.2.jar" + while IFS="=" read key value; do + case "$key" in (wrapperUrl) jarUrl="$value"; break ;; + esac + done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" + if [ "$MVNW_VERBOSE" = true ]; then + echo "Downloading from: $jarUrl" + fi + wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" + + if command -v wget > /dev/null; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found wget ... using wget" + fi + wget "$jarUrl" -O "$wrapperJarPath" + elif command -v curl > /dev/null; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found curl ... using curl" + fi + curl -o "$wrapperJarPath" "$jarUrl" + else + if [ "$MVNW_VERBOSE" = true ]; then + echo "Falling back to using Java to download" + fi + javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" + if [ -e "$javaClass" ]; then + if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then + if [ "$MVNW_VERBOSE" = true ]; then + echo " - Compiling MavenWrapperDownloader.java ..." + fi + # Compiling the Java class + ("$JAVA_HOME/bin/javac" "$javaClass") + fi + if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then + # Running the downloader + if [ "$MVNW_VERBOSE" = true ]; then + echo " - Running MavenWrapperDownloader.java ..." + fi + ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") + fi + fi + fi +fi +########################################################################################## +# End of extension +########################################################################################## + +export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} +if [ "$MVNW_VERBOSE" = true ]; then + echo $MAVEN_PROJECTBASEDIR +fi +MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --path --windows "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` + [ -n "$MAVEN_PROJECTBASEDIR" ] && + MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` +fi + +WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +exec "$JAVACMD" \ + $MAVEN_OPTS \ + -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/mvnw.cmd b/POPESCU_ALEXANDRU/Proiect/Flights/mvnw.cmd new file mode 100644 index 0000000..e5cfb0a --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/mvnw.cmd @@ -0,0 +1,161 @@ +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Maven2 Start Up Batch script +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM M2_HOME - location of maven2's installed home dir +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a key stroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM set title of command window +title %0 +@REM enable echoing my setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" +if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" +set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.4.2/maven-wrapper-0.4.2.jar" +FOR /F "tokens=1,2 delims==" %%A IN (%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties) DO ( + IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B +) + +@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +@REM This allows using the maven wrapper in projects that prohibit checking in binary data. +if exist %WRAPPER_JAR% ( + echo Found %WRAPPER_JAR% +) else ( + echo Couldn't find %WRAPPER_JAR%, downloading it ... + echo Downloading from: %DOWNLOAD_URL% + powershell -Command "(New-Object Net.WebClient).DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')" + echo Finished downloading %WRAPPER_JAR% +) +@REM End of extension + +%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" +if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%" == "on" pause + +if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% + +exit /B %ERROR_CODE% diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/pom.xml b/POPESCU_ALEXANDRU/Proiect/Flights/pom.xml new file mode 100644 index 0000000..018fb59 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/pom.xml @@ -0,0 +1,68 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 2.1.1.RELEASE + + + com.pssc.hph + flights + 0.0.1-SNAPSHOT + flights + Book your flight safe + + + 1.8 + + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + org.springframework.boot + spring-boot-starter-jdbc + + + + org.springframework.boot + spring-boot-starter-web + + + com.h2database + h2 + 1.3.156 + + + + mysql + mysql-connector-java + runtime + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/FlightsApplication.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/FlightsApplication.java new file mode 100644 index 0000000..f406568 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/FlightsApplication.java @@ -0,0 +1,14 @@ +package com.pssc.hph.flights; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class FlightsApplication { + + public static void main(String[] args) { + SpringApplication.run(FlightsApplication.class, args); + } + +} + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/AirplanesController.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/AirplanesController.java new file mode 100644 index 0000000..3d290e8 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/AirplanesController.java @@ -0,0 +1,25 @@ +package com.pssc.hph.flights.controllers; + +import com.pssc.hph.flights.entities.Airplane; +import com.pssc.hph.flights.services.AirplaneService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequestMapping("/home/airplane") +public class AirplanesController { + + @Autowired + AirplaneService airplaneService; + + @GetMapping("/all") + public List getAirplanes(){ + return airplaneService.getAllAirplanes(); + } + + +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/BookingsController.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/BookingsController.java new file mode 100644 index 0000000..2132eae --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/BookingsController.java @@ -0,0 +1,23 @@ +package com.pssc.hph.flights.controllers; + +import com.pssc.hph.flights.entities.Booking; +import com.pssc.hph.flights.services.BookingsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequestMapping("/home") +public class BookingsController { + + @Autowired + BookingsService bookingsService; + + @GetMapping("bookings") + public List getAll(){ + return bookingsService.getAllBookings(); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Airplane.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Airplane.java new file mode 100644 index 0000000..d8585d7 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Airplane.java @@ -0,0 +1,26 @@ +package com.pssc.hph.flights.entities; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.util.List; + +@Entity +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Airplane { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @Column(name = "id_airplane") + private int id; + @Column(name = "places") + private double places; + @OneToMany(mappedBy = "id_booking") + @JsonIgnore + private List id_booking; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Booking.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Booking.java new file mode 100644 index 0000000..34360bd --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Booking.java @@ -0,0 +1,29 @@ +package com.pssc.hph.flights.entities; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; + +@Entity +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Booking { + + @Id + @GeneratedValue(strategy = GenerationType.AUTO) + @Column(name = "id_booking") + private int id_booking; + @Column(name = "from") + private String from; + @Column(name = "to") + private String to; + @Column(name = "date_year") + private String date_year; + @Column(name = "date_hour") + private String date_hour; + @Column(name = "traveltime") + private String travel_time; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/dto/AirplaneDTO.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/dto/AirplaneDTO.java new file mode 100644 index 0000000..44a79f7 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/dto/AirplaneDTO.java @@ -0,0 +1,7 @@ +package com.pssc.hph.flights.entities.dto; + +import javax.persistence.Entity; + +@Entity +public class AirplaneDTO { +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java new file mode 100644 index 0000000..e4f5a12 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java @@ -0,0 +1,7 @@ +package com.pssc.hph.flights.repositories; + +import com.pssc.hph.flights.entities.Airplane; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface AirplaneRepository extends JpaRepository { +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/BookingsRepository.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/BookingsRepository.java new file mode 100644 index 0000000..fad986f --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/BookingsRepository.java @@ -0,0 +1,7 @@ +package com.pssc.hph.flights.repositories; + +import com.pssc.hph.flights.entities.Booking; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface BookingsRepository extends JpaRepository { +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/AirplaneService.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/AirplaneService.java new file mode 100644 index 0000000..764b343 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/AirplaneService.java @@ -0,0 +1,23 @@ +package com.pssc.hph.flights.services; + +import com.pssc.hph.flights.entities.Airplane; +import com.pssc.hph.flights.repositories.AirplaneRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class AirplaneService { + + private AirplaneRepository airplaneRepository; + + @Autowired + public AirplaneService(AirplaneRepository airplaneRepository) { + this.airplaneRepository = airplaneRepository; + } + + public List getAllAirplanes(){ + return airplaneRepository.findAll(); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/BookingsService.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/BookingsService.java new file mode 100644 index 0000000..d8d9aa4 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/BookingsService.java @@ -0,0 +1,23 @@ +package com.pssc.hph.flights.services; + +import com.pssc.hph.flights.entities.Booking; +import com.pssc.hph.flights.repositories.BookingsRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class BookingsService { + + private BookingsRepository bookingsRepository; + + @Autowired + public BookingsService(BookingsRepository bookingsRepository) { + this.bookingsRepository = bookingsRepository; + } + + public List getAllBookings(){ + return bookingsRepository.findAll(); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/application.properties b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/application.properties new file mode 100644 index 0000000..8920501 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/application.properties @@ -0,0 +1,3 @@ +spring.datasource.username=root +spring.datasource.password= +spring.datasource.url=jdbc:mysql://localhost:3306/hph diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/db.migration/hph.sql b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/db.migration/hph.sql new file mode 100644 index 0000000..b06387a --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/db.migration/hph.sql @@ -0,0 +1,53 @@ +-- -------------------------------------------------------- +-- Host: 127.0.0.1 +-- Server version: 10.1.36-MariaDB - mariadb.org binary distribution +-- Server OS: Win32 +-- HeidiSQL Version: 9.5.0.5196 +-- -------------------------------------------------------- + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET NAMES utf8 */; +/*!50503 SET NAMES utf8mb4 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; + + +-- Dumping database structure for hph +CREATE DATABASE IF NOT EXISTS `hph` /*!40100 DEFAULT CHARACTER SET latin1 */; +USE `hph`; + +-- Dumping structure for table hph.airplane +CREATE TABLE IF NOT EXISTS `airplane` ( + `id_airplane` int(10) unsigned NOT NULL, + `places` double NOT NULL, + `id_booking` int(11) unsigned NOT NULL, + KEY `FK_airplane_booking` (`id_booking`), + CONSTRAINT `FK_airplane_booking` FOREIGN KEY (`id_booking`) REFERENCES `booking` (`Id_booking`) +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- Dumping data for table hph.airplane: ~0 rows (approximately) +/*!40000 ALTER TABLE `airplane` DISABLE KEYS */; +INSERT INTO `airplane` (`id_airplane`, `places`, `id_booking`) VALUES + (1, 500, 1); +/*!40000 ALTER TABLE `airplane` ENABLE KEYS */; + +-- Dumping structure for table hph.booking +CREATE TABLE IF NOT EXISTS `booking` ( + `id_booking` int(10) unsigned NOT NULL AUTO_INCREMENT, + `from` varchar(50) DEFAULT NULL, + `to` varchar(50) DEFAULT NULL, + `date_year` varchar(10) DEFAULT NULL, + `date_hour` varchar(10) DEFAULT NULL, + `traveltime` varchar(5) DEFAULT NULL, + PRIMARY KEY (`id_booking`) +) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; + +-- Dumping data for table hph.booking: ~0 rows (approximately) +/*!40000 ALTER TABLE `booking` DISABLE KEYS */; +INSERT INTO `booking` (`id_booking`, `from`, `to`, `date_year`, `date_hour`, `traveltime`) VALUES + (1, 'RO', 'DE', '2019-12-29', '15:25', '01:05'); +/*!40000 ALTER TABLE `booking` ENABLE KEYS */; + +/*!40101 SET SQL_MODE=IFNULL(@OLD_SQL_MODE, '') */; +/*!40014 SET FOREIGN_KEY_CHECKS=IF(@OLD_FOREIGN_KEY_CHECKS IS NULL, 1, @OLD_FOREIGN_KEY_CHECKS) */; +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/test/java/com/pssc/hph/flights/FlightsApplicationTests.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/test/java/com/pssc/hph/flights/FlightsApplicationTests.java new file mode 100644 index 0000000..32e0cb7 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/src/test/java/com/pssc/hph/flights/FlightsApplicationTests.java @@ -0,0 +1,17 @@ +package com.pssc.hph.flights; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class FlightsApplicationTests { + + @Test + public void contextLoads() { + } + +} + From b71a8c99b09f6b3ca4a706909339acb3ae7cd6b8 Mon Sep 17 00:00:00 2001 From: alxpps Date: Mon, 7 Jan 2019 23:53:44 +0200 Subject: [PATCH 4/7] Small changes --- .../Flights/{ => application}/.gitignore | 0 .../.mvn/wrapper/maven-wrapper.jar | Bin .../.mvn/wrapper/maven-wrapper.properties | 0 .../Proiect/Flights/{ => application}/mvnw | 0 .../Flights/{ => application}/mvnw.cmd | 0 .../Proiect/Flights/{ => application}/pom.xml | 22 +- .../pssc/hph/flights/FlightsApplication.java | 30 + .../configs/WebSecurityConfiguration.java | 127 + .../controllers/AirplaneController.java} | 14 +- .../controllers/BookingController.java | 31 + .../flights/controllers/FlightController.java | 43 + .../flights/controllers/UserController.java | 36 + .../pssc/hph/flights/dtos/AirplaneDto.java | 4 + .../com/pssc/hph/flights/dtos/BookingDto.java | 12 + .../com/pssc/hph/flights/dtos/FlightDto.java | 13 + .../pssc/hph/flights/entities/Airplane.java | 13 +- .../pssc/hph/flights/entities/Booking.java | 22 + .../com/pssc/hph/flights/entities/Flight.java | 31 + .../com/pssc/hph/flights/entities/Role.java | 9 + .../com/pssc/hph/flights/entities/User.java | 31 + .../BadRequestFlightsException.java | 4 + .../exceptions/NotFoundFlightsException.java | 4 + .../repositories/AirplaneRepository.java | 2 +- .../repositories/BookingRepository.java | 13 + .../repositories/FlightRepository.java | 7 + .../flights/repositories/UserRepository.java | 11 + .../hph/flights/services/AirplaneService.java | 0 .../hph/flights/services/BookingService.java | 48 + .../hph/flights/services/FlightService.java | 83 + .../hph/flights/services/UserService.java | 60 + .../src/main/resources/application.yaml | 10 + .../src/main/resources/db.migration/hph.sql | 0 .../application/src/main/resources/import.sql | 13 + .../Proiect/Flights/client/.editorconfig | 13 + .../Proiect/Flights/client/.gitignore | 39 + .../Proiect/Flights/client/README.md | 27 + .../Proiect/Flights/client/angular.json | 127 + .../Flights/client/e2e/protractor.conf.js | 28 + .../Flights/client/e2e/src/app.e2e-spec.ts | 14 + .../Proiect/Flights/client/e2e/src/app.po.ts | 11 + .../Flights/client/e2e/tsconfig.e2e.json | 13 + .../Proiect/Flights/client/package-lock.json | 10448 ++++++++++++++++ .../Proiect/Flights/client/package.json | 48 + .../Flights/client/src/app/app.module.ts | 50 + .../src/app/components/app.component.css | 0 .../src/app/components/app.component.html | 2 + .../src/app/components/app.component.ts | 14 + .../bookings/bookings.component.css | 9 + .../bookings/bookings.component.html | 23 + .../components/bookings/bookings.component.ts | 28 + .../flights-list/flights-list.component.css | 15 + .../flights-list/flights-list.component.html | 20 + .../flights-list/flights-list.component.ts | 57 + .../app/components/home/home.component.css | 0 .../app/components/home/home.component.html | 4 + .../src/app/components/home/home.component.ts | 15 + .../app/components/login/login.component.css | 0 .../app/components/login/login.component.html | 16 + .../app/components/login/login.component.ts | 22 + .../manage-flights.component.css | 8 + .../manage-flights.component.html | 22 + .../manage-flights.component.ts | 42 + .../navbar/nav-link/nav-link.component.css | 0 .../navbar/nav-link/nav-link.component.html | 3 + .../navbar/nav-link/nav-link.component.ts | 17 + .../components/navbar/navbar.component.css | 3 + .../components/navbar/navbar.component.html | 26 + .../app/components/navbar/navbar.component.ts | 23 + .../register/register.component.css | 0 .../register/register.component.html | 26 + .../components/register/register.component.ts | 24 + .../configs/auth-http-interceptor.service.ts | 28 + .../Flights/client/src/app/configs/conf.ts | 3 + .../Flights/client/src/app/configs/routes.ts | 20 + .../client/src/app/guards/admin.guard.ts | 17 + .../client/src/app/guards/anonymous.guard.ts | 17 + .../src/app/guards/authenticated.guard.ts | 17 + .../client/src/app/guards/customer.guard.ts | 17 + .../Flights/client/src/app/models/airplane.ts | 4 + .../Flights/client/src/app/models/booking.ts | 8 + .../Flights/client/src/app/models/flight.ts | 12 + .../Flights/client/src/app/models/user.ts | 9 + .../src/app/services/airplane.service.ts | 15 + .../client/src/app/services/auth.service.ts | 52 + .../src/app/services/booking.service.ts | 23 + .../src/app/services/flights.service.ts | 32 + .../client/src/app/services/user.service.ts | 21 + .../Flights/client/src/assets/.gitkeep | 0 .../Proiect/Flights/client/src/browserslist | 11 + .../src/environments/environment.prod.ts | 3 + .../client/src/environments/environment.ts | 16 + .../Proiect/Flights/client/src/favicon.ico | Bin 0 -> 5430 bytes .../Proiect/Flights/client/src/index.html | 15 + .../Proiect/Flights/client/src/karma.conf.js | 31 + .../Proiect/Flights/client/src/main.ts | 13 + .../Proiect/Flights/client/src/polyfills.ts | 80 + .../Proiect/Flights/client/src/styles.css | 1 + .../Proiect/Flights/client/src/test.ts | 20 + .../Flights/client/src/tsconfig.app.json | 11 + .../Flights/client/src/tsconfig.spec.json | 18 + .../Proiect/Flights/client/src/tslint.json | 17 + .../Proiect/Flights/client/tsconfig.json | 21 + .../Proiect/Flights/client/tslint.json | 131 + .../pssc/hph/flights/FlightsApplication.java | 14 - .../controllers/BookingsController.java | 23 - .../pssc/hph/flights/entities/Booking.java | 29 - .../hph/flights/entities/dto/AirplaneDTO.java | 7 - .../repositories/BookingsRepository.java | 7 - .../hph/flights/services/BookingsService.java | 23 - .../src/main/resources/application.properties | 3 - .../hph/flights/FlightsApplicationTests.java | 17 - 111 files changed, 12587 insertions(+), 149 deletions(-) rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/.gitignore (100%) rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/.mvn/wrapper/maven-wrapper.jar (100%) rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/.mvn/wrapper/maven-wrapper.properties (100%) rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/mvnw (100%) rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/mvnw.cmd (100%) rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/pom.xml (84%) create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/FlightsApplication.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/configs/WebSecurityConfiguration.java rename POPESCU_ALEXANDRU/Proiect/Flights/{src/main/java/com/pssc/hph/flights/controllers/AirplanesController.java => application/src/main/java/com/pssc/hph/flights/controllers/AirplaneController.java} (67%) create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/BookingController.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/FlightController.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/UserController.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/AirplaneDto.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/BookingDto.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/FlightDto.java rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/src/main/java/com/pssc/hph/flights/entities/Airplane.java (58%) create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Booking.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Flight.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Role.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/User.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/exceptions/BadRequestFlightsException.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/exceptions/NotFoundFlightsException.java rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java (93%) create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/BookingRepository.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/FlightRepository.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/UserRepository.java rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/src/main/java/com/pssc/hph/flights/services/AirplaneService.java (100%) create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/BookingService.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/FlightService.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/UserService.java create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/application.yaml rename POPESCU_ALEXANDRU/Proiect/Flights/{ => application}/src/main/resources/db.migration/hph.sql (100%) create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/import.sql create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/.editorconfig create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/.gitignore create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/README.md create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/angular.json create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/protractor.conf.js create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/src/app.e2e-spec.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/src/app.po.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/tsconfig.e2e.json create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/package-lock.json create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/package.json create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/app.module.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/auth-http-interceptor.service.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/conf.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/routes.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/admin.guard.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/anonymous.guard.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/authenticated.guard.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/customer.guard.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/airplane.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/booking.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/flight.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/user.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/airplane.service.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/auth.service.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/booking.service.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/flights.service.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/user.service.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/assets/.gitkeep create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/browserslist create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/environments/environment.prod.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/environments/environment.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/favicon.ico create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/index.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/karma.conf.js create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/main.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/polyfills.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/styles.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/test.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/tsconfig.app.json create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/tsconfig.spec.json create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/tslint.json create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/tsconfig.json create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/tslint.json delete mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/FlightsApplication.java delete mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/BookingsController.java delete mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Booking.java delete mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/dto/AirplaneDTO.java delete mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/BookingsRepository.java delete mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/BookingsService.java delete mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/application.properties delete mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/src/test/java/com/pssc/hph/flights/FlightsApplicationTests.java diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/.gitignore b/POPESCU_ALEXANDRU/Proiect/Flights/application/.gitignore similarity index 100% rename from POPESCU_ALEXANDRU/Proiect/Flights/.gitignore rename to POPESCU_ALEXANDRU/Proiect/Flights/application/.gitignore diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/.mvn/wrapper/maven-wrapper.jar b/POPESCU_ALEXANDRU/Proiect/Flights/application/.mvn/wrapper/maven-wrapper.jar similarity index 100% rename from POPESCU_ALEXANDRU/Proiect/Flights/.mvn/wrapper/maven-wrapper.jar rename to POPESCU_ALEXANDRU/Proiect/Flights/application/.mvn/wrapper/maven-wrapper.jar diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/.mvn/wrapper/maven-wrapper.properties b/POPESCU_ALEXANDRU/Proiect/Flights/application/.mvn/wrapper/maven-wrapper.properties similarity index 100% rename from POPESCU_ALEXANDRU/Proiect/Flights/.mvn/wrapper/maven-wrapper.properties rename to POPESCU_ALEXANDRU/Proiect/Flights/application/.mvn/wrapper/maven-wrapper.properties diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/mvnw b/POPESCU_ALEXANDRU/Proiect/Flights/application/mvnw similarity index 100% rename from POPESCU_ALEXANDRU/Proiect/Flights/mvnw rename to POPESCU_ALEXANDRU/Proiect/Flights/application/mvnw diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/mvnw.cmd b/POPESCU_ALEXANDRU/Proiect/Flights/application/mvnw.cmd similarity index 100% rename from POPESCU_ALEXANDRU/Proiect/Flights/mvnw.cmd rename to POPESCU_ALEXANDRU/Proiect/Flights/application/mvnw.cmd diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/pom.xml b/POPESCU_ALEXANDRU/Proiect/Flights/application/pom.xml similarity index 84% rename from POPESCU_ALEXANDRU/Proiect/Flights/pom.xml rename to POPESCU_ALEXANDRU/Proiect/Flights/application/pom.xml index 018fb59..c82dc6e 100644 --- a/POPESCU_ALEXANDRU/Proiect/Flights/pom.xml +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/pom.xml @@ -23,20 +23,15 @@ org.springframework.boot spring-boot-starter-data-jpa - - org.springframework.boot - spring-boot-starter-jdbc - + + + + org.springframework.boot spring-boot-starter-web - - com.h2database - h2 - 1.3.156 - mysql @@ -53,7 +48,14 @@ spring-boot-starter-test test - + + com.fasterxml.jackson.datatype + jackson-datatype-jsr310 + + + org.springframework.boot + spring-boot-starter-security + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/FlightsApplication.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/FlightsApplication.java new file mode 100644 index 0000000..648ed0d --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/FlightsApplication.java @@ -0,0 +1,30 @@ +package com.pssc.hph.flights; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.context.annotation.Bean; +import org.springframework.scheduling.annotation.EnableAsync; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.util.concurrent.Executor; + +@EnableAsync +@SpringBootApplication +public class FlightsApplication { + + public static void main(String[] args) { + SpringApplication.run(FlightsApplication.class, args); + } + +/* @Bean + public Executor taskExecutor() { + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(2); + executor.setMaxPoolSize(2); + executor.setQueueCapacity(500); + executor.setThreadNamePrefix("GithubLookup-"); + executor.initialize(); + return executor; + }*/ +} + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/configs/WebSecurityConfiguration.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/configs/WebSecurityConfiguration.java new file mode 100644 index 0000000..123032c --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/configs/WebSecurityConfiguration.java @@ -0,0 +1,127 @@ +package com.pssc.hph.flights.configs; + +import com.pssc.hph.flights.entities.Role; +import com.pssc.hph.flights.entities.User; +import com.pssc.hph.flights.repositories.UserRepository; +import lombok.Getter; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.HttpMethod; +import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.config.http.SessionCreationPolicy; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.authority.SimpleGrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.security.crypto.password.PasswordEncoder; +import org.springframework.web.servlet.config.annotation.CorsRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +import javax.persistence.EntityNotFoundException; +import java.util.Collection; +import java.util.Collections; + +@Slf4j +@Configuration +@EnableWebSecurity +@RequiredArgsConstructor +public class WebSecurityConfiguration extends WebSecurityConfigurerAdapter { + private final UserRepository userRepository; + + @Override + protected void configure(AuthenticationManagerBuilder auth) throws Exception { + auth.userDetailsService(username -> new UserDetailsImpl(userRepository.findByUsername(username).orElseThrow(EntityNotFoundException::new))); + } + + @Override + protected void configure(HttpSecurity http) throws Exception { + http + .authorizeRequests() + /* Misc */ + .antMatchers(HttpMethod.OPTIONS, "/**").permitAll() +// .antMatchers(HttpMethod.POST, "/users").anonymous() + .antMatchers(HttpMethod.DELETE, "/flights/{id}").hasAuthority(Role.ADMIN.getAuthority()) + .antMatchers(HttpMethod.POST, "/flights").hasAuthority(Role.ADMIN.getAuthority()) + .antMatchers(HttpMethod.POST, "/users").permitAll() + .antMatchers(HttpMethod.GET, "/flights").permitAll() + .anyRequest().authenticated() + .and() + .httpBasic().and() + .csrf().disable() + .headers().frameOptions().disable().and() + .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS); + } + + @Bean + public PasswordEncoder passwordEncoder() { + return new PasswordEncoder() { + @Override + public String encode(CharSequence charSequence) { + return charSequence.toString(); + } + + @Override + public boolean matches(CharSequence charSequence, String s) { + return charSequence.toString().equals(s); + } + }; + } + + @Getter + @RequiredArgsConstructor + public static class UserDetailsImpl implements UserDetails { + private final User user; + + @Override + public Collection getAuthorities() { + return Collections.singletonList(new SimpleGrantedAuthority(user.getRole().getAuthority())); + } + + @Override + public String getPassword() { + return user.getPassword(); + } + + @Override + public String getUsername() { + return user.getUsername(); + } + + @Override + public boolean isAccountNonExpired() { + return true; + } + + @Override + public boolean isAccountNonLocked() { + return true; + } + + @Override + public boolean isCredentialsNonExpired() { + return true; + } + + @Override + public boolean isEnabled() { + return true; + } + } + + @Bean + public WebMvcConfigurer corsConfigurer() { + return new WebMvcConfigurer() { + @Override + public void addCorsMappings(CorsRegistry registry) { + registry.addMapping("/**") + .allowedOrigins("*") + .allowedMethods("*") + .allowedHeaders("*"); + } + }; + } +} \ No newline at end of file diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/AirplanesController.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/AirplaneController.java similarity index 67% rename from POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/AirplanesController.java rename to POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/AirplaneController.java index 3d290e8..d09a700 100644 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/AirplanesController.java +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/AirplaneController.java @@ -2,6 +2,7 @@ import com.pssc.hph.flights.entities.Airplane; import com.pssc.hph.flights.services.AirplaneService; +import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -10,14 +11,13 @@ import java.util.List; @RestController -@RequestMapping("/home/airplane") -public class AirplanesController { +@RequestMapping("/airplanes") +@RequiredArgsConstructor +public class AirplaneController { + private final AirplaneService airplaneService; - @Autowired - AirplaneService airplaneService; - - @GetMapping("/all") - public List getAirplanes(){ + @GetMapping + public List getAirplanes() { return airplaneService.getAllAirplanes(); } diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/BookingController.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/BookingController.java new file mode 100644 index 0000000..fe0bd26 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/BookingController.java @@ -0,0 +1,31 @@ +package com.pssc.hph.flights.controllers; + +import com.pssc.hph.flights.dtos.BookingDto; +import com.pssc.hph.flights.entities.Booking; +import com.pssc.hph.flights.services.BookingService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/bookings") +@RequiredArgsConstructor +public class BookingController { + private final BookingService bookingService; + + @GetMapping + public List getAll() { + return bookingService.getAllBookings(); + } + + @PostMapping + public Booking createBooking(@RequestBody BookingDto bookingDto) { + return bookingService.createBooking(bookingDto); + } + + @DeleteMapping("/{id}") + public void delete(@PathVariable long id) { + bookingService.delete(id); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/FlightController.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/FlightController.java new file mode 100644 index 0000000..071a87a --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/FlightController.java @@ -0,0 +1,43 @@ +package com.pssc.hph.flights.controllers; + +import com.pssc.hph.flights.dtos.BookingDto; +import com.pssc.hph.flights.dtos.FlightDto; +import com.pssc.hph.flights.entities.Booking; +import com.pssc.hph.flights.entities.Flight; +import com.pssc.hph.flights.services.FlightService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@RestController +@RequestMapping("/flights") +@RequiredArgsConstructor +public class FlightController { + private final FlightService flightService; + + @GetMapping + public List flights() { + return flightService.getAll(); + } + + @GetMapping("/{id}") + public Flight get(@PathVariable long id) { + return flightService.getOne(id); + } + + @DeleteMapping("/{id}") + public void delete(@PathVariable long id) { + flightService.delete(id); + } + + @PostMapping + public Flight createFlight(@RequestBody FlightDto flightDto) { + return flightService.createFlight(flightDto); + } + + @PostMapping("/{id}/notify") + public void notifyUsers(@PathVariable long id) { + flightService.notifyUsers(id); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/UserController.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/UserController.java new file mode 100644 index 0000000..8a4d07e --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/controllers/UserController.java @@ -0,0 +1,36 @@ +package com.pssc.hph.flights.controllers; + +import com.pssc.hph.flights.configs.WebSecurityConfiguration; +import com.pssc.hph.flights.entities.Booking; +import com.pssc.hph.flights.entities.User; +import com.pssc.hph.flights.services.UserService; +import lombok.RequiredArgsConstructor; +import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.PostConstruct; +import java.security.Principal; +import java.util.List; + +@RestController +@RequestMapping("/users") +@RequiredArgsConstructor +public class UserController { + private final UserService userService; + + @GetMapping("/profile") + public User getProfile(Principal principal) { + return userService.getUser(principal.getName()); + } + + @GetMapping("/profile/bookings") + public List getProfileBookings(Principal principal) { + return userService.getUser(principal.getName()).getBookings(); + } + + @PostMapping + public User createUser(@RequestBody User user) { + return userService.createUser(user); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/AirplaneDto.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/AirplaneDto.java new file mode 100644 index 0000000..84783de --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/AirplaneDto.java @@ -0,0 +1,4 @@ +package com.pssc.hph.flights.dtos; + +public class AirplaneDto { +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/BookingDto.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/BookingDto.java new file mode 100644 index 0000000..0fe068c --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/BookingDto.java @@ -0,0 +1,12 @@ +package com.pssc.hph.flights.dtos; + +import com.pssc.hph.flights.entities.Flight; +import com.pssc.hph.flights.entities.User; +import lombok.Data; + +import javax.persistence.ManyToOne; + +@Data +public class BookingDto { + private long flightId; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/FlightDto.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/FlightDto.java new file mode 100644 index 0000000..b307a38 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/dtos/FlightDto.java @@ -0,0 +1,13 @@ +package com.pssc.hph.flights.dtos; + +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +public class FlightDto { + private String fromCity; + private String toCity; + private LocalDateTime time; + private long airplaneId; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Airplane.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Airplane.java similarity index 58% rename from POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Airplane.java rename to POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Airplane.java index d8585d7..0205b0a 100644 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Airplane.java +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Airplane.java @@ -13,14 +13,11 @@ @NoArgsConstructor @AllArgsConstructor public class Airplane { - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - @Column(name = "id_airplane") - private int id; - @Column(name = "places") - private double places; - @OneToMany(mappedBy = "id_booking") + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + private int availableSeats; @JsonIgnore - private List id_booking; + @OneToMany(mappedBy = "airplane") + private List flights; } diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Booking.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Booking.java new file mode 100644 index 0000000..71c8ce9 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Booking.java @@ -0,0 +1,22 @@ +package com.pssc.hph.flights.entities; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; + +@Entity +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Booking { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + @ManyToOne + private Flight flight; + @ManyToOne + private User user; +} + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Flight.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Flight.java new file mode 100644 index 0000000..2020493 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Flight.java @@ -0,0 +1,31 @@ +package com.pssc.hph.flights.entities; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.time.LocalDateTime; +import java.util.List; + +@Entity +@Data +@NoArgsConstructor +@AllArgsConstructor +public class Flight { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + private String fromCity; + private String toCity; + private LocalDateTime time; + @JsonIgnore + @OneToMany(mappedBy = "flight", fetch = FetchType.EAGER) + private List bookings; + @ManyToOne + private Airplane airplane; + private int sentEmails; + private boolean allEmailsSent = false; + private int seatsTaken; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Role.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Role.java new file mode 100644 index 0000000..84d1d38 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/Role.java @@ -0,0 +1,9 @@ +package com.pssc.hph.flights.entities; + +public enum Role { + CUSTOMER, ADMIN; + + public String getAuthority() { + return "ROLE_" + this.name().toUpperCase(); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/User.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/User.java new file mode 100644 index 0000000..09a4a60 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/entities/User.java @@ -0,0 +1,31 @@ +package com.pssc.hph.flights.entities; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.util.List; + +@Entity +@Data +@NoArgsConstructor +@AllArgsConstructor +public class User { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private long id; + @Column(unique = true, length = 50) + private String username; + @Column(unique = true, length = 50) + private String email; + private String password; + private String firstName; + private String lastName; + @JsonIgnore + @OneToMany(mappedBy = "user") + private List bookings; + @Enumerated(EnumType.STRING) + private Role role; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/exceptions/BadRequestFlightsException.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/exceptions/BadRequestFlightsException.java new file mode 100644 index 0000000..f402fe2 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/exceptions/BadRequestFlightsException.java @@ -0,0 +1,4 @@ +package com.pssc.hph.flights.exceptions; + +public class BadRequestFlightsException extends RuntimeException { +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/exceptions/NotFoundFlightsException.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/exceptions/NotFoundFlightsException.java new file mode 100644 index 0000000..5a14946 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/exceptions/NotFoundFlightsException.java @@ -0,0 +1,4 @@ +package com.pssc.hph.flights.exceptions; + +public class NotFoundFlightsException extends RuntimeException { +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java similarity index 93% rename from POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java rename to POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java index e4f5a12..1b40301 100644 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/AirplaneRepository.java @@ -3,5 +3,5 @@ import com.pssc.hph.flights.entities.Airplane; import org.springframework.data.jpa.repository.JpaRepository; -public interface AirplaneRepository extends JpaRepository { +public interface AirplaneRepository extends JpaRepository { } diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/BookingRepository.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/BookingRepository.java new file mode 100644 index 0000000..27fc5ae --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/BookingRepository.java @@ -0,0 +1,13 @@ +package com.pssc.hph.flights.repositories; + +import com.pssc.hph.flights.entities.Booking; +import com.pssc.hph.flights.entities.User; +import org.springframework.data.jpa.repository.JpaRepository; + +import java.util.List; + +public interface BookingRepository extends JpaRepository { + + + List findAllByUser(User user); +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/FlightRepository.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/FlightRepository.java new file mode 100644 index 0000000..7d6a505 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/FlightRepository.java @@ -0,0 +1,7 @@ +package com.pssc.hph.flights.repositories; + +import com.pssc.hph.flights.entities.Flight; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface FlightRepository extends JpaRepository { +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/UserRepository.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/UserRepository.java new file mode 100644 index 0000000..de8209c --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/repositories/UserRepository.java @@ -0,0 +1,11 @@ +package com.pssc.hph.flights.repositories; + +import com.pssc.hph.flights.entities.User; +import org.springframework.data.jpa.repository.JpaRepository; + +import java.util.Optional; + +public interface UserRepository extends JpaRepository { + Optional findByUsername(String username); + Optional findByEmail(String email); +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/AirplaneService.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/AirplaneService.java similarity index 100% rename from POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/AirplaneService.java rename to POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/AirplaneService.java diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/BookingService.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/BookingService.java new file mode 100644 index 0000000..d707143 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/BookingService.java @@ -0,0 +1,48 @@ +package com.pssc.hph.flights.services; + +import com.pssc.hph.flights.dtos.BookingDto; +import com.pssc.hph.flights.entities.Booking; +import com.pssc.hph.flights.exceptions.BadRequestFlightsException; +import com.pssc.hph.flights.exceptions.NotFoundFlightsException; +import com.pssc.hph.flights.repositories.BookingRepository; +import com.pssc.hph.flights.repositories.FlightRepository; +import lombok.RequiredArgsConstructor; +import lombok.val; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +@RequiredArgsConstructor +public class BookingService { + private final BookingRepository bookingRepository; + private final FlightRepository flightRepository; + private final UserService userService; + + public List getAllBookings(){ + return bookingRepository.findAllByUser(userService.getPrincipal()); + } + + public Booking createBooking(BookingDto bookingDto) { + val booking = new Booking(); + + val flight = flightRepository.findById(bookingDto.getFlightId()).orElseThrow(NotFoundFlightsException::new); + + if (flight.getSeatsTaken() >= flight.getAirplane().getAvailableSeats()) { + throw new BadRequestFlightsException(); + } + + val user = userService.getPrincipal(); + + flight.setSeatsTaken(flight.getSeatsTaken() + 1); + + booking.setFlight(flight); + booking.setUser(user); + + return bookingRepository.save(booking); + } + + public void delete(long id) { + bookingRepository.deleteById(id); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/FlightService.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/FlightService.java new file mode 100644 index 0000000..ebdae2b --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/FlightService.java @@ -0,0 +1,83 @@ +package com.pssc.hph.flights.services; + +import com.pssc.hph.flights.dtos.FlightDto; +import com.pssc.hph.flights.entities.Booking; +import com.pssc.hph.flights.entities.Flight; +import com.pssc.hph.flights.entities.User; +import com.pssc.hph.flights.exceptions.BadRequestFlightsException; +import com.pssc.hph.flights.exceptions.NotFoundFlightsException; +import com.pssc.hph.flights.repositories.AirplaneRepository; +import com.pssc.hph.flights.repositories.FlightRepository; +import com.pssc.hph.flights.repositories.UserRepository; +import lombok.RequiredArgsConstructor; +import lombok.SneakyThrows; +import lombok.extern.slf4j.Slf4j; +import lombok.val; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Service; + +import javax.persistence.EntityNotFoundException; +import java.time.LocalDateTime; +import java.util.List; +import java.util.stream.Collectors; + +@Slf4j +@Service +@RequiredArgsConstructor +public class FlightService { + private final FlightRepository flightRepository; + private final AirplaneRepository airplaneRepository; + private final UserRepository userRepository; + + public Flight createFlight(FlightDto flightDto) { + val airplane = airplaneRepository.findById(flightDto.getAirplaneId()).orElseThrow(NotFoundFlightsException::new); + if(flightDto.getFromCity() == null || flightDto.getFromCity().length() < 2 || + flightDto.getToCity() == null || flightDto.getToCity().length() < 2 || + flightDto.getTime() == null || flightDto.getTime().isBefore(LocalDateTime.now().plusDays(1))) { + throw new BadRequestFlightsException(); + } + + val flight = new Flight(); + flight.setAirplane(airplane); + flight.setFromCity(flightDto.getFromCity()); + flight.setToCity(flightDto.getToCity()); + flight.setTime(flightDto.getTime()); + flight.setAllEmailsSent(false); + + return flightRepository.save(flight); + } + + @Async + public void notifyUsers(long id) { + val flight = flightRepository.findById(id).orElseThrow(NotFoundFlightsException::new); + val users = userRepository.findAll(); + notifyAsync(flight, users); + } + + @SneakyThrows + public void notifyAsync(Flight flight, List users) { + for (User user : users) { + Thread.sleep(3000); + + flight.setSentEmails(flight.getSentEmails() + 1); + flightRepository.save(flight); + log.info("Email sent to user {}@{}", user.getUsername(), user.getEmail()); + } + + flight.setAllEmailsSent(true); + flightRepository.save(flight); + log.info("All email notifications successfully sent."); + } + + public List getAll() { + return flightRepository.findAll(); + } + + public Flight getOne(long id) { + return flightRepository.findById(id).orElseThrow(EntityNotFoundException::new); + } + + public void delete(long id) { + flightRepository.deleteById(id); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/UserService.java b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/UserService.java new file mode 100644 index 0000000..4b06258 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/java/com/pssc/hph/flights/services/UserService.java @@ -0,0 +1,60 @@ +package com.pssc.hph.flights.services; + +import com.pssc.hph.flights.configs.WebSecurityConfiguration; +import com.pssc.hph.flights.entities.Role; +import com.pssc.hph.flights.entities.User; +import com.pssc.hph.flights.exceptions.BadRequestFlightsException; +import com.pssc.hph.flights.exceptions.NotFoundFlightsException; +import com.pssc.hph.flights.repositories.UserRepository; +import lombok.RequiredArgsConstructor; +import lombok.val; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.stereotype.Service; + +import java.security.Principal; + +@Service +@RequiredArgsConstructor +public class UserService { + private final UserRepository userRepository; + + public User getUser(final String username) { + return userRepository.findByUsername(username).orElseThrow(NotFoundFlightsException::new); + } + + public User createUser(User user) { + if(user.getEmail() == null || user.getEmail().length() < 3 || + user.getFirstName() == null || user.getFirstName().length() < 3 || + user.getLastName() == null || user.getLastName().length() < 3 || + user.getPassword() == null || user.getPassword().length() < 3) { + throw new BadRequestFlightsException(); + } + + if(userRepository.findByEmail(user.getEmail()).isPresent() || userRepository.findByUsername(user.getUsername()).isPresent()) { + throw new BadRequestFlightsException(); + } + + val out = new User(); + out.setEmail(user.getEmail()); + out.setPassword(user.getPassword()); + out.setFirstName(user.getFirstName()); + out.setLastName(user.getLastName()); + out.setUsername(user.getUsername()); + out.setRole(Role.CUSTOMER); + + return userRepository.save(out); + } + + public User getPrincipal() { + val principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal(); + String name; + + if(principal instanceof Principal) { + name = ((Principal) principal).getName(); + } else { + name = ((WebSecurityConfiguration.UserDetailsImpl) principal).getUsername(); + } + + return userRepository.findByUsername(name).orElseThrow(NotFoundFlightsException::new); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/application.yaml b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/application.yaml new file mode 100644 index 0000000..4800db1 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/application.yaml @@ -0,0 +1,10 @@ +spring: + datasource: + username: root + password: + url: jdbc:mysql://localhost:3306/hph + driver-class-name: com.mysql.cj.jdbc.Driver + jpa: + hibernate: + ddl-auto: create +# properties.hibernate.dialect: org.hibernate.dialect.MySQLDialect diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/db.migration/hph.sql b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/db.migration/hph.sql similarity index 100% rename from POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/db.migration/hph.sql rename to POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/db.migration/hph.sql diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/import.sql b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/import.sql new file mode 100644 index 0000000..1340478 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/application/src/main/resources/import.sql @@ -0,0 +1,13 @@ +INSERT INTO `hph`.`user` (`id`, `email`, `first_name`, `last_name`, `password`, `role`, `username`) VALUES (1, 'asd', 'asd@gmail.com', 'asd', 'asd', 'CUSTOMER', 'asd'); +INSERT INTO `hph`.`user` (`id`, `email`, `first_name`, `last_name`, `password`, `role`, `username`) VALUES (2, 'abc', 'abc@gmail.com', 'abc', 'abc', 'CUSTOMER', 'abc'); +INSERT INTO `hph`.`user` (`id`, `email`, `first_name`, `last_name`, `password`, `role`, `username`) VALUES (3, 'admin', 'admin@gmail.com', 'admin', 'admin', 'ADMIN', 'admin'); + +INSERT INTO `hph`.`airplane` (`id`, `available_seats`) VALUES (1, '5'); +INSERT INTO `hph`.`flight` (`id`,`from_city`, `sent_emails`, `time`, `to_city`, `airplane_id`, `seats_taken`, `all_emails_sent`) VALUES (1, 'Timisoara', '0', '2019-01-06 19:27:10', 'Bucuresti', '1', 0, true); +INSERT INTO `hph`.`flight` (`id`,`from_city`, `sent_emails`, `time`, `to_city`, `airplane_id`, `seats_taken`, `all_emails_sent`) VALUES (2, 'Bucuresti', '0', '2019-01-06 19:27:10', 'Timisoara', '1', 0, true); +INSERT INTO `hph`.`flight` (`id`,`from_city`, `sent_emails`, `time`, `to_city`, `airplane_id`, `seats_taken`, `all_emails_sent`) VALUES (3, 'Cluj Napoca', '0', '2019-01-06 19:27:10', 'Sibiu', '1', 0, true); +INSERT INTO `hph`.`flight` (`id`,`from_city`, `sent_emails`, `time`, `to_city`, `airplane_id`, `seats_taken`, `all_emails_sent`) VALUES (4, 'Sibiu', '0', '2019-01-06 19:27:10', 'Cluj Napoca', '1', 0, true); +INSERT INTO `hph`.`flight` (`id`,`from_city`, `sent_emails`, `time`, `to_city`, `airplane_id`, `seats_taken`, `all_emails_sent`) VALUES (5, 'Timisoara', '0', '2019-05-29 16:00:10', 'Prague', '1', 0, true); + +INSERT INTO `hph`.`booking` (`id`, `flight_id`, `user_id`) VALUES (1, 1, 1); +INSERT INTO `hph`.`booking` (`id`, `flight_id`, `user_id`) VALUES (2, 1, 2); \ No newline at end of file diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/.editorconfig b/POPESCU_ALEXANDRU/Proiect/Flights/client/.editorconfig new file mode 100644 index 0000000..6e87a00 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/.editorconfig @@ -0,0 +1,13 @@ +# Editor configuration, see http://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/.gitignore b/POPESCU_ALEXANDRU/Proiect/Flights/client/.gitignore new file mode 100644 index 0000000..ee5c9d8 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/.gitignore @@ -0,0 +1,39 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# compiled output +/dist +/tmp +/out-tsc + +# dependencies +/node_modules + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json + +# misc +/.sass-cache +/connect.lock +/coverage +/libpeerconnection.log +npm-debug.log +yarn-error.log +testem.log +/typings + +# System Files +.DS_Store +Thumbs.db diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/README.md b/POPESCU_ALEXANDRU/Proiect/Flights/client/README.md new file mode 100644 index 0000000..64c2d11 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/README.md @@ -0,0 +1,27 @@ +# Client + +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 6.2.3. + +## Development server + +Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. + +## Code scaffolding + +Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. + +## Build + +Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `--prod` flag for a production build. + +## Running unit tests + +Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). + +## Running end-to-end tests + +Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). + +## Further help + +To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/angular.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/angular.json new file mode 100644 index 0000000..c6c8629 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/angular.json @@ -0,0 +1,127 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "version": 1, + "newProjectRoot": "projects", + "projects": { + "client": { + "root": "", + "sourceRoot": "src", + "projectType": "application", + "prefix": "app", + "schematics": {}, + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist/client", + "index": "src/index.html", + "main": "src/main.ts", + "polyfills": "src/polyfills.ts", + "tsConfig": "src/tsconfig.app.json", + "assets": [ + "src/favicon.ico", + "src/assets" + ], + "styles": [ + "src/styles.css" + ], + "scripts": [] + }, + "configurations": { + "production": { + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.prod.ts" + } + ], + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "aot": true, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true + } + } + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "client:build" + }, + "configurations": { + "production": { + "browserTarget": "client:build:production" + } + } + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "client:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "src/test.ts", + "polyfills": "src/polyfills.ts", + "tsConfig": "src/tsconfig.spec.json", + "karmaConfig": "src/karma.conf.js", + "styles": [ + "src/styles.css" + ], + "scripts": [], + "assets": [ + "src/favicon.ico", + "src/assets" + ] + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "src/tsconfig.app.json", + "src/tsconfig.spec.json" + ], + "exclude": [ + "**/node_modules/**" + ] + } + } + } + }, + "client-e2e": { + "root": "e2e/", + "projectType": "application", + "architect": { + "e2e": { + "builder": "@angular-devkit/build-angular:protractor", + "options": { + "protractorConfig": "e2e/protractor.conf.js", + "devServerTarget": "client:serve" + }, + "configurations": { + "production": { + "devServerTarget": "client:serve:production" + } + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": "e2e/tsconfig.e2e.json", + "exclude": [ + "**/node_modules/**" + ] + } + } + } + } + }, + "defaultProject": "client" +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/protractor.conf.js b/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/protractor.conf.js new file mode 100644 index 0000000..86776a3 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/protractor.conf.js @@ -0,0 +1,28 @@ +// Protractor configuration file, see link for more information +// https://github.com/angular/protractor/blob/master/lib/config.ts + +const { SpecReporter } = require('jasmine-spec-reporter'); + +exports.config = { + allScriptsTimeout: 11000, + specs: [ + './src/**/*.e2e-spec.ts' + ], + capabilities: { + 'browserName': 'chrome' + }, + directConnect: true, + baseUrl: 'http://localhost:4200/', + framework: 'jasmine', + jasmineNodeOpts: { + showColors: true, + defaultTimeoutInterval: 30000, + print: function() {} + }, + onPrepare() { + require('ts-node').register({ + project: require('path').join(__dirname, './tsconfig.e2e.json') + }); + jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); + } +}; \ No newline at end of file diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/src/app.e2e-spec.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/src/app.e2e-spec.ts new file mode 100644 index 0000000..c54a666 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/src/app.e2e-spec.ts @@ -0,0 +1,14 @@ +import { AppPage } from './app.po'; + +describe('workspace-project App', () => { + let page: AppPage; + + beforeEach(() => { + page = new AppPage(); + }); + + it('should display welcome message', () => { + page.navigateTo(); + expect(page.getParagraphText()).toEqual('Welcome to client!'); + }); +}); diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/src/app.po.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/src/app.po.ts new file mode 100644 index 0000000..82ea75b --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/src/app.po.ts @@ -0,0 +1,11 @@ +import { browser, by, element } from 'protractor'; + +export class AppPage { + navigateTo() { + return browser.get('/'); + } + + getParagraphText() { + return element(by.css('app-root h1')).getText(); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/tsconfig.e2e.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/tsconfig.e2e.json new file mode 100644 index 0000000..a6dd622 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/e2e/tsconfig.e2e.json @@ -0,0 +1,13 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/app", + "module": "commonjs", + "target": "es5", + "types": [ + "jasmine", + "jasminewd2", + "node" + ] + } +} \ No newline at end of file diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/package-lock.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/package-lock.json new file mode 100644 index 0000000..39aace2 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/package-lock.json @@ -0,0 +1,10448 @@ +{ + "name": "client", + "version": "0.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@angular-devkit/architect": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.8.8.tgz", + "integrity": "sha512-tJEShCUGdNfCBtKhY1IFuE+BiHZLkC2yNlB//CXsvP74XQkKd7d6godF8VGKIZBd4hG6cVmJC/8nnP3aiTDUxQ==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.8.8", + "rxjs": "6.2.2" + } + }, + "@angular-devkit/build-angular": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.8.8.tgz", + "integrity": "sha512-sMOmGpgaTytC4l0d5lFOMgzNKshgbARoxwaGE0R0c6jPQe0aDW9EZG34j7X+3cQsKv6yNRZ8i9TKt5Sjx9XUdg==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.8.8", + "@angular-devkit/build-optimizer": "0.8.8", + "@angular-devkit/build-webpack": "0.8.8", + "@angular-devkit/core": "0.8.8", + "@ngtools/webpack": "6.2.8", + "ajv": "6.4.0", + "autoprefixer": "8.6.5", + "circular-dependency-plugin": "5.0.2", + "clean-css": "4.2.1", + "copy-webpack-plugin": "4.5.2", + "file-loader": "1.1.11", + "glob": "7.1.3", + "html-webpack-plugin": "3.2.0", + "istanbul": "0.4.5", + "istanbul-instrumenter-loader": "3.0.1", + "karma-source-map-support": "1.3.0", + "less": "3.8.1", + "less-loader": "4.1.0", + "license-webpack-plugin": "1.5.0", + "loader-utils": "1.1.0", + "mini-css-extract-plugin": "0.4.4", + "minimatch": "3.0.4", + "node-sass": "^4.9.3", + "opn": "5.4.0", + "parse5": "4.0.0", + "portfinder": "1.0.19", + "postcss": "6.0.23", + "postcss-import": "11.1.0", + "postcss-loader": "2.1.6", + "postcss-url": "7.3.2", + "raw-loader": "0.5.1", + "rxjs": "6.2.2", + "sass-loader": "7.1.0", + "semver": "5.6.0", + "source-map-loader": "0.2.4", + "source-map-support": "0.5.9", + "stats-webpack-plugin": "0.6.2", + "style-loader": "0.21.0", + "stylus": "0.54.5", + "stylus-loader": "3.0.2", + "tree-kill": "1.2.1", + "uglifyjs-webpack-plugin": "1.3.0", + "url-loader": "1.1.2", + "webpack": "4.16.4", + "webpack-dev-middleware": "3.4.0", + "webpack-dev-server": "3.1.10", + "webpack-merge": "4.1.4", + "webpack-sources": "1.3.0", + "webpack-subresource-integrity": "1.1.0-rc.4" + } + }, + "@angular-devkit/build-optimizer": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.8.8.tgz", + "integrity": "sha512-13NdIpyArS7Qym2CD0hAg6B5fuNiuicXWve97/V1VS8K7lgwZDpyrogM59yN19oBI/kerPXNiSJIhjpwF7Oeig==", + "dev": true, + "requires": { + "loader-utils": "1.1.0", + "source-map": "0.5.7", + "typescript": "2.9.2", + "webpack-sources": "1.3.0" + } + }, + "@angular-devkit/build-webpack": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.8.8.tgz", + "integrity": "sha512-ia/D1CqfG38zXuWlKAc5OSYlCMHVfR180QrWSs2iN5MRX4ctazDs6TsgdB+CcFmP39l9NAUIlRNtCoG7v7iMkA==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.8.8", + "@angular-devkit/core": "0.8.8", + "rxjs": "6.2.2" + } + }, + "@angular-devkit/core": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.8.8.tgz", + "integrity": "sha512-FDt+ZrKT/pAR74YnbZJQ5Nza+1b5PxGjgvbUtyX63VNxgETTjPa7Oe9Hc6jqW0CekTxHzAFJn79VPRUwKQIocg==", + "dev": true, + "requires": { + "ajv": "6.4.0", + "chokidar": "2.0.4", + "rxjs": "6.2.2", + "source-map": "0.5.7" + } + }, + "@angular-devkit/schematics": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-0.8.8.tgz", + "integrity": "sha512-MXdjdG9KENur1Pu9etAfO5rbO0T5bk5tFWlCxdPr34a/EDy1rkz5taReTSV1Fc5ERWx3Brubws0EB2NrgPkRcw==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.8.8", + "rxjs": "6.2.2" + } + }, + "@angular/animations": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-6.1.10.tgz", + "integrity": "sha512-dd/lq7kw3uwfHPICan8psu2nthuUpp7PvMLuNIm0XxObZ4oNs0ls6uxKEDPnEkRKoGdiJpvmsyzZZN9ACMPEAA==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@angular/cli": { + "version": "6.2.8", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-6.2.8.tgz", + "integrity": "sha512-fKaagJJc9xykkj+vQNQy2hn5vvcZaskkvAwNW7FthW28CGb+h19uf6RHsRWpmKvuC5qTxSJQD+OCbIFG8aXADw==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.8.8", + "@angular-devkit/core": "0.8.8", + "@angular-devkit/schematics": "0.8.8", + "@schematics/angular": "0.8.8", + "@schematics/update": "0.8.8", + "json-schema-traverse": "0.4.1", + "opn": "5.4.0", + "rxjs": "6.2.2", + "semver": "5.6.0", + "symbol-observable": "1.2.0", + "yargs-parser": "10.1.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "@angular/common": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-6.1.10.tgz", + "integrity": "sha512-73xxTSYJNKfiJ7C1Ajg+sz5l8y+blb/vNgHYg7O3yem5zLBnfPpidJ1UGg4W4d2Y+jwUVJbZKh8SKJarqAJVUQ==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@angular/compiler": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-6.1.10.tgz", + "integrity": "sha512-FPIb2j3zfoBwb6vo/u0gQeu70h8InGlSisBr3xMACs/35/pwB6kbQR+JQiUr0D7k6QApg7AuMkvq8aFNelg0aw==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@angular/compiler-cli": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-6.1.10.tgz", + "integrity": "sha512-GCWdyeNQSnF4RfzO4A0+WHsNEgxKpl5arg4ldLSWMNkj/DrhMD4TnmxhR+IVY+7ieMkUBwpcuWRnjdOdnbmV+w==", + "dev": true, + "requires": { + "chokidar": "^1.4.2", + "minimist": "^1.2.0", + "reflect-metadata": "^0.1.2", + "tsickle": "^0.32.1" + }, + "dependencies": { + "anymatch": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", + "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "dev": true, + "requires": { + "micromatch": "^2.1.5", + "normalize-path": "^2.0.0" + } + }, + "arr-diff": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", + "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1" + } + }, + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "1.8.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", + "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, + "requires": { + "expand-range": "^1.8.1", + "preserve": "^0.2.0", + "repeat-element": "^1.1.2" + } + }, + "chokidar": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", + "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "dev": true, + "requires": { + "anymatch": "^1.3.0", + "async-each": "^1.0.0", + "fsevents": "^1.0.0", + "glob-parent": "^2.0.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^2.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0" + } + }, + "expand-brackets": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", + "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, + "requires": { + "is-posix-bracket": "^0.1.0" + } + }, + "extglob": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", + "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + }, + "micromatch": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", + "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, + "requires": { + "arr-diff": "^2.0.0", + "array-unique": "^0.2.1", + "braces": "^1.8.2", + "expand-brackets": "^0.1.4", + "extglob": "^0.3.1", + "filename-regex": "^2.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.1", + "kind-of": "^3.0.2", + "normalize-path": "^2.0.1", + "object.omit": "^2.0.0", + "parse-glob": "^3.0.4", + "regex-cache": "^0.4.2" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "@angular/core": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-6.1.10.tgz", + "integrity": "sha512-61l3rIQTVdT45eOf6/fBJIeVmV10mcrxqS4N/1OWkuDT29YSJTZSxGcv8QjAyyutuhcqWWpO6gVRkN07rWmkPg==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@angular/forms": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-6.1.10.tgz", + "integrity": "sha512-zAPx2kMV1/FbP5DrY472Sd/ze1m+GS6T5ullZCtP392r62p2RkwzDCXieR51YiRJjZj3M6c3AcRND7PWBdXT7A==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@angular/http": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/http/-/http-6.1.10.tgz", + "integrity": "sha512-LDsSqyexh8fj23y+G2oSGLWSZVhbxBBo2ehYHnRgH/jlp0pmZVLRaGgUMNSCVtZc1rxLzpEjZjtw+P+qlutAtw==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@angular/language-service": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-6.1.10.tgz", + "integrity": "sha512-nN29Ovomg21eL8acwOSUFAYwWFI1TuFwUgUu37ZssfVQrYdaV+BFx3yv3P0nKU90h3Hp+oIkWHd8U34UYrvBCg==", + "dev": true + }, + "@angular/platform-browser": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-6.1.10.tgz", + "integrity": "sha512-CB7pqMwtgb7KjdHDAJlsXcs0rrU+2xQVaoOaqEfJtUrKhtGMLaZh8Qoic5l92SoGattkOw7SYarAOsWlAsVfvw==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@angular/platform-browser-dynamic": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-6.1.10.tgz", + "integrity": "sha512-DmBSUyFPoyKqkmBXyJ2CrP1oXDioeoBlPA8lmWUDUv2yBuoHIzIkdY/OkTZbdyu/QYa1hK2Jl9OlfoeoenKddg==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@angular/router": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-6.1.10.tgz", + "integrity": "sha512-tekI3dkdvd65oMoxjjgRA+16uDgPUBWHhYxids6pgO8vobZNtCo8VaVlcDyLUhdmtS5kONELx0iL5E2M0Y2Bag==", + "requires": { + "tslib": "^1.9.0" + } + }, + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/generator": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.2.2.tgz", + "integrity": "sha512-I4o675J/iS8k+P38dvJ3IBGqObLXyQLTxtrR4u9cSUJOURvafeEWb/pFMOTwtNrmq73mJzyF6ueTbO1BtN0Zeg==", + "dev": true, + "requires": { + "@babel/types": "^7.2.2", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", + "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } + } + }, + "@babel/parser": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.2.3.tgz", + "integrity": "sha512-0LyEcVlfCoFmci8mXx8A5oIkpkOgyo8dRHtxBnK9RRBwxO2+JZPNsqtVEZQ7mJFPxnXF9lfmU24mHOPI0qnlkA==", + "dev": true + }, + "@babel/template": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.2.2.tgz", + "integrity": "sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.2.2", + "@babel/types": "^7.2.2" + } + }, + "@babel/traverse": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.2.3.tgz", + "integrity": "sha512-Z31oUD/fJvEWVR0lNZtfgvVt512ForCTNKYcJBGbPb1QZfve4WGH8Wsy7+Mev33/45fhP/hwQtvgusNdcCMgSw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.2.2", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.2.3", + "@babel/types": "^7.2.2", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", + "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.2.2.tgz", + "integrity": "sha512-fKCuD6UFUMkR541eDWL+2ih/xFZBXPOg/7EQFeTluMDebfqR4jrpaCjLhkWlQS4hT6nRa2PMEgXKbRB5/H2fpg==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, + "@ngtools/webpack": { + "version": "6.2.8", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-6.2.8.tgz", + "integrity": "sha512-oc/kB4UhnBA75A8mgKx9fC52kM7oI8J9Sz7CIkY3wY1vQVyDlAjAq3etlgEWHfSRzLzC+C4Se8xjoaxEwuo0Kw==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.8.8", + "rxjs": "6.2.2", + "tree-kill": "1.2.1", + "webpack-sources": "1.3.0" + } + }, + "@schematics/angular": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-0.8.8.tgz", + "integrity": "sha512-9Br6gX6iZ4JRIVE4fN+Glt1KaiXxmPMBwhXWCjGJ1HFe2k3iG/6ejFtHfrSr5NIZqji/wiWS0SARCJDngq0dyQ==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.8.8", + "@angular-devkit/schematics": "0.8.8", + "typescript": ">=2.6.2 <2.10" + } + }, + "@schematics/update": { + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.8.8.tgz", + "integrity": "sha512-Ir0DmhIRheTIohpPqOZ+90y80hkz/pHJwWvi+iTiVQFmenCN/vuNtZWwxsj6WqOA+POwWlIxqdVsOsqvgWZV0A==", + "dev": true, + "requires": { + "@angular-devkit/core": "0.8.8", + "@angular-devkit/schematics": "0.8.8", + "npm-registry-client": "8.6.0", + "rxjs": "6.2.2", + "semver": "5.6.0", + "semver-intersect": "1.4.0" + } + }, + "@types/jasmine": { + "version": "2.8.14", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.14.tgz", + "integrity": "sha512-oHgE8xWsIoJfP0qU/yi5xrzhkHvYJhD7m40pSC3pw4+BUKWFwqTz+BUosuuODh8KyRpLp1Fdaibr3If4cgNsCg==", + "dev": true + }, + "@types/jasminewd2": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.6.tgz", + "integrity": "sha512-2ZOKrxb8bKRmP/po5ObYnRDgFE4i+lQiEB27bAMmtMWLgJSqlIDqlLx6S0IRorpOmOPRQ6O80NujTmQAtBkeNw==", + "dev": true, + "requires": { + "@types/jasmine": "*" + } + }, + "@types/node": { + "version": "8.9.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.9.5.tgz", + "integrity": "sha512-jRHfWsvyMtXdbhnz5CVHxaBgnV6duZnPlQuRSo/dm/GnmikNcmZhxIES4E9OZjUmQ8C+HCl4KJux+cXN/ErGDQ==", + "dev": true + }, + "@types/q": { + "version": "0.0.32", + "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz", + "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=", + "dev": true + }, + "@types/selenium-webdriver": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.14.tgz", + "integrity": "sha512-4GbNCDs98uHCT/OMv40qQC/OpoPbYn9XdXeTiFwHBBFO6eJhYEPUu2zDKirXSbHlvDV8oZ9l8EQ+HrEx/YS9DQ==", + "dev": true + }, + "@webassemblyjs/ast": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.5.13.tgz", + "integrity": "sha512-49nwvW/Hx9i+OYHg+mRhKZfAlqThr11Dqz8TsrvqGKMhdI2ijy3KBJOun2Z4770TPjrIJhR6KxChQIDaz8clDA==", + "dev": true, + "requires": { + "@webassemblyjs/helper-module-context": "1.5.13", + "@webassemblyjs/helper-wasm-bytecode": "1.5.13", + "@webassemblyjs/wast-parser": "1.5.13", + "debug": "^3.1.0", + "mamacro": "^0.0.3" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.5.13.tgz", + "integrity": "sha512-vrvvB18Kh4uyghSKb0NTv+2WZx871WL2NzwMj61jcq2bXkyhRC+8Q0oD7JGVf0+5i/fKQYQSBCNMMsDMRVAMqA==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.5.13.tgz", + "integrity": "sha512-dBh2CWYqjaDlvMmRP/kudxpdh30uXjIbpkLj9HQe+qtYlwvYjPRjdQXrq1cTAAOUSMTtzqbXIxEdEZmyKfcwsg==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.5.13.tgz", + "integrity": "sha512-v7igWf1mHcpJNbn4m7e77XOAWXCDT76Xe7Is1VQFXc4K5jRcFrl9D0NrqM4XifQ0bXiuTSkTKMYqDxu5MhNljA==", + "dev": true, + "requires": { + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.5.13.tgz", + "integrity": "sha512-yN6ScQQDFCiAXnVctdVO/J5NQRbwyTbQzsGzEgXsAnrxhjp0xihh+nNHQTMrq5UhOqTb5LykpJAvEv9AT0jnAQ==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.5.13" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.5.13.tgz", + "integrity": "sha512-hSIKzbXjVMRvy3Jzhgu+vDd/aswJ+UMEnLRCkZDdknZO3Z9e6rp1DAs0tdLItjCFqkz9+0BeOPK/mk3eYvVzZg==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.5.13.tgz", + "integrity": "sha512-zxJXULGPLB7r+k+wIlvGlXpT4CYppRz8fLUM/xobGHc9Z3T6qlmJD9ySJ2jknuktuuiR9AjnNpKYDECyaiX+QQ==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "mamacro": "^0.0.3" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.5.13.tgz", + "integrity": "sha512-0n3SoNGLvbJIZPhtMFq0XmmnA/YmQBXaZKQZcW8maGKwLpVcgjNrxpFZHEOLKjXJYVN5Il8vSfG7nRX50Zn+aw==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.5.13.tgz", + "integrity": "sha512-IJ/goicOZ5TT1axZFSnlAtz4m8KEjYr12BNOANAwGFPKXM4byEDaMNXYowHMG0yKV9a397eU/NlibFaLwr1fbw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.13", + "@webassemblyjs/helper-buffer": "1.5.13", + "@webassemblyjs/helper-wasm-bytecode": "1.5.13", + "@webassemblyjs/wasm-gen": "1.5.13", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/ieee754": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.5.13.tgz", + "integrity": "sha512-TseswvXEPpG5TCBKoLx9tT7+/GMACjC1ruo09j46ULRZWYm8XHpDWaosOjTnI7kr4SRJFzA6MWoUkAB+YCGKKg==", + "dev": true, + "requires": { + "ieee754": "^1.1.11" + } + }, + "@webassemblyjs/leb128": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.5.13.tgz", + "integrity": "sha512-0NRMxrL+GG3eISGZBmLBLAVjphbN8Si15s7jzThaw1UE9e5BY1oH49/+MA1xBzxpf1OW5sf9OrPDOclk9wj2yg==", + "dev": true, + "requires": { + "long": "4.0.0" + }, + "dependencies": { + "long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", + "dev": true + } + } + }, + "@webassemblyjs/utf8": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.5.13.tgz", + "integrity": "sha512-Ve1ilU2N48Ew0lVGB8FqY7V7hXjaC4+PeZM+vDYxEd+R2iQ0q+Wb3Rw8v0Ri0+rxhoz6gVGsnQNb4FjRiEH/Ng==", + "dev": true + }, + "@webassemblyjs/wasm-edit": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.5.13.tgz", + "integrity": "sha512-X7ZNW4+Hga4f2NmqENnHke2V/mGYK/xnybJSIXImt1ulxbCOEs/A+ZK/Km2jgihjyVxp/0z0hwIcxC6PrkWtgw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.13", + "@webassemblyjs/helper-buffer": "1.5.13", + "@webassemblyjs/helper-wasm-bytecode": "1.5.13", + "@webassemblyjs/helper-wasm-section": "1.5.13", + "@webassemblyjs/wasm-gen": "1.5.13", + "@webassemblyjs/wasm-opt": "1.5.13", + "@webassemblyjs/wasm-parser": "1.5.13", + "@webassemblyjs/wast-printer": "1.5.13", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.5.13.tgz", + "integrity": "sha512-yfv94Se8R73zmr8GAYzezFHc3lDwE/lBXQddSiIZEKZFuqy7yWtm3KMwA1uGbv5G1WphimJxboXHR80IgX1hQA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.13", + "@webassemblyjs/helper-wasm-bytecode": "1.5.13", + "@webassemblyjs/ieee754": "1.5.13", + "@webassemblyjs/leb128": "1.5.13", + "@webassemblyjs/utf8": "1.5.13" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.5.13.tgz", + "integrity": "sha512-IkXSkgzVhQ0QYAdIayuCWMmXSYx0dHGU8Ah/AxJf1gBvstMWVnzJnBwLsXLyD87VSBIcsqkmZ28dVb0mOC3oBg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.13", + "@webassemblyjs/helper-buffer": "1.5.13", + "@webassemblyjs/wasm-gen": "1.5.13", + "@webassemblyjs/wasm-parser": "1.5.13", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.5.13.tgz", + "integrity": "sha512-XnYoIcu2iqq8/LrtmdnN3T+bRjqYFjRHqWbqK3osD/0r/Fcv4d9ecRzjVtC29ENEuNTK4mQ9yyxCBCbK8S/cpg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.13", + "@webassemblyjs/helper-api-error": "1.5.13", + "@webassemblyjs/helper-wasm-bytecode": "1.5.13", + "@webassemblyjs/ieee754": "1.5.13", + "@webassemblyjs/leb128": "1.5.13", + "@webassemblyjs/utf8": "1.5.13" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.5.13.tgz", + "integrity": "sha512-Lbz65T0LQ1LgzKiUytl34CwuhMNhaCLgrh0JW4rJBN6INnBB8NMwUfQM+FxTnLY9qJ+lHJL/gCM5xYhB9oWi4A==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.13", + "@webassemblyjs/floating-point-hex-parser": "1.5.13", + "@webassemblyjs/helper-api-error": "1.5.13", + "@webassemblyjs/helper-code-frame": "1.5.13", + "@webassemblyjs/helper-fsm": "1.5.13", + "long": "^3.2.0", + "mamacro": "^0.0.3" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.5.13", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.5.13.tgz", + "integrity": "sha512-QcwogrdqcBh8Z+eUF8SG+ag5iwQSXxQJELBEHmLkk790wgQgnIMmntT2sMAMw53GiFNckArf5X0bsCA44j3lWQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.13", + "@webassemblyjs/wast-parser": "1.5.13", + "long": "^3.2.0" + } + }, + "abbrev": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", + "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", + "dev": true + }, + "accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, + "requires": { + "mime-types": "~2.1.18", + "negotiator": "0.6.1" + } + }, + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-dynamic-import": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", + "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", + "dev": true, + "requires": { + "acorn": "^5.0.0" + } + }, + "adm-zip": { + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.13.tgz", + "integrity": "sha512-fERNJX8sOXfel6qCBCMPvZLzENBEhZTzKqg6vrOW5pvoEaQuJhRU4ndTAh6lHOxn1I6jnz2NHra56ZODM751uw==", + "dev": true + }, + "after": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", + "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", + "dev": true + }, + "agent-base": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", + "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "dev": true, + "requires": { + "es6-promisify": "^5.0.0" + } + }, + "ajv": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", + "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "dev": true, + "requires": { + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0", + "uri-js": "^3.0.2" + } + }, + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", + "dev": true + }, + "ajv-keywords": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", + "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", + "dev": true + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi-colors": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", + "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", + "dev": true + }, + "ansi-html": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "app-root-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.1.0.tgz", + "integrity": "sha1-mL9lmTJ+zqGZMJhm6BQDaP0uZGo=", + "dev": true + }, + "append-transform": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-1.0.0.tgz", + "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", + "dev": true, + "requires": { + "default-require-extensions": "^2.0.0" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true, + "optional": true + }, + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", + "dev": true + }, + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "arraybuffer.slice": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", + "dev": true + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", + "dev": true, + "optional": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "dev": true, + "requires": { + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "async-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", + "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", + "dev": true + }, + "async-foreach": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", + "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", + "dev": true, + "optional": true + }, + "async-limiter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", + "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "autoprefixer": { + "version": "8.6.5", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-8.6.5.tgz", + "integrity": "sha512-PLWJN3Xo/rycNkx+mp8iBDMTm3FeWe4VmYaZDSqL5QQB9sLsQkG5k8n+LNDFnhh9kdq2K+egL/icpctOmDHwig==", + "dev": true, + "requires": { + "browserslist": "^3.2.8", + "caniuse-lite": "^1.0.30000864", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^6.0.23", + "postcss-value-parser": "^3.2.3" + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "babel-generator": { + "version": "6.26.1", + "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", + "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "dev": true, + "requires": { + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" + } + }, + "babel-messages": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", + "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "dev": true, + "requires": { + "babel-runtime": "^6.22.0" + } + }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + } + }, + "babel-template": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", + "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" + } + }, + "babel-traverse": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", + "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "dev": true, + "requires": { + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" + } + }, + "babel-types": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", + "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "dev": true, + "requires": { + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" + } + }, + "babylon": { + "version": "6.18.0", + "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", + "dev": true + }, + "backo2": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", + "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "base64-arraybuffer": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz", + "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=", + "dev": true + }, + "base64-js": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", + "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", + "dev": true + }, + "base64id": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz", + "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=", + "dev": true + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "better-assert": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz", + "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=", + "dev": true, + "requires": { + "callsite": "1.0.0" + } + }, + "big.js": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", + "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", + "dev": true + }, + "binary-extensions": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz", + "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==", + "dev": true + }, + "blob": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", + "dev": true + }, + "block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "dev": true, + "optional": true, + "requires": { + "inherits": "~2.0.0" + } + }, + "blocking-proxy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/blocking-proxy/-/blocking-proxy-1.0.1.tgz", + "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "bluebird": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", + "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==", + "dev": true + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, + "body-parser": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" + } + }, + "bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "requires": { + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "3.2.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", + "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30000844", + "electron-to-chromium": "^1.3.47" + } + }, + "browserstack": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.5.1.tgz", + "integrity": "sha512-O8VMT64P9NOLhuIoD4YngyxBURefaSdR4QdhG8l6HZ9VxtU7jc3m6jLufFwKA5gaf7fetfB2TnRJnMxyob+heg==", + "dev": true, + "requires": { + "https-proxy-agent": "^2.2.1" + } + }, + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "buffer-indexof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "builtins": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", + "integrity": "sha1-y5T662HIaWRR2zZTThQi+U8K7og=", + "dev": true + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true + }, + "cacache": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "callsite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", + "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", + "dev": true + }, + "camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, + "requires": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true, + "optional": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "caniuse-lite": { + "version": "1.0.30000927", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000927.tgz", + "integrity": "sha512-ogq4NbUWf1uG/j66k0AmiO3GjqJAlQyF8n4w8a954cbCyFKmYGvRtgz6qkq2fWuduTXHibX7GyYL5Pg58Aks2g==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chokidar": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", + "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.0", + "braces": "^2.3.0", + "fsevents": "^1.2.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "lodash.debounce": "^4.0.8", + "normalize-path": "^2.1.1", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0", + "upath": "^1.0.5" + } + }, + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true + }, + "chrome-trace-event": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz", + "integrity": "sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "circular-dependency-plugin": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.0.2.tgz", + "integrity": "sha512-oC7/DVAyfcY3UWKm0sN/oVoDedQDQiw/vIiAnuTWTpE5s0zWf7l3WY417Xw/Fbi/QbAjctAkxgMiS9P0s3zkmA==", + "dev": true + }, + "circular-json": { + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.9.tgz", + "integrity": "sha512-4ivwqHpIFJZBuhN3g/pEcdbnGUywkBblloGbkglyloVjjR3uT6tieI89MVOfbP2tHX5sgb01FuLgAOzebNlJNQ==", + "dev": true + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "clean-css": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", + "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, + "clone-deep": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz", + "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.0", + "shallow-clone": "^1.0.0" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "codelyzer": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-4.3.0.tgz", + "integrity": "sha512-RLMrtLwrBS0dfo2/KTP+2NHofCpzcuh0bEp/A/naqvQonbUL4AW/qWQdbpn8dMNudtpmzEx9eS8KEpGdVPg1BA==", + "dev": true, + "requires": { + "app-root-path": "^2.0.1", + "css-selector-tokenizer": "^0.7.0", + "cssauron": "^1.4.0", + "semver-dsl": "^1.0.1", + "source-map": "^0.5.7", + "sprintf-js": "^1.0.3" + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", + "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "dev": true + }, + "combine-lists": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz", + "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=", + "dev": true, + "requires": { + "lodash": "^4.5.0" + } + }, + "combined-stream": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", + "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "compare-versions": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.4.0.tgz", + "integrity": "sha512-tK69D7oNXXqUW3ZNo/z7NXTEz22TCF0pTE+YF9cxvaAM9XnkLo1fV621xCLrRR6aevJlKxExkss0vWqUCUpqdg==", + "dev": true + }, + "component-bind": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", + "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", + "dev": true + }, + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "component-inherit": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", + "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", + "dev": true + }, + "compressible": { + "version": "2.0.15", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.15.tgz", + "integrity": "sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw==", + "dev": true, + "requires": { + "mime-db": ">= 1.36.0 < 2" + } + }, + "compression": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", + "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.14", + "debug": "2.6.9", + "on-headers": "~1.0.1", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "connect": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", + "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", + "dev": true, + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.0", + "parseurl": "~1.3.2", + "utils-merge": "1.0.1" + }, + "dependencies": { + "finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.3.1", + "unpipe": "~1.0.0" + } + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", + "dev": true + } + } + }, + "connect-history-api-fallback": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", + "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=", + "dev": true + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "^0.1.4" + } + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", + "dev": true + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", + "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "copy-webpack-plugin": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.5.2.tgz", + "integrity": "sha512-zmC33E8FFSq3AbflTvqvPvBo621H36Afsxlui91d+QyZxPIuXghfnTsa1CuqiAaCPgJoSUWfTFbKJnadZpKEbQ==", + "dev": true, + "requires": { + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "globby": "^7.1.1", + "is-glob": "^4.0.0", + "loader-utils": "^1.1.0", + "minimatch": "^3.0.4", + "p-limit": "^1.0.0", + "serialize-javascript": "^1.4.0" + } + }, + "core-js": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.1.tgz", + "integrity": "sha512-L72mmmEayPJBejKIWe2pYtGis5r0tQ5NaJekdhyXgeMQTpJoBsH0NL4ElY2LfSoV15xeQWKQ+XTTOZdyero5Xg==" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cosmiconfig": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz", + "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", + "dev": true, + "requires": { + "is-directory": "^0.3.1", + "js-yaml": "^3.9.0", + "parse-json": "^4.0.0", + "require-from-string": "^2.0.1" + }, + "dependencies": { + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + } + } + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "dev": true, + "optional": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "css-parse": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", + "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", + "dev": true + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-selector-tokenizer": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", + "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", + "dev": true, + "requires": { + "cssesc": "^0.1.0", + "fastparse": "^1.1.1", + "regexpu-core": "^1.0.0" + } + }, + "css-what": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.2.tgz", + "integrity": "sha512-wan8dMWQ0GUeF7DGEPVjhHemVW/vy6xUYmFzRY8RYqgA0JtXC9rJmbScBjqSu6dg9q0lwPQy6ZAmJVr3PPTvqQ==", + "dev": true + }, + "cssauron": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", + "integrity": "sha1-pmAt/34EqDBtwNuaVR6S6LVmKtg=", + "dev": true, + "requires": { + "through": "X.X.X" + } + }, + "cssesc": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", + "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", + "dev": true + }, + "cuint": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", + "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", + "dev": true + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "optional": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "custom-event": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz", + "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=", + "dev": true + }, + "cyclist": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", + "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "date-format": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz", + "integrity": "sha1-YV6CjiM90aubua4JUODOzPpuytg=", + "dev": true + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "default-gateway": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-2.7.2.tgz", + "integrity": "sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ==", + "dev": true, + "requires": { + "execa": "^0.10.0", + "ip-regex": "^2.1.0" + } + }, + "default-require-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", + "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", + "dev": true, + "requires": { + "strip-bom": "^3.0.0" + }, + "dependencies": { + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + } + } + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "del": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", + "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", + "dev": true, + "requires": { + "globby": "^6.1.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "p-map": "^1.1.1", + "pify": "^3.0.0", + "rimraf": "^2.2.8" + }, + "dependencies": { + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-indent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", + "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "detect-node": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", + "dev": true + }, + "di": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz", + "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=", + "dev": true + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + } + }, + "dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", + "dev": true + }, + "dns-packet": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", + "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", + "dev": true, + "requires": { + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, + "dns-txt": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", + "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", + "dev": true, + "requires": { + "buffer-indexof": "^1.0.0" + } + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dev": true, + "requires": { + "utila": "~0.4" + } + }, + "dom-serialize": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz", + "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", + "dev": true, + "requires": { + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" + } + }, + "dom-serializer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", + "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", + "dev": true, + "requires": { + "domelementtype": "~1.1.1", + "entities": "~1.1.1" + }, + "dependencies": { + "domelementtype": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", + "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", + "dev": true + } + } + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domhandler": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz", + "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "duplexify": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.1.tgz", + "integrity": "sha512-vM58DwdnKmty+FSPzT14K9JXb90H+j5emaR4KYbr2KTIz00WHGbWOe5ghQTx233ZCLZtrGDALzKwcjEtSt35mA==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "ejs": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz", + "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.98", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.98.tgz", + "integrity": "sha512-WIZdNuvE3dFr6kkPgv4d/cfswNZD6XbeLBM8baOIQTsnbf4xWrVEaLvp7oNnbnMWWXDqq7Tbv+H5JfciLTJm4Q==", + "dev": true + }, + "elliptic": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "engine.io": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz", + "integrity": "sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "base64id": "1.0.0", + "cookie": "0.3.1", + "debug": "~3.1.0", + "engine.io-parser": "~2.1.0", + "ws": "~3.3.1" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "engine.io-client": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", + "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", + "dev": true, + "requires": { + "component-emitter": "1.2.1", + "component-inherit": "0.0.3", + "debug": "~3.1.0", + "engine.io-parser": "~2.1.1", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "ws": "~3.3.1", + "xmlhttprequest-ssl": "~1.5.4", + "yeast": "0.1.2" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "engine.io-parser": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz", + "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==", + "dev": true, + "requires": { + "after": "0.8.2", + "arraybuffer.slice": "~0.0.7", + "base64-arraybuffer": "0.1.5", + "blob": "0.0.5", + "has-binary2": "~1.0.2" + } + }, + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" + } + }, + "ent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz", + "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", + "dev": true + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", + "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-keys": "^1.0.12" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es6-promise": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.5.tgz", + "integrity": "sha512-n6wvpdE43VFtJq+lUDYDBFUwV8TZbuGXLV4D6wKafg13ldznKsyEvatubnmUe31zcvelSzOHF+XbaT+Bl9ObDg==", + "dev": true + }, + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dev": true, + "requires": { + "es6-promise": "^4.0.3" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", + "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", + "dev": true, + "requires": { + "esprima": "^2.7.1", + "estraverse": "^1.9.1", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.2.0" + }, + "dependencies": { + "source-map": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", + "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", + "dev": true, + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "eslint-scope": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", + "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + } + } + }, + "esprima": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", + "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "dev": true + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + }, + "dependencies": { + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", + "dev": true + } + } + }, + "estraverse": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", + "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "eventemitter3": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", + "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==", + "dev": true + }, + "events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", + "dev": true + }, + "eventsource": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", + "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", + "dev": true, + "requires": { + "original": "^1.0.0" + } + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "expand-braces": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz", + "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=", + "dev": true, + "requires": { + "array-slice": "^0.2.3", + "array-unique": "^0.2.1", + "braces": "^0.1.2" + }, + "dependencies": { + "array-unique": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true + }, + "braces": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz", + "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=", + "dev": true, + "requires": { + "expand-range": "^0.1.0" + } + }, + "expand-range": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz", + "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=", + "dev": true, + "requires": { + "is-number": "^0.1.1", + "repeat-string": "^0.2.2" + } + }, + "is-number": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz", + "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=", + "dev": true + }, + "repeat-string": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz", + "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=", + "dev": true + } + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-range": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", + "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, + "requires": { + "fill-range": "^2.1.0" + }, + "dependencies": { + "fill-range": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, + "requires": { + "is-number": "^2.1.0", + "isobject": "^2.0.0", + "randomatic": "^3.0.0", + "repeat-element": "^1.1.2", + "repeat-string": "^1.5.2" + } + }, + "is-number": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", + "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + } + }, + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "express": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", + "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", + "dev": true, + "requires": { + "accepts": "~1.3.5", + "array-flatten": "1.1.1", + "body-parser": "1.18.3", + "content-disposition": "0.5.2", + "content-type": "~1.0.4", + "cookie": "0.3.1", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.1.1", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.4", + "qs": "6.5.2", + "range-parser": "~1.2.0", + "safe-buffer": "5.1.2", + "send": "0.16.2", + "serve-static": "1.13.2", + "setprototypeof": "1.1.0", + "statuses": "~1.4.0", + "type-is": "~1.6.16", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", + "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fastparse": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", + "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", + "dev": true + }, + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "file-loader": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", + "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", + "dev": true, + "requires": { + "loader-utils": "^1.0.2", + "schema-utils": "^0.4.5" + } + }, + "filename-regex": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true + }, + "fileset": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", + "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", + "dev": true, + "requires": { + "glob": "^7.0.3", + "minimatch": "^3.0.3" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "finalhandler": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", + "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.4.0", + "unpipe": "~1.0.0" + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "flush-write-stream": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", + "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.4" + } + }, + "follow-redirects": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.6.1.tgz", + "integrity": "sha512-t2JCjbzxQpWvbhts3l6SH1DKzSrx8a+SsaVf4h6bG4kOXUuPYS/kg2Lr4gQSb7eemaHqJkOThF1BGyjlUkO1GQ==", + "dev": true, + "requires": { + "debug": "=3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "fs-access": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", + "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", + "dev": true, + "requires": { + "null-check": "^1.0.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.4.tgz", + "integrity": "sha512-z8H8/diyk76B7q5wg+Ud0+CqzcAF3mBBI/bA5ne5zrRUUIvNkJY//D3BqyH571KuAC4Nr7Rw7CjWX4r0y9DvNg==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.21", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": "^2.1.0" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.2.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.10.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.1.10", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.7", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.0.5" + } + }, + "safe-buffer": { + "version": "5.1.1", + "bundled": true, + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.5.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "3.0.2", + "bundled": true, + "dev": true + } + } + }, + "fstream": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", + "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "optional": true, + "requires": { + "globule": "^1.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-base": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", + "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, + "requires": { + "glob-parent": "^2.0.0", + "is-glob": "^2.0.0" + }, + "dependencies": { + "glob-parent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", + "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, + "requires": { + "is-glob": "^2.0.0" + } + }, + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + } + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz", + "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + } + }, + "globule": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", + "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", + "dev": true, + "optional": true, + "requires": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", + "dev": true + }, + "handle-thing": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz", + "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=", + "dev": true + }, + "handlebars": { + "version": "4.0.12", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.12.tgz", + "integrity": "sha512-RhmTekP+FZL+XNhwS1Wf+bTTZpdLougwt5pcgA1tuz6Jcx0fpH/7z0qd71RKnZHBCxIRBHfBOnio4gViPemNzA==", + "dev": true, + "requires": { + "async": "^2.5.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + }, + "dependencies": { + "ajv": { + "version": "6.6.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.2.tgz", + "integrity": "sha512-FBHEW6Jf5TB9MGBgUUA9XHkTbjXYfAUjY43ACMfmdMRHniyoMHjHjzD50OK8LGDWQwp4rWEsIq5kEqq7rvIM1g==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + } + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-binary2": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", + "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", + "dev": true, + "requires": { + "isarray": "2.0.1" + }, + "dependencies": { + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true + } + } + }, + "has-cors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", + "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "dev": true + }, + "hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "html-entities": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", + "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", + "dev": true + }, + "html-minifier": { + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", + "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", + "dev": true, + "requires": { + "camel-case": "3.0.x", + "clean-css": "4.2.x", + "commander": "2.17.x", + "he": "1.2.x", + "param-case": "2.1.x", + "relateurl": "0.2.x", + "uglify-js": "3.4.x" + } + }, + "html-webpack-plugin": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", + "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", + "dev": true, + "requires": { + "html-minifier": "^3.2.3", + "loader-utils": "^0.2.16", + "lodash": "^4.17.3", + "pretty-error": "^2.0.2", + "tapable": "^1.0.0", + "toposort": "^1.0.0", + "util.promisify": "1.0.0" + }, + "dependencies": { + "loader-utils": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", + "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", + "dev": true, + "requires": { + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0", + "object-assign": "^4.0.1" + } + } + } + }, + "htmlparser2": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", + "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", + "dev": true, + "requires": { + "domelementtype": "1", + "domhandler": "2.1", + "domutils": "1.1", + "readable-stream": "1.0" + }, + "dependencies": { + "domutils": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz", + "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", + "dev": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "http-parser-js": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.0.tgz", + "integrity": "sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==", + "dev": true + }, + "http-proxy": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", + "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", + "dev": true, + "requires": { + "eventemitter3": "^3.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "http-proxy-middleware": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz", + "integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==", + "dev": true, + "requires": { + "http-proxy": "^1.16.2", + "is-glob": "^4.0.0", + "lodash": "^4.17.5", + "micromatch": "^3.1.9" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "https-proxy-agent": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", + "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", + "dev": true, + "requires": { + "agent-base": "^4.1.0", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "iconv-lite": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ieee754": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", + "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "dev": true + }, + "image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", + "dev": true, + "optional": true + }, + "immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=", + "dev": true + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "dev": true, + "requires": { + "import-from": "^2.1.0" + } + }, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "dev": true, + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.1.0.tgz", + "integrity": "sha512-NhURkNcrVB+8hNfLuysU8enY5xn2KXphsHBaC2YmRNTZRc7RWusw6apSpdEj3jo4CMb6W9nrF6tTnsJsJeyu6g==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "in-publish": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", + "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=", + "dev": true, + "optional": true + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "optional": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "internal-ip": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-3.0.1.tgz", + "integrity": "sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q==", + "dev": true, + "requires": { + "default-gateway": "^2.6.0", + "ipaddr.js": "^1.5.2" + } + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true, + "optional": true + }, + "ip": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", + "dev": true + }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, + "ipaddr.js": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", + "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "dev": true, + "requires": { + "builtin-modules": "^1.0.0" + } + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true + }, + "is-dotfile": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true + }, + "is-equal-shallow": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", + "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, + "requires": { + "is-primitive": "^2.0.0" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-glob": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", + "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", + "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", + "dev": true, + "requires": { + "is-path-inside": "^1.0.0" + } + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, + "requires": { + "path-is-inside": "^1.0.1" + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-posix-bracket": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true + }, + "is-primitive": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isbinaryfile": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", + "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", + "dev": true, + "requires": { + "buffer-alloc": "^1.2.0" + } + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul": { + "version": "0.4.5", + "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", + "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", + "dev": true, + "requires": { + "abbrev": "1.0.x", + "async": "1.x", + "escodegen": "1.8.x", + "esprima": "2.7.x", + "glob": "^5.0.15", + "handlebars": "^4.0.1", + "js-yaml": "3.x", + "mkdirp": "0.5.x", + "nopt": "3.x", + "once": "1.x", + "resolve": "1.1.x", + "supports-color": "^3.1.0", + "which": "^1.1.1", + "wordwrap": "^1.0.0" + }, + "dependencies": { + "glob": { + "version": "5.0.15", + "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", + "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, + "requires": { + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "2 || 3", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "dev": true + }, + "supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "dev": true, + "requires": { + "has-flag": "^1.0.0" + } + } + } + }, + "istanbul-api": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.0.6.tgz", + "integrity": "sha512-8W5oeAGWXhtTJjAyVfvavOLVyZCTNCKsyF6GON/INKlBdO7uJ/bv3qnPj5M6ERKzmMCJS1kntnjjGuJ86fn3rQ==", + "dev": true, + "requires": { + "async": "^2.6.1", + "compare-versions": "^3.2.1", + "fileset": "^2.0.3", + "istanbul-lib-coverage": "^2.0.1", + "istanbul-lib-hook": "^2.0.1", + "istanbul-lib-instrument": "^3.0.0", + "istanbul-lib-report": "^2.0.2", + "istanbul-lib-source-maps": "^2.0.1", + "istanbul-reports": "^2.0.1", + "js-yaml": "^3.12.0", + "make-dir": "^1.3.0", + "once": "^1.4.0" + }, + "dependencies": { + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.0.0.tgz", + "integrity": "sha512-eQY9vN9elYjdgN9Iv6NS/00bptm02EBBk70lRMaVjeA6QYocQgenVrSgC28TJurdnZa80AGO3ASdFN+w/njGiQ==", + "dev": true, + "requires": { + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "istanbul-lib-coverage": "^2.0.1", + "semver": "^5.5.0" + } + } + } + }, + "istanbul-instrumenter-loader": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-3.0.1.tgz", + "integrity": "sha512-a5SPObZgS0jB/ixaKSMdn6n/gXSrK2S6q/UfRJBT3e6gQmVjwZROTODQsYW5ZNwOu78hG62Y3fWlebaVOL0C+w==", + "dev": true, + "requires": { + "convert-source-map": "^1.5.0", + "istanbul-lib-instrument": "^1.7.3", + "loader-utils": "^1.1.0", + "schema-utils": "^0.3.0" + }, + "dependencies": { + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "dev": true, + "requires": { + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" + } + }, + "schema-utils": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", + "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", + "dev": true, + "requires": { + "ajv": "^5.0.0" + } + } + } + }, + "istanbul-lib-coverage": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz", + "integrity": "sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==", + "dev": true + }, + "istanbul-lib-hook": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.1.tgz", + "integrity": "sha512-ufiZoiJ8CxY577JJWEeFuxXZoMqiKpq/RqZtOAYuQLvlkbJWscq9n3gc4xrCGH9n4pW0qnTxOz1oyMmVtk8E1w==", + "dev": true, + "requires": { + "append-transform": "^1.0.0" + } + }, + "istanbul-lib-instrument": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz", + "integrity": "sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==", + "dev": true, + "requires": { + "babel-generator": "^6.18.0", + "babel-template": "^6.16.0", + "babel-traverse": "^6.18.0", + "babel-types": "^6.18.0", + "babylon": "^6.18.0", + "istanbul-lib-coverage": "^1.2.1", + "semver": "^5.3.0" + } + }, + "istanbul-lib-report": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.2.tgz", + "integrity": "sha512-rJ8uR3peeIrwAxoDEbK4dJ7cqqtxBisZKCuwkMtMv0xYzaAnsAi3AHrHPAAtNXzG/bcCgZZ3OJVqm1DTi9ap2Q==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "supports-color": "^5.4.0" + }, + "dependencies": { + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + } + } + }, + "istanbul-lib-source-maps": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-2.0.1.tgz", + "integrity": "sha512-30l40ySg+gvBLcxTrLzR4Z2XTRj3HgRCA/p2rnbs/3OiTaoj054gAbuP5DcLOtwqmy4XW8qXBHzrmP2/bQ9i3A==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.0.1.tgz", + "integrity": "sha512-CT0QgMBJqs6NJLF678ZHcquUAZIoBIUNzdJrRJfpkI9OnzG6MkUfHxbJC3ln981dMswC7/B1mfX3LNkhgJxsuw==", + "dev": true, + "requires": { + "handlebars": "^4.0.11" + } + }, + "jasmine": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", + "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", + "dev": true, + "requires": { + "exit": "^0.1.2", + "glob": "^7.0.6", + "jasmine-core": "~2.8.0" + }, + "dependencies": { + "jasmine-core": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", + "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", + "dev": true + } + } + }, + "jasmine-core": { + "version": "2.99.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.99.1.tgz", + "integrity": "sha1-5kAN8ea1bhMLYcS80JPap/boyhU=", + "dev": true + }, + "jasmine-diff": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/jasmine-diff/-/jasmine-diff-0.1.3.tgz", + "integrity": "sha1-k8zC3MQQKMXd1GBlWAdIOfLe6qg=", + "dev": true, + "requires": { + "diff": "^3.2.0" + } + }, + "jasmine-spec-reporter": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz", + "integrity": "sha512-FZBoZu7VE5nR7Nilzy+Np8KuVIOxF4oXDPDknehCYBDE080EnlPu0afdZNmpGDBRCUBv3mj5qgqCRmk6W/K8vg==", + "dev": true, + "requires": { + "colors": "1.1.2" + } + }, + "jasminewd2": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/jasminewd2/-/jasminewd2-2.2.0.tgz", + "integrity": "sha1-43zwsX8ZnM4jvqcbIDk5Uka07E4=", + "dev": true + }, + "js-base64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.0.tgz", + "integrity": "sha512-wlEBIZ5LP8usDylWbDNhKPEFVFdI5hCHpnVoT/Ysvoi/PRhJENm/Rlh9TvjYB38HFfKZN7OzEbRjmjvLkFw11g==", + "dev": true, + "optional": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.1.tgz", + "integrity": "sha512-um46hB9wNOKlwkHgiuyEVAybXBjwFUV0Z/RaHJblRd9DXltue9FTYvzCr9ErQrK9Adz5MU4gHWVaNUfdmrC8qA==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "dependencies": { + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + } + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "json3": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", + "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", + "dev": true + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "jszip": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.1.5.tgz", + "integrity": "sha512-5W8NUaFRFRqTOL7ZDDrx5qWHJyBXy6velVudIzQUSoqAAYqzSh2Z7/m0Rf1QbmQJccegD0r+YZxBjzqoBiEeJQ==", + "dev": true, + "requires": { + "core-js": "~2.3.0", + "es6-promise": "~3.0.2", + "lie": "~3.1.0", + "pako": "~1.0.2", + "readable-stream": "~2.0.6" + }, + "dependencies": { + "core-js": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz", + "integrity": "sha1-+rg/uwstjchfpjbEudNMdUIMbWU=", + "dev": true + }, + "es6-promise": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz", + "integrity": "sha1-AQ1YWEI6XxGJeWZfRkhqlcbuK7Y=", + "dev": true + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "karma": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/karma/-/karma-3.0.0.tgz", + "integrity": "sha512-ZTjyuDXVXhXsvJ1E4CnZzbCjSxD6sEdzEsFYogLuZM0yqvg/mgz+O+R1jb0J7uAQeuzdY8kJgx6hSNXLwFuHIQ==", + "dev": true, + "requires": { + "bluebird": "^3.3.0", + "body-parser": "^1.16.1", + "chokidar": "^2.0.3", + "colors": "^1.1.0", + "combine-lists": "^1.0.0", + "connect": "^3.6.0", + "core-js": "^2.2.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.0", + "expand-braces": "^0.1.1", + "glob": "^7.1.1", + "graceful-fs": "^4.1.2", + "http-proxy": "^1.13.0", + "isbinaryfile": "^3.0.0", + "lodash": "^4.17.4", + "log4js": "^3.0.0", + "mime": "^2.3.1", + "minimatch": "^3.0.2", + "optimist": "^0.6.1", + "qjobs": "^1.1.4", + "range-parser": "^1.2.0", + "rimraf": "^2.6.0", + "safe-buffer": "^5.0.1", + "socket.io": "2.1.1", + "source-map": "^0.6.1", + "tmp": "0.0.33", + "useragent": "2.2.1" + }, + "dependencies": { + "mime": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", + "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "karma-chrome-launcher": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz", + "integrity": "sha512-uf/ZVpAabDBPvdPdveyk1EPgbnloPvFFGgmRhYLTDH7gEB4nZdSBk8yTU47w1g/drLSx5uMOkjKk7IWKfWg/+w==", + "dev": true, + "requires": { + "fs-access": "^1.0.0", + "which": "^1.2.1" + } + }, + "karma-coverage-istanbul-reporter": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.4.tgz", + "integrity": "sha512-xJS7QSQIVU6VK9HuJ/ieE5yynxKhjCCkd96NLY/BX/HXsx0CskU9JJiMQbd4cHALiddMwI4OWh1IIzeWrsavJw==", + "dev": true, + "requires": { + "istanbul-api": "^2.0.5", + "minimatch": "^3.0.4" + } + }, + "karma-jasmine": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/karma-jasmine/-/karma-jasmine-1.1.2.tgz", + "integrity": "sha1-OU8rJf+0pkS5rabyLUQ+L9CIhsM=", + "dev": true + }, + "karma-jasmine-html-reporter": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz", + "integrity": "sha1-SKjl7xiAdhfuK14zwRlMNbQ5Ukw=", + "dev": true, + "requires": { + "karma-jasmine": "^1.0.2" + } + }, + "karma-source-map-support": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/karma-source-map-support/-/karma-source-map-support-1.3.0.tgz", + "integrity": "sha512-HcPqdAusNez/ywa+biN4EphGz62MmQyPggUsDfsHqa7tSe4jdsxgvTKuDfIazjL+IOxpVWyT7Pr4dhAV+sxX5Q==", + "dev": true, + "requires": { + "source-map-support": "^0.5.5" + } + }, + "killable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", + "dev": true + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "optional": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "less": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/less/-/less-3.8.1.tgz", + "integrity": "sha512-8HFGuWmL3FhQR0aH89escFNBQH/nEiYPP2ltDFdQw2chE28Yx2E3lhAIq9Y2saYwLSwa699s4dBVEfCY8Drf7Q==", + "dev": true, + "requires": { + "clone": "^2.1.2", + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "mime": "^1.4.1", + "mkdirp": "^0.5.0", + "promise": "^7.1.1", + "request": "^2.83.0", + "source-map": "~0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "optional": true + } + } + }, + "less-loader": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-4.1.0.tgz", + "integrity": "sha512-KNTsgCE9tMOM70+ddxp9yyt9iHqgmSs0yTZc5XH5Wo+g80RWRIYNqE58QJKm/yMud5wZEvz50ugRDuzVIkyahg==", + "dev": true, + "requires": { + "clone": "^2.1.1", + "loader-utils": "^1.1.0", + "pify": "^3.0.0" + } + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "license-webpack-plugin": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-1.5.0.tgz", + "integrity": "sha512-Of/H79rZqm2aeg4RnP9SMSh19qkKemoLT5VaJV58uH5AxeYWEcBgGFs753JEJ/Hm6BPvQVfIlrrjoBwYj8p7Tw==", + "dev": true, + "requires": { + "ejs": "^2.5.7" + } + }, + "lie": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.1.1.tgz", + "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", + "dev": true, + "requires": { + "immediate": "~3.0.5" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "loader-runner": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.1.tgz", + "integrity": "sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw==", + "dev": true + }, + "loader-utils": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", + "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", + "dev": true, + "requires": { + "big.js": "^3.1.3", + "emojis-list": "^2.0.0", + "json5": "^0.5.0" + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=", + "dev": true, + "optional": true + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", + "dev": true + }, + "lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", + "dev": true + }, + "lodash.mergewith": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz", + "integrity": "sha512-eWw5r+PYICtEBgrBE5hhlT6aAa75f411bgDz/ZL2KZqYV03USvucsxcHUIlGTDTECs1eunpI7HOV7U+WLDvNdQ==", + "dev": true, + "optional": true + }, + "lodash.tail": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.tail/-/lodash.tail-4.1.1.tgz", + "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=", + "dev": true + }, + "log4js": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-3.0.6.tgz", + "integrity": "sha512-ezXZk6oPJCWL483zj64pNkMuY/NcRX5MPiB0zE6tjZM137aeusrOnW1ecxgF9cmwMWkBMhjteQxBPoZBh9FDxQ==", + "dev": true, + "requires": { + "circular-json": "^0.5.5", + "date-format": "^1.2.0", + "debug": "^3.1.0", + "rfdc": "^1.1.2", + "streamroller": "0.7.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "loglevel": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", + "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", + "dev": true + }, + "long": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", + "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "optional": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "make-error": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", + "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==", + "dev": true + }, + "mamacro": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", + "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", + "dev": true + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "math-random": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", + "dev": true + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "mem": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz", + "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^1.0.0", + "p-is-promise": "^1.1.0" + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "optional": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true, + "optional": true + } + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "mime-db": { + "version": "1.37.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz", + "integrity": "sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==", + "dev": true + }, + "mime-types": { + "version": "2.1.21", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz", + "integrity": "sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==", + "dev": true, + "requires": { + "mime-db": "~1.37.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "mini-css-extract-plugin": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.4.tgz", + "integrity": "sha512-o+Jm+ocb0asEngdM6FsZWtZsRzA8koFUudIDwYUfl94M3PejPHG7Vopw5hN9V8WsMkSFpm3tZP3Fesz89EyrfQ==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" + }, + "dependencies": { + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } + } + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mississippi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "mixin-deep": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", + "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dev": true, + "requires": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "dev": true + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "multicast-dns": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", + "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", + "dev": true, + "requires": { + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" + } + }, + "multicast-dns-service-types": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", + "dev": true + }, + "nan": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.12.1.tgz", + "integrity": "sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true + }, + "neo-async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", + "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "requires": { + "lower-case": "^1.1.1" + } + }, + "node-forge": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", + "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", + "dev": true + }, + "node-gyp": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", + "dev": true, + "optional": true, + "requires": { + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" + }, + "dependencies": { + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", + "dev": true, + "optional": true + } + } + }, + "node-libs-browser": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", + "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^1.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.0", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.10.3", + "vm-browserify": "0.0.4" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "node-sass": { + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.11.0.tgz", + "integrity": "sha512-bHUdHTphgQJZaF1LASx0kAviPH7sGlcyNhWade4eVIpFp6tsn7SV8xNMTbsQFpEV9VXpnwTTnNYlfsZXgGgmkA==", + "dev": true, + "optional": true, + "requires": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash.assign": "^4.2.0", + "lodash.clonedeep": "^4.3.2", + "lodash.mergewith": "^4.6.0", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.10.0", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "^2.2.4", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "optional": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "optional": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "optional": true + } + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "npm-package-arg": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.0.tgz", + "integrity": "sha512-zYbhP2k9DbJhA0Z3HKUePUgdB1x7MfIfKssC+WLPFMKTBZKpZh5m13PgexJjCq6KW7j17r0jHWcCpxEqnnncSA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.6.0", + "osenv": "^0.1.5", + "semver": "^5.5.0", + "validate-npm-package-name": "^3.0.0" + } + }, + "npm-registry-client": { + "version": "8.6.0", + "resolved": "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-8.6.0.tgz", + "integrity": "sha512-Qs6P6nnopig+Y8gbzpeN/dkt+n7IyVd8f45NTMotGk6Qo7GfBmzwYx6jRLoOOgKiMnaQfYxsuyQlD8Mc3guBhg==", + "dev": true, + "requires": { + "concat-stream": "^1.5.2", + "graceful-fs": "^4.1.6", + "normalize-package-data": "~1.0.1 || ^2.0.0", + "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0", + "npmlog": "2 || ^3.1.0 || ^4.0.0", + "once": "^1.3.3", + "request": "^2.74.0", + "retry": "^0.10.0", + "safe-buffer": "^5.1.1", + "semver": "2 >=2.2.1 || 3.x || 4 || 5", + "slide": "^1.1.3", + "ssri": "^5.2.4" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, + "null-check": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", + "integrity": "sha1-l33/1xdgErnsMNKjnbXPcqBDnt0=", + "dev": true + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-component": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/object-component/-/object-component-0.0.3.tgz", + "integrity": "sha1-8MaapQ78lbhmwYb0AKM3acsvEpE=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-keys": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + }, + "dependencies": { + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + } + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", + "dev": true + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", + "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "opn": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", + "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "original": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", + "dev": true, + "requires": { + "url-parse": "^1.4.3" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "optional": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", + "dev": true + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-map": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", + "dev": true + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pako": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.7.tgz", + "integrity": "sha512-3HNK5tW4x8o5mO8RuHZp3Ydw9icZXx0RANAOMzlMzx7LVXhMJ4mo3MOBpzyd7r/+RUu8BmndP47LXT+vzjtWcQ==", + "dev": true + }, + "parallel-transform": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.1.0.tgz", + "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", + "dev": true, + "requires": { + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, + "requires": { + "no-case": "^2.2.0" + } + }, + "parse-asn1": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", + "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3" + } + }, + "parse-glob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", + "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, + "requires": { + "glob-base": "^0.3.0", + "is-dotfile": "^1.0.0", + "is-extglob": "^1.0.0", + "is-glob": "^2.0.0" + }, + "dependencies": { + "is-extglob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true + }, + "is-glob": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", + "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, + "requires": { + "is-extglob": "^1.0.0" + } + } + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "parse5": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true + }, + "parseqs": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.5.tgz", + "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", + "dev": true, + "requires": { + "better-assert": "~1.0.0" + } + }, + "parseuri": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.5.tgz", + "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", + "dev": true, + "requires": { + "better-assert": "~1.0.0" + } + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + }, + "portfinder": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.19.tgz", + "integrity": "sha512-23aeQKW9KgHe6citUrG3r9HjeX6vls0h713TAa+CwTKZwNIr/pD2ApaxYF4Um3ZZyq4ar+Siv3+fhoHaIwSOSw==", + "dev": true, + "requires": { + "async": "^1.5.2", + "debug": "^2.2.0", + "mkdirp": "0.5.x" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "postcss": { + "version": "6.0.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", + "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.4.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "postcss-import": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-11.1.0.tgz", + "integrity": "sha512-5l327iI75POonjxkXgdRCUS+AlzAdBx4pOvMEhTKTCjb1p8IEeVR9yx3cPbmN7LIWJLbfnIXxAhoB4jpD0c/Cw==", + "dev": true, + "requires": { + "postcss": "^6.0.1", + "postcss-value-parser": "^3.2.3", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } + }, + "postcss-load-config": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.0.0.tgz", + "integrity": "sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ==", + "dev": true, + "requires": { + "cosmiconfig": "^4.0.0", + "import-cwd": "^2.0.0" + } + }, + "postcss-loader": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.1.6.tgz", + "integrity": "sha512-hgiWSc13xVQAq25cVw80CH0l49ZKlAnU1hKPOdRrNj89bokRr/bZF2nT+hebPPF9c9xs8c3gw3Fr2nxtmXYnNg==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "postcss": "^6.0.0", + "postcss-load-config": "^2.0.0", + "schema-utils": "^0.4.0" + } + }, + "postcss-url": { + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-7.3.2.tgz", + "integrity": "sha512-QMV5mA+pCYZQcUEPQkmor9vcPQ2MT+Ipuu8qdi1gVxbNiIiErEGft+eny1ak19qALoBkccS5AHaCaCDzh7b9MA==", + "dev": true, + "requires": { + "mime": "^1.4.1", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.0", + "postcss": "^6.0.1", + "xxhashjs": "^0.2.1" + } + }, + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "preserve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true + }, + "pretty-error": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", + "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", + "dev": true, + "requires": { + "renderkid": "^2.0.1", + "utila": "~0.4" + } + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dev": true, + "optional": true, + "requires": { + "asap": "~2.0.3" + } + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "protractor": { + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.2.tgz", + "integrity": "sha512-zlIj64Cr6IOWP7RwxVeD8O4UskLYPoyIcg0HboWJL9T79F1F0VWtKkGTr/9GN6BKL+/Q/GmM7C9kFVCfDbP5sA==", + "dev": true, + "requires": { + "@types/q": "^0.0.32", + "@types/selenium-webdriver": "^3.0.0", + "blocking-proxy": "^1.0.0", + "browserstack": "^1.5.1", + "chalk": "^1.1.3", + "glob": "^7.0.3", + "jasmine": "2.8.0", + "jasminewd2": "^2.1.0", + "optimist": "~0.6.0", + "q": "1.4.1", + "saucelabs": "^1.5.0", + "selenium-webdriver": "3.6.0", + "source-map-support": "~0.4.0", + "webdriver-js-extender": "2.1.0", + "webdriver-manager": "^12.0.6" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", + "dev": true, + "requires": { + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" + } + }, + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", + "dev": true, + "requires": { + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "source-map-support": { + "version": "0.4.18", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", + "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "dev": true, + "requires": { + "source-map": "^0.5.6" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "webdriver-manager": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.1.tgz", + "integrity": "sha512-L9TEQmZs6JbMMRQI1w60mfps265/NCr0toYJl7p/R2OAk6oXAfwI6jqYP7EWae+d7Ad2S2Aj4+rzxoSjqk3ZuA==", + "dev": true, + "requires": { + "adm-zip": "^0.4.9", + "chalk": "^1.1.1", + "del": "^2.2.0", + "glob": "^7.0.3", + "ini": "^1.3.4", + "minimist": "^1.2.0", + "q": "^1.4.1", + "request": "^2.87.0", + "rimraf": "^2.5.2", + "semver": "^5.3.0", + "xml2js": "^0.4.17" + } + } + } + }, + "proxy-addr": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", + "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", + "dev": true, + "requires": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.8.0" + } + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.1.31", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", + "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "q": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", + "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", + "dev": true + }, + "qjobs": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/qjobs/-/qjobs-1.2.0.tgz", + "integrity": "sha512-8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "querystringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.0.tgz", + "integrity": "sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg==", + "dev": true + }, + "randomatic": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", + "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", + "dev": true, + "requires": { + "is-number": "^4.0.0", + "kind-of": "^6.0.0", + "math-random": "^1.0.1" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "randombytes": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", + "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", + "dev": true + }, + "raw-body": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", + "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", + "dev": true, + "requires": { + "bytes": "3.0.0", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", + "unpipe": "1.0.0" + } + }, + "raw-loader": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-0.5.1.tgz", + "integrity": "sha1-DD0L6u2KAclm2Xh793goElKpeao=", + "dev": true + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "requires": { + "pify": "^2.3.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "dependencies": { + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "optional": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + } + }, + "reflect-metadata": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz", + "integrity": "sha512-n+IyV+nGz3+0q3/Yf1ra12KpCyi001bi4XFxSjbiWWjfqb52iTTtpGXmCCAOWWIAn9KEuFZKGqBERHmrtScZ3A==", + "dev": true + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true + }, + "regex-cache": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", + "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, + "requires": { + "is-equal-shallow": "^0.1.3" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexpu-core": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", + "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", + "dev": true, + "requires": { + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "renderkid": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.2.tgz", + "integrity": "sha512-FsygIxevi1jSiPY9h7vZmBFUbAOcbYm9UwyiLNdVsLRs/5We9Ob5NMPbGYUTWiLq5L+ezlVdE0A8bbME5CWTpg==", + "dev": true, + "requires": { + "css-select": "^1.1.0", + "dom-converter": "~0.2", + "htmlparser2": "~3.3.0", + "strip-ansi": "^3.0.0", + "utila": "^0.4.0" + } + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "retry": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.10.1.tgz", + "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", + "dev": true + }, + "rfdc": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.2.tgz", + "integrity": "sha512-92ktAgvZhBzYTIK0Mja9uen5q5J3NRVMoDkJL2VMwq6SXjVCgqvQeVP2XAaUY6HT+XpQYeLSjb3UoitBryKmdA==", + "dev": true + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, + "rxjs": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", + "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "requires": { + "tslib": "^1.9.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sass-graph": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", + "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", + "dev": true, + "optional": true, + "requires": { + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^7.0.0" + } + }, + "sass-loader": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz", + "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", + "dev": true, + "requires": { + "clone-deep": "^2.0.1", + "loader-utils": "^1.0.1", + "lodash.tail": "^4.1.1", + "neo-async": "^2.5.0", + "pify": "^3.0.0", + "semver": "^5.5.0" + } + }, + "saucelabs": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/saucelabs/-/saucelabs-1.5.0.tgz", + "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", + "dev": true, + "requires": { + "https-proxy-agent": "^2.2.1" + } + }, + "sax": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz", + "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", + "dev": true + }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" + } + }, + "scss-tokenizer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", + "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", + "dev": true, + "optional": true, + "requires": { + "js-base64": "^2.1.8", + "source-map": "^0.4.2" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "optional": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", + "dev": true + }, + "selenium-webdriver": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz", + "integrity": "sha512-WH7Aldse+2P5bbFBO4Gle/nuQOdVwpHMTL6raL3uuBj/vPG07k6uzt3aiahu352ONBr5xXh0hDlM3LhtXPOC4Q==", + "dev": true, + "requires": { + "jszip": "^3.1.3", + "rimraf": "^2.5.4", + "tmp": "0.0.30", + "xml2js": "^0.4.17" + }, + "dependencies": { + "tmp": { + "version": "0.0.30", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.30.tgz", + "integrity": "sha1-ckGdSovn1s51FI/YsyTlk6cRwu0=", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.1" + } + } + } + }, + "selfsigned": { + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz", + "integrity": "sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw==", + "dev": true, + "requires": { + "node-forge": "0.7.5" + } + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "semver-dsl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/semver-dsl/-/semver-dsl-1.0.1.tgz", + "integrity": "sha1-02eN5VVeimH2Ke7QJTZq5fJzQKA=", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + }, + "semver-intersect": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", + "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", + "dev": true, + "requires": { + "semver": "^5.0.0" + } + }, + "send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" + }, + "dependencies": { + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.6.1.tgz", + "integrity": "sha512-A5MOagrPFga4YaKQSWHryl7AXvbQkEqpw4NNYMTNYUNV51bA8ABHgYFpqKx+YFFrw59xMV1qGH1R4AgoNIVgCw==", + "dev": true + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + } + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", + "send": "0.16.2" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", + "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shallow-clone": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", + "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", + "dev": true, + "requires": { + "is-extendable": "^0.1.1", + "kind-of": "^5.0.0", + "mixin-object": "^2.0.1" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + }, + "slide": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "socket.io": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", + "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", + "dev": true, + "requires": { + "debug": "~3.1.0", + "engine.io": "~3.2.0", + "has-binary2": "~1.0.2", + "socket.io-adapter": "~1.1.0", + "socket.io-client": "2.1.1", + "socket.io-parser": "~3.2.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "socket.io-adapter": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz", + "integrity": "sha1-KoBeihTWNyEk3ZFZrUUC+MsH8Gs=", + "dev": true + }, + "socket.io-client": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", + "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", + "dev": true, + "requires": { + "backo2": "1.0.2", + "base64-arraybuffer": "0.1.5", + "component-bind": "1.0.0", + "component-emitter": "1.2.1", + "debug": "~3.1.0", + "engine.io-client": "~3.2.0", + "has-binary2": "~1.0.2", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "object-component": "0.0.3", + "parseqs": "0.0.5", + "parseuri": "0.0.5", + "socket.io-parser": "~3.2.0", + "to-array": "0.1.4" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "socket.io-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", + "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", + "dev": true, + "requires": { + "component-emitter": "1.2.1", + "debug": "~3.1.0", + "isarray": "2.0.1" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true + } + } + }, + "sockjs": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", + "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", + "dev": true, + "requires": { + "faye-websocket": "^0.10.0", + "uuid": "^3.0.1" + } + }, + "sockjs-client": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.3.0.tgz", + "integrity": "sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg==", + "dev": true, + "requires": { + "debug": "^3.2.5", + "eventsource": "^1.0.7", + "faye-websocket": "~0.11.1", + "inherits": "^2.0.3", + "json3": "^3.3.2", + "url-parse": "^1.4.3" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "faye-websocket": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", + "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "source-map-loader": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", + "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", + "dev": true, + "requires": { + "async": "^2.5.0", + "loader-utils": "^1.1.0" + }, + "dependencies": { + "async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", + "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + } + } + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.9.tgz", + "integrity": "sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.3.tgz", + "integrity": "sha512-uBIcIl3Ih6Phe3XHK1NqboJLdGfwr1UN3k6wSD1dZpmPsIkb8AGNbZYJ1fOBk834+Gxy8rpfDxrS6XLEMZMY2g==", + "dev": true + }, + "spdy": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz", + "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", + "dev": true, + "requires": { + "debug": "^2.6.8", + "handle-thing": "^1.2.5", + "http-deceiver": "^1.2.7", + "safe-buffer": "^5.0.1", + "select-hose": "^2.0.0", + "spdy-transport": "^2.0.18" + } + }, + "spdy-transport": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.1.tgz", + "integrity": "sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q==", + "dev": true, + "requires": { + "debug": "^2.6.8", + "detect-node": "^2.0.3", + "hpack.js": "^2.1.6", + "obuf": "^1.1.1", + "readable-stream": "^2.2.9", + "safe-buffer": "^5.0.1", + "wbuf": "^1.7.2" + } + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.0.tgz", + "integrity": "sha512-Zhev35/y7hRMcID/upReIvRse+I9SVhyVre/KTJSJQWMz3C3+G+HpO7m1wK/yckEtujKZ7dS4hkVxAnmHaIGVQ==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.1" + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "stats-webpack-plugin": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/stats-webpack-plugin/-/stats-webpack-plugin-0.6.2.tgz", + "integrity": "sha1-LFlJtTHgf4eojm6k3PrFOqjHWis=", + "dev": true, + "requires": { + "lodash": "^4.17.4" + } + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "dev": true + }, + "stdout-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", + "dev": true, + "optional": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true + }, + "streamroller": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-0.7.0.tgz", + "integrity": "sha512-WREzfy0r0zUqp3lGO096wRuUp7ho1X6uo/7DJfTlEi0Iv/4gT7YHqXDjKC2ioVGBZtE8QzsQD9nx1nIuoZ57jQ==", + "dev": true, + "requires": { + "date-format": "^1.2.0", + "debug": "^3.1.0", + "mkdirp": "^0.5.1", + "readable-stream": "^2.3.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "optional": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "style-loader": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.21.0.tgz", + "integrity": "sha512-T+UNsAcl3Yg+BsPKs1vd22Fr8sVT+CJMtzqc6LEw9bbJZb43lm9GoeIfUcDEefBSWC0BhYbcdupV1GtI4DGzxg==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "schema-utils": "^0.4.5" + } + }, + "stylus": { + "version": "0.54.5", + "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", + "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "dev": true, + "requires": { + "css-parse": "1.7.x", + "debug": "*", + "glob": "7.0.x", + "mkdirp": "0.5.x", + "sax": "0.5.x", + "source-map": "0.1.x" + }, + "dependencies": { + "glob": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", + "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "stylus-loader": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", + "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", + "dev": true, + "requires": { + "loader-utils": "^1.0.2", + "lodash.clonedeep": "^4.5.0", + "when": "~3.6.x" + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, + "tapable": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.1.tgz", + "integrity": "sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA==", + "dev": true + }, + "tar": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", + "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "dev": true, + "optional": true, + "requires": { + "block-stream": "*", + "fstream": "^1.0.2", + "inherits": "2" + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "thunky": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz", + "integrity": "sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==", + "dev": true + }, + "timers-browserify": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", + "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "to-array": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", + "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", + "dev": true + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "to-fast-properties": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", + "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "toposort": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", + "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", + "dev": true + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "tree-kill": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.1.tgz", + "integrity": "sha512-4hjqbObwlh2dLyW4tcz0Ymw0ggoaVDMveUB9w8kFSQScdRLo0gxO9J7WFcUBo+W3C1TLdFIEwNOWebgZZ0RH9Q==", + "dev": true + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true, + "optional": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "true-case-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.2" + } + }, + "ts-node": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", + "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", + "dev": true, + "requires": { + "arrify": "^1.0.0", + "buffer-from": "^1.1.0", + "diff": "^3.1.0", + "make-error": "^1.1.1", + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "source-map-support": "^0.5.6", + "yn": "^2.0.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "tsickle": { + "version": "0.32.1", + "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.32.1.tgz", + "integrity": "sha512-JW9j+W0SaMSZGejIFZBk0AiPfnhljK3oLx5SaqxrJhjlvzFyPml5zqG1/PuScUj6yTe1muEqwk5CnDK0cOZmKw==", + "dev": true, + "requires": { + "jasmine-diff": "^0.1.3", + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "source-map": "^0.6.0", + "source-map-support": "^0.5.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "tslib": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", + "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==" + }, + "tslint": { + "version": "5.11.0", + "resolved": "https://registry.npmjs.org/tslint/-/tslint-5.11.0.tgz", + "integrity": "sha1-mPMMAurjzecAYgHkwzywi0hYHu0=", + "dev": true, + "requires": { + "babel-code-frame": "^6.22.0", + "builtin-modules": "^1.1.1", + "chalk": "^2.3.0", + "commander": "^2.12.1", + "diff": "^3.2.0", + "glob": "^7.1.1", + "js-yaml": "^3.7.0", + "minimatch": "^3.0.4", + "resolve": "^1.3.2", + "semver": "^5.3.0", + "tslib": "^1.8.0", + "tsutils": "^2.27.2" + }, + "dependencies": { + "resolve": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.9.0.tgz", + "integrity": "sha512-TZNye00tI67lwYvzxCxHGjwTNlUV70io54/Ed4j6PscB8xVfuBJpRenI/o6dVk0cY0PYTY27AgCoGGxRnYuItQ==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + } + } + }, + "tsutils": { + "version": "2.29.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", + "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", + "dev": true, + "requires": { + "tslib": "^1.8.1" + } + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.18" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typescript": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz", + "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==", + "dev": true + }, + "uglify-js": { + "version": "3.4.9", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", + "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==", + "dev": true, + "requires": { + "commander": "~2.17.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "uglifyjs-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", + "dev": true, + "requires": { + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "schema-utils": "^0.4.5", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "uglify-es": "^3.3.4", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dev": true, + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + } + } + } + }, + "ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", + "dev": true + }, + "union-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", + "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "set-value": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", + "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" + } + } + } + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", + "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } + }, + "upath": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", + "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", + "dev": true + }, + "upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true + }, + "uri-js": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-3.0.2.tgz", + "integrity": "sha1-+QuFhQf4HepNz7s8TD2/orVX+qo=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "url-loader": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.1.2.tgz", + "integrity": "sha512-dXHkKmw8FhPqu8asTc1puBfe3TehOCo2+RmOOev5suNCIYBcT626kxiWg1NBVkwc4rO8BGa7gP70W7VXuqHrjg==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "mime": "^2.0.3", + "schema-utils": "^1.0.0" + }, + "dependencies": { + "mime": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", + "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", + "dev": true + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } + } + }, + "url-parse": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.4.tgz", + "integrity": "sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg==", + "dev": true, + "requires": { + "querystringify": "^2.0.0", + "requires-port": "^1.0.0" + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "useragent": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.2.1.tgz", + "integrity": "sha1-z1k+9PLRdYdei7ZY6pLhik/QbY4=", + "dev": true, + "requires": { + "lru-cache": "2.2.x", + "tmp": "0.0.x" + }, + "dependencies": { + "lru-cache": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.2.4.tgz", + "integrity": "sha1-bGWGGb7PFAMdDQtZSxYELOTcBj0=", + "dev": true + } + } + }, + "util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dev": true, + "requires": { + "inherits": "2.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", + "dev": true + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "validate-npm-package-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz", + "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", + "dev": true, + "requires": { + "builtins": "^1.0.3" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "dev": true, + "requires": { + "indexof": "0.0.1" + } + }, + "void-elements": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-2.0.1.tgz", + "integrity": "sha1-wGavtYK7HLQSjWDqkjkulNXp2+w=", + "dev": true + }, + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "dev": true, + "requires": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } + }, + "wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "requires": { + "minimalistic-assert": "^1.0.0" + } + }, + "webdriver-js-extender": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", + "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", + "dev": true, + "requires": { + "@types/selenium-webdriver": "^3.0.0", + "selenium-webdriver": "^3.0.1" + } + }, + "webpack": { + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.16.4.tgz", + "integrity": "sha512-RqUfwp4qMqv3oFwBQQOoK69C2tdu2FHJEqPABPqgjGDvOIOLqkTOhmmdJjpiRabzNAAH1ahmkA3z4xowlHN+VA==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.5.13", + "@webassemblyjs/helper-module-context": "1.5.13", + "@webassemblyjs/wasm-edit": "1.5.13", + "@webassemblyjs/wasm-opt": "1.5.13", + "@webassemblyjs/wasm-parser": "1.5.13", + "acorn": "^5.6.2", + "acorn-dynamic-import": "^3.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^1.0.0", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.0", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^0.4.4", + "tapable": "^1.0.0", + "uglifyjs-webpack-plugin": "^1.2.4", + "watchpack": "^1.5.0", + "webpack-sources": "^1.0.1" + } + }, + "webpack-core": { + "version": "0.6.9", + "resolved": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.6.9.tgz", + "integrity": "sha1-/FcViMhVjad76e+23r3Fo7FyvcI=", + "dev": true, + "requires": { + "source-list-map": "~0.1.7", + "source-map": "~0.4.1" + }, + "dependencies": { + "source-list-map": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-0.1.8.tgz", + "integrity": "sha1-xVCyq1Qn9rPyH1r+rYjE9Vh7IQY=", + "dev": true + }, + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "webpack-dev-middleware": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz", + "integrity": "sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA==", + "dev": true, + "requires": { + "memory-fs": "~0.4.1", + "mime": "^2.3.1", + "range-parser": "^1.0.3", + "webpack-log": "^2.0.0" + }, + "dependencies": { + "mime": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", + "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", + "dev": true + } + } + }, + "webpack-dev-server": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.10.tgz", + "integrity": "sha512-RqOAVjfqZJtQcB0LmrzJ5y4Jp78lv9CK0MZ1YJDTaTmedMZ9PU9FLMQNrMCfVu8hHzaVLVOJKBlGEHMN10z+ww==", + "dev": true, + "requires": { + "ansi-html": "0.0.7", + "bonjour": "^3.5.0", + "chokidar": "^2.0.0", + "compression": "^1.5.2", + "connect-history-api-fallback": "^1.3.0", + "debug": "^3.1.0", + "del": "^3.0.0", + "express": "^4.16.2", + "html-entities": "^1.2.0", + "http-proxy-middleware": "~0.18.0", + "import-local": "^2.0.0", + "internal-ip": "^3.0.1", + "ip": "^1.1.5", + "killable": "^1.0.0", + "loglevel": "^1.4.1", + "opn": "^5.1.0", + "portfinder": "^1.0.9", + "schema-utils": "^1.0.0", + "selfsigned": "^1.9.1", + "serve-index": "^1.7.2", + "sockjs": "0.3.19", + "sockjs-client": "1.3.0", + "spdy": "^3.4.1", + "strip-ansi": "^3.0.0", + "supports-color": "^5.1.0", + "webpack-dev-middleware": "3.4.0", + "webpack-log": "^2.0.0", + "yargs": "12.0.2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "requires": { + "xregexp": "4.0.0" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-limit": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.1.0.tgz", + "integrity": "sha512-NhURkNcrVB+8hNfLuysU8enY5xn2KXphsHBaC2YmRNTZRc7RWusw6apSpdEj3jo4CMb6W9nrF6tTnsJsJeyu6g==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "schema-utils": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "yargs": { + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^2.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^10.1.0" + } + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "webpack-log": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", + "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", + "dev": true, + "requires": { + "ansi-colors": "^3.0.0", + "uuid": "^3.3.2" + } + }, + "webpack-merge": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.1.4.tgz", + "integrity": "sha512-TmSe1HZKeOPey3oy1Ov2iS3guIZjWvMT2BBJDzzT5jScHTjVC3mpjJofgueEzaEd6ibhxRDD6MIblDr8tzh8iQ==", + "dev": true, + "requires": { + "lodash": "^4.17.5" + } + }, + "webpack-sources": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } + } + }, + "webpack-subresource-integrity": { + "version": "1.1.0-rc.4", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.4.tgz", + "integrity": "sha1-xcTj1pD50vZKlVDgeodn+Xlqpdg=", + "dev": true, + "requires": { + "webpack-core": "^0.6.8" + } + }, + "websocket-driver": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", + "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", + "dev": true, + "requires": { + "http-parser-js": ">=0.4.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", + "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", + "dev": true + }, + "when": { + "version": "3.6.4", + "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", + "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", + "dev": true + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "worker-farm": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.6.0.tgz", + "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "ws": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" + } + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "dev": true, + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + }, + "dependencies": { + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + } + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=", + "dev": true + }, + "xmlhttprequest-ssl": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", + "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", + "dev": true + }, + "xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "xxhashjs": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", + "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", + "dev": true, + "requires": { + "cuint": "^0.2.2" + } + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^5.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true, + "optional": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true, + "optional": true + } + } + }, + "yargs-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "dev": true, + "optional": true, + "requires": { + "camelcase": "^3.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true, + "optional": true + } + } + }, + "yeast": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", + "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", + "dev": true + }, + "yn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz", + "integrity": "sha1-5a2ryKz0CPY4X8dklWhMiOavaJo=", + "dev": true + }, + "zone.js": { + "version": "0.8.26", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.8.26.tgz", + "integrity": "sha512-W9Nj+UmBJG251wkCacIkETgra4QgBo/vgoEkb4a2uoLzpQG7qF9nzwoLXWU5xj3Fg2mxGvEDh47mg24vXccYjA==" + } + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/package.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/package.json new file mode 100644 index 0000000..0d62cc1 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/package.json @@ -0,0 +1,48 @@ +{ + "name": "client", + "version": "0.0.0", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build", + "test": "ng test", + "lint": "ng lint", + "e2e": "ng e2e" + }, + "private": true, + "dependencies": { + "@angular/animations": "^6.1.10", + "@angular/common": "^6.1.0", + "@angular/compiler": "^6.1.0", + "@angular/core": "^6.1.0", + "@angular/forms": "^6.1.0", + "@angular/http": "^6.1.0", + "@angular/platform-browser": "^6.1.0", + "@angular/platform-browser-dynamic": "^6.1.0", + "@angular/router": "^6.1.0", + "core-js": "^2.5.4", + "rxjs": "~6.2.0", + "zone.js": "~0.8.26" + }, + "devDependencies": { + "@angular-devkit/build-angular": "~0.8.0", + "@angular/cli": "~6.2.3", + "@angular/compiler-cli": "^6.1.0", + "@angular/language-service": "^6.1.0", + "@types/jasmine": "~2.8.8", + "@types/jasminewd2": "~2.0.3", + "@types/node": "~8.9.4", + "codelyzer": "~4.3.0", + "jasmine-core": "~2.99.1", + "jasmine-spec-reporter": "~4.2.1", + "karma": "~3.0.0", + "karma-chrome-launcher": "~2.2.0", + "karma-coverage-istanbul-reporter": "~2.0.1", + "karma-jasmine": "~1.1.2", + "karma-jasmine-html-reporter": "^0.2.2", + "protractor": "~5.4.0", + "ts-node": "~7.0.0", + "tslint": "~5.11.0", + "typescript": "~2.9.2" + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/app.module.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/app.module.ts new file mode 100644 index 0000000..5eb05ab --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/app.module.ts @@ -0,0 +1,50 @@ +import {BrowserModule} from '@angular/platform-browser'; +import {NgModule} from '@angular/core'; + +import {AppComponent} from './components/app.component'; +import {NavbarComponent} from './components/navbar/navbar.component'; +import {RouterModule} from '@angular/router'; +import {FormsModule} from '@angular/forms'; +import routes from './configs/routes'; +import {HomeComponent} from './components/home/home.component'; +import {LoginComponent} from './components/login/login.component'; +import {RegisterComponent} from './components/register/register.component'; +import {CommonModule} from '@angular/common'; +import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; +import {HTTP_INTERCEPTORS, HttpClientModule} from '@angular/common/http'; +import { NavLinkComponent } from './components/navbar/nav-link/nav-link.component'; +import { FlightsListComponent } from './components/home/flights-list/flights-list.component'; +import { BookingsComponent } from './components/bookings/bookings.component'; +import {AuthHttpInterceptor} from "./configs/auth-http-interceptor.service"; +import { ManageFlightsComponent } from './components/manage-flights/manage-flights.component'; + +@NgModule({ + declarations: [ + AppComponent, + NavbarComponent, + HomeComponent, + LoginComponent, + RegisterComponent, + NavLinkComponent, + FlightsListComponent, + BookingsComponent, + ManageFlightsComponent + ], + imports: [ + BrowserModule, + RouterModule.forRoot(routes), + FormsModule, + HttpClientModule, + CommonModule, + BrowserAnimationsModule, + ], + providers: [ + { + provide: HTTP_INTERCEPTORS, + useClass: AuthHttpInterceptor, + multi: true + } + ], + bootstrap: [AppComponent] +}) +export class AppModule { } diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.css new file mode 100644 index 0000000..e69de29 diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.html new file mode 100644 index 0000000..6659729 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.html @@ -0,0 +1,2 @@ + + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.ts new file mode 100644 index 0000000..d733cda --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/app.component.ts @@ -0,0 +1,14 @@ +import {Component, OnInit} from '@angular/core'; + +@Component({ + selector: 'app-root', + templateUrl: './app.component.html', + styleUrls: ['./app.component.css'] +}) +export class AppComponent implements OnInit{ + constructor() { + } + + ngOnInit() { + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.css new file mode 100644 index 0000000..f4f7d55 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.css @@ -0,0 +1,9 @@ +td:nth-child(4):hover { + cursor: pointer; + color: crimson; +} + +td:nth-child(4) { + font-weight: 900; + font-size: 1.1em; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.html new file mode 100644 index 0000000..7759e7e --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.html @@ -0,0 +1,23 @@ +

diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.ts new file mode 100644 index 0000000..91e325a --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/bookings/bookings.component.ts @@ -0,0 +1,28 @@ +import { Component, OnInit } from '@angular/core'; +import {Booking} from "../../models/booking"; +import {BookingService} from "../../services/booking.service"; + +@Component({ + selector: 'app-bookings', + templateUrl: './bookings.component.html', + styleUrls: ['./bookings.component.css'] +}) +export class BookingsComponent implements OnInit { + bookings: Booking[] = []; + + constructor(private bookingService: BookingService) { } + + ngOnInit() { + this.bookingService.getAll((result: Booking[]) => { + this.bookings = result; + }) + } + + removeBooking(id: number) { + if(!confirm('Are you sure you want to remove this booking?')) { + return; + } + + this.bookingService.remove(id, () => this.bookings = this.bookings.filter((booking: Booking) => booking.id != id)); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.css new file mode 100644 index 0000000..5be26d8 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.css @@ -0,0 +1,15 @@ +.clickable:hover { + background: #e1e1e1; +} +.clickable { + cursor: pointer; +} +td:nth-child(5):hover { + cursor: pointer; + color: crimson; +} + +td:nth-child(5) { + font-weight: 900; + font-size: 1.1em; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.html new file mode 100644 index 0000000..a307729 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + +
DepartureArrivalDateTotal Seats
{{ flight.fromCity }}{{ flight.toCity }}{{ flight.time | date:'medium' }}{{ flight.seatsTaken }} / {{ flight.airplane.availableSeats }}
diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.ts new file mode 100644 index 0000000..5870586 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/flights-list/flights-list.component.ts @@ -0,0 +1,57 @@ +import { Component, OnInit } from '@angular/core'; +import {FlightsService} from "../../../services/flights.service"; +import {Flight} from "../../../models/flight"; +import {Router} from "@angular/router"; +import {BookingService} from "../../../services/booking.service"; +import {User} from "../../../models/user"; +import {AuthService} from "../../../services/auth.service"; + +@Component({ + selector: 'app-flights-list', + templateUrl: './flights-list.component.html', + styleUrls: ['./flights-list.component.css'] +}) +export class FlightsListComponent implements OnInit { + flights: Flight[] = []; + user: User; + + constructor(private flightsService: FlightsService, + private bookingService: BookingService, + private auth: AuthService + ) { } + + ngOnInit() { + this.user = this.auth.getAuthenticatedUser(); + this.flightsService.getAll((result: Flight[]) => { + this.flights = result; + }) + } + + createBooking(id: number) { + if(this.user.role !== 'CUSTOMER') { + return; + } + + if(!confirm('Are you sure you want to book this flight?')) { + return; + } + + this.bookingService.createBooking(id, () => { + this.flightsService.getAll((result: Flight[]) => { + this.flights = result; + }) + }); + } + + removeFlight(id: number) { + if(!confirm('Are you sure you want to remove this flight?')) { + return; + } + + this.flightsService.remove(id, () => { + this.flightsService.getAll((result: Flight[]) => { + this.flights = result; + }) + }); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.css new file mode 100644 index 0000000..e69de29 diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.html new file mode 100644 index 0000000..01c9e29 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.html @@ -0,0 +1,4 @@ +
+

On-going Flights

+ +
diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.ts new file mode 100644 index 0000000..33fd770 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/home/home.component.ts @@ -0,0 +1,15 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-home', + templateUrl: './home.component.html', + styleUrls: ['./home.component.css'] +}) +export class HomeComponent implements OnInit { + + constructor() { } + + ngOnInit() { + } + +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.css new file mode 100644 index 0000000..e69de29 diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.html new file mode 100644 index 0000000..5631a4b --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.html @@ -0,0 +1,16 @@ +
+

Authentication

+ +
+ +
+ + + + + +
+ +
+
+
diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.ts new file mode 100644 index 0000000..e8dfd88 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.ts @@ -0,0 +1,22 @@ +import {Component, OnInit, ViewChild} from '@angular/core'; +import {NgForm} from "@angular/forms"; +import {AuthService} from "../../services/auth.service"; + +@Component({ + selector: 'app-login', + templateUrl: './login.component.html', + styleUrls: ['./login.component.css'] +}) +export class LoginComponent implements OnInit { + @ViewChild('loginForm') loginForm: NgForm; + + constructor(private auth: AuthService) { } + + ngOnInit() { + } + + verifyAccount() { + this.auth.login(this.loginForm.value); + } + +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.css new file mode 100644 index 0000000..e50b4a0 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.css @@ -0,0 +1,8 @@ +span { + color: orange; + font-weight: 600; +} + +.complete { + color: seagreen; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.html new file mode 100644 index 0000000..7a2a91a --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.html @@ -0,0 +1,22 @@ +
+

New Flight

+

{{ flight.allEmailsSent ? 'Sent' : 'Sending' }} emails to all users... [ {{ flight.sentEmails }} ]

+
+ +
+ + + + + + + + + +
+ +
+
+
diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.ts new file mode 100644 index 0000000..228d451 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/manage-flights/manage-flights.component.ts @@ -0,0 +1,42 @@ +import {Component, OnInit, ViewChild} from '@angular/core'; +import {Airplane} from "../../models/airplane"; +import {AirplaneService} from "../../services/airplane.service"; +import {FlightsService} from "../../services/flights.service"; +import {NgForm} from "@angular/forms"; +import {Flight} from "../../models/flight"; +import {interval} from "rxjs/internal/observable/interval"; + +@Component({ + selector: 'app-manage-flights', + templateUrl: './manage-flights.component.html', + styleUrls: ['./manage-flights.component.css'] +}) +export class ManageFlightsComponent implements OnInit { + @ViewChild('flightForm') flightForm: NgForm; + airplanes: Airplane[] = []; + flight: Flight = null; + + constructor(private airplaneService: AirplaneService, + private flightService: FlightsService) { } + + ngOnInit() { + this.airplaneService.getAll((result: Airplane[]) => this.airplanes = result); + } + + createFlight() { + this.flightService.create(this.flightForm.value, (flight: Flight) => { + this.flightService.notify(flight.id); + debugger + + this.flight = flight; + const interval = setInterval(() => { + if(this.flight.allEmailsSent) { + clearInterval(interval); + return; + } + + this.flightService.getOne(flight.id, (flight: Flight) => this.flight = flight); + }, 1000); + }); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.css new file mode 100644 index 0000000..e69de29 diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.html new file mode 100644 index 0000000..6c2fea6 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.html @@ -0,0 +1,3 @@ +
diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.ts new file mode 100644 index 0000000..3896dd0 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/nav-link/nav-link.component.ts @@ -0,0 +1,17 @@ +import {Component, Input, OnInit} from '@angular/core'; + +@Component({ + selector: 'app-nav-link', + templateUrl: './nav-link.component.html', + styleUrls: ['./nav-link.component.css'] +}) +export class NavLinkComponent implements OnInit { + @Input() link: string; + @Input() text: string; + + constructor() { } + + ngOnInit() { + } + +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.css new file mode 100644 index 0000000..5707f31 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.css @@ -0,0 +1,3 @@ +.nav-link { + cursor: pointer; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.html new file mode 100644 index 0000000..5065c47 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.html @@ -0,0 +1,26 @@ + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.ts new file mode 100644 index 0000000..1c1295f --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.ts @@ -0,0 +1,23 @@ +import { Component, OnInit } from '@angular/core'; +import {AuthService} from "../../services/auth.service"; +import {User} from "../../models/user"; + +@Component({ + selector: 'app-navbar', + templateUrl: './navbar.component.html', + styleUrls: ['./navbar.component.css'] +}) +export class NavbarComponent implements OnInit { + user?: User; + + constructor(private authService: AuthService) { } + + ngOnInit() { + this.user = this.authService.getAuthenticatedUser(); + this.authService.authChangeEvent.subscribe(() => this.user = this.authService.getAuthenticatedUser()); + } + + logout() { + this.authService.logout(); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.css new file mode 100644 index 0000000..e69de29 diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.html new file mode 100644 index 0000000..58cd3c1 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.html @@ -0,0 +1,26 @@ +
+

Registration

+ +
+ +
+ + + + + + + + + + + + + + + +
+ +
+
+
diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.ts new file mode 100644 index 0000000..0b1ff27 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/register/register.component.ts @@ -0,0 +1,24 @@ +import {Component, OnInit, ViewChild} from '@angular/core'; +import {UserService} from "../../services/user.service"; +import {NgForm} from "@angular/forms"; + +@Component({ + selector: 'app-register', + templateUrl: './register.component.html', + styleUrls: ['./register.component.css'] +}) +export class RegisterComponent implements OnInit { + @ViewChild('registerForm') registerForm: NgForm; + constructor(private userService: UserService) { } + + ngOnInit() { + } + + registerAccount() { + if(this.registerForm.errors) { + alert('err'); + return; + } + this.userService.create(this.registerForm.value); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/auth-http-interceptor.service.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/auth-http-interceptor.service.ts new file mode 100644 index 0000000..66b8e0a --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/auth-http-interceptor.service.ts @@ -0,0 +1,28 @@ +import { Injectable } from '@angular/core'; +import {HttpEvent, HttpHandler, HttpInterceptor, HttpRequest} from "@angular/common/http"; +import {Observable} from "rxjs/internal/Observable"; +import {AuthService} from "../services/auth.service"; + +@Injectable({ + providedIn: 'root' +}) +export class AuthHttpInterceptor implements HttpInterceptor { + + constructor(private auth: AuthService) { } + + intercept(req: HttpRequest, next: HttpHandler): Observable> { + if (!this.auth.isAuthenticated()) { + return next.handle(req); + } + + const user = this.auth.getAuthenticatedUser(); + + const requestClone = req.clone({ + setHeaders: { + 'Authorization': 'Basic ' + btoa(`${user.username}:${user.password}`) + } + }); + + return next.handle(requestClone); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/conf.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/conf.ts new file mode 100644 index 0000000..d08c567 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/conf.ts @@ -0,0 +1,3 @@ +export default { + basePath: 'http://localhost:8080' +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/routes.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/routes.ts new file mode 100644 index 0000000..8727433 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/configs/routes.ts @@ -0,0 +1,20 @@ +import {Route} from "@angular/router"; +import {HomeComponent} from "../components/home/home.component"; +import {LoginComponent} from "../components/login/login.component"; +import {RegisterComponent} from "../components/register/register.component"; +import {AnonymousGuard} from "../guards/anonymous.guard"; +import {CustomerGuard} from "../guards/customer.guard"; +import {BookingsComponent} from "../components/bookings/bookings.component"; +import {AdminGuard} from "../guards/admin.guard"; +import {ManageFlightsComponent} from "../components/manage-flights/manage-flights.component"; + +const routes: Route[] = [ + {path: '', redirectTo: 'home', pathMatch: 'full'}, + {path: 'home', component: HomeComponent}, + {path: 'bookings', component: BookingsComponent, canActivate: [CustomerGuard]}, + {path: 'login', component: LoginComponent, canActivate: [AnonymousGuard]}, + {path: 'register', component: RegisterComponent, canActivate: [AnonymousGuard]}, + {path: 'flights/manage', component: ManageFlightsComponent, canActivate: [AdminGuard]}, +]; + +export default routes; diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/admin.guard.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/admin.guard.ts new file mode 100644 index 0000000..2333409 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/admin.guard.ts @@ -0,0 +1,17 @@ +import { Injectable } from '@angular/core'; +import { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router'; +import { Observable } from 'rxjs'; +import {AuthService} from "../services/auth.service"; + +@Injectable({ + providedIn: 'root' +}) +export class AdminGuard implements CanActivate { + constructor(private auth: AuthService) {} + + canActivate( + next: ActivatedRouteSnapshot, + state: RouterStateSnapshot): Observable | Promise | boolean { + return this.auth.isAuthenticated() && this.auth.getAuthenticatedUser().role === 'ADMIN'; + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/anonymous.guard.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/anonymous.guard.ts new file mode 100644 index 0000000..5e5704a --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/anonymous.guard.ts @@ -0,0 +1,17 @@ +import { Injectable } from '@angular/core'; +import { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router'; +import { Observable } from 'rxjs'; +import {AuthService} from "../services/auth.service"; + +@Injectable({ + providedIn: 'root' +}) +export class AnonymousGuard implements CanActivate { + constructor(private auth: AuthService) {} + + canActivate( + next: ActivatedRouteSnapshot, + state: RouterStateSnapshot): Observable | Promise | boolean { + return !this.auth.isAuthenticated(); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/authenticated.guard.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/authenticated.guard.ts new file mode 100644 index 0000000..a0533d2 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/authenticated.guard.ts @@ -0,0 +1,17 @@ +import { Injectable } from '@angular/core'; +import { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router'; +import { Observable } from 'rxjs'; +import {AuthService} from "../services/auth.service"; + +@Injectable({ + providedIn: 'root' +}) +export class AuthenticatedGuard implements CanActivate { + constructor(private auth: AuthService) {} + + canActivate( + next: ActivatedRouteSnapshot, + state: RouterStateSnapshot): Observable | Promise | boolean { + return this.auth.isAuthenticated(); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/customer.guard.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/customer.guard.ts new file mode 100644 index 0000000..a1bfba2 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/guards/customer.guard.ts @@ -0,0 +1,17 @@ +import { Injectable } from '@angular/core'; +import { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router'; +import { Observable } from 'rxjs'; +import {AuthService} from "../services/auth.service"; + +@Injectable({ + providedIn: 'root' +}) +export class CustomerGuard implements CanActivate { + constructor(private auth: AuthService) {} + + canActivate( + next: ActivatedRouteSnapshot, + state: RouterStateSnapshot): Observable | Promise | boolean { + return this.auth.isAuthenticated() && this.auth.getAuthenticatedUser().role === 'CUSTOMER'; + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/airplane.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/airplane.ts new file mode 100644 index 0000000..e2db503 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/airplane.ts @@ -0,0 +1,4 @@ +export class Airplane { + id: number; + availableSeats: number; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/booking.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/booking.ts new file mode 100644 index 0000000..a595d68 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/booking.ts @@ -0,0 +1,8 @@ +import {User} from "./user"; +import {Flight} from "./flight"; + +export class Booking { + id: number; + user: User; + flight: Flight; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/flight.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/flight.ts new file mode 100644 index 0000000..0cfd49f --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/flight.ts @@ -0,0 +1,12 @@ +import {Airplane} from "./airplane"; + +export class Flight { + id: number; + fromCity: string; + toCity: string; + time: Date; + airplane: Airplane; + sentEmails: number; + seatsTaken: number; + allEmailsSent: boolean; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/user.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/user.ts new file mode 100644 index 0000000..77ecad1 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/user.ts @@ -0,0 +1,9 @@ +export class User { + id: number; + firstName: string; + lastName: string; + username: string; + email: string; + password: string; + role: string; +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/airplane.service.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/airplane.service.ts new file mode 100644 index 0000000..bc18736 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/airplane.service.ts @@ -0,0 +1,15 @@ +import { Injectable } from '@angular/core'; +import {HttpClient} from "@angular/common/http"; +import conf from "../configs/conf"; + +@Injectable({ + providedIn: 'root' +}) +export class AirplaneService { + + constructor(private http: HttpClient) { } + + getAll(callback) { + this.http.get(conf.basePath + '/airplanes').subscribe(callback, () => alert('Could not retrieve airplanes!')); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/auth.service.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/auth.service.ts new file mode 100644 index 0000000..d1291a1 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/auth.service.ts @@ -0,0 +1,52 @@ +import {Injectable} from '@angular/core'; +import {Router} from "@angular/router"; +import {HttpClient} from "@angular/common/http"; +import conf from "../configs/conf"; +import {User} from "../models/user"; +import {Observable} from "rxjs/internal/Observable"; +import {Subject} from "rxjs/internal/Subject"; + +@Injectable({ + providedIn: 'root' +}) +export class AuthService { + readonly authChangeEvent = new Subject(); + + constructor(private http: HttpClient, + private router: Router + ) { + } + + login(credentials: any) { + const options = { + headers: { + 'Authorization': 'Basic ' + btoa(`${credentials.username}:${credentials.password}`) + } + }; + + this.http.get(conf.basePath + '/users/profile', options).subscribe((data: any) => { + localStorage.setItem('user', JSON.stringify(data)); + this.authChangeEvent.next(); + this.router.navigate(['home']); + }, + (error) => { + this.authChangeEvent.next(); + alert('Could not login!'); + }); + } + + getAuthenticatedUser(): User | null { + const user = localStorage.getItem('user'); + return !!user ? JSON.parse(localStorage.getItem('user')) : null ; + } + + isAuthenticated(): boolean { + return !!localStorage.getItem('user'); + } + + logout() { + localStorage.removeItem('user'); + this.authChangeEvent.next(); + this.router.navigate(['login']); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/booking.service.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/booking.service.ts new file mode 100644 index 0000000..b39e278 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/booking.service.ts @@ -0,0 +1,23 @@ +import { Injectable } from '@angular/core'; +import {HttpClient} from "@angular/common/http"; +import conf from "../configs/conf"; + +@Injectable({ + providedIn: 'root' +}) +export class BookingService { + + constructor(private http: HttpClient) { } + + getAll(callback) { + this.http.get(conf.basePath + '/bookings').subscribe(callback, () => alert('Could not retrieve bookings!')); + } + + createBooking(flightId: number, success) { + this.http.post(conf.basePath + '/bookings', { flightId }).subscribe(() => success(), () => alert('Could not book this flight')) + } + + remove(id: number, success) { + this.http.delete(conf.basePath + '/bookings/' + id).subscribe(() => success(), () => alert('Could not remove this booking')) + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/flights.service.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/flights.service.ts new file mode 100644 index 0000000..c4c8f9d --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/flights.service.ts @@ -0,0 +1,32 @@ +import { Injectable } from '@angular/core'; +import {HttpClient} from "@angular/common/http"; +import {Flight} from "../models/flight"; +import conf from "../configs/conf"; + +@Injectable({ + providedIn: 'root' +}) +export class FlightsService { + + constructor(private http: HttpClient) { } + + getAll(callback) { + this.http.get(conf.basePath + '/flights').subscribe(callback, () => alert('Could not retrieve flights!')); + } + + create(value, success) { + this.http.post(conf.basePath + '/flights', value).subscribe((flight: Flight) => success(flight), () => alert('Could not create flight!')) + } + + getOne(id: number, success) { + this.http.get(conf.basePath + '/flights/' + id).subscribe((flight: Flight) => success(flight), () => alert('Could not retrieve flight!')); + } + + notify(id: number) { + this.http.post(conf.basePath + '/flights/' + id + '/notify', {}).subscribe(() => {}, () => alert('Could not notify users about this flight')); + } + + remove(id: number, success) { + this.http.delete(conf.basePath + '/flights/' + id).subscribe(() => success(), () => alert('Could not remove this flight!')); + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/user.service.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/user.service.ts new file mode 100644 index 0000000..f47aaff --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/user.service.ts @@ -0,0 +1,21 @@ +import { Injectable } from '@angular/core'; +import {HttpClient} from "@angular/common/http"; +import conf from "../configs/conf"; +import {User} from "../models/user"; +import {AuthService} from "./auth.service"; + +@Injectable({ + providedIn: 'root' +}) +export class UserService { + + constructor(private http: HttpClient, + private auth: AuthService + ) { } + + create(credentials) { + this.http.post(conf.basePath + '/users', credentials).subscribe((user: User) => { + this.auth.login(user); + }) + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/assets/.gitkeep b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/assets/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/browserslist b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/browserslist new file mode 100644 index 0000000..37371cb --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/browserslist @@ -0,0 +1,11 @@ +# This file is currently used by autoprefixer to adjust CSS to support the below specified browsers +# For additional information regarding the format and rule options, please see: +# https://github.com/browserslist/browserslist#queries +# +# For IE 9-11 support, please remove 'not' from the last line of the file and adjust as needed + +> 0.5% +last 2 versions +Firefox ESR +not dead +not IE 9-11 \ No newline at end of file diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/environments/environment.prod.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/environments/environment.prod.ts new file mode 100644 index 0000000..3612073 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/environments/environment.prod.ts @@ -0,0 +1,3 @@ +export const environment = { + production: true +}; diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/environments/environment.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/environments/environment.ts new file mode 100644 index 0000000..7b4f817 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/environments/environment.ts @@ -0,0 +1,16 @@ +// This file can be replaced during build by using the `fileReplacements` array. +// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. +// The list of file replacements can be found in `angular.json`. + +export const environment = { + production: false +}; + +/* + * For easier debugging in development mode, you can import the following file + * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. + * + * This import should be commented out in production mode because it will have a negative impact + * on performance if an error is thrown. + */ +// import 'zone.js/dist/zone-error'; // Included with Angular CLI. diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/favicon.ico b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..8081c7ceaf2be08bf59010158c586170d9d2d517 GIT binary patch literal 5430 zcmc(je{54#6vvCoAI3i*G5%$U7!sA3wtMZ$fH6V9C`=eXGJb@R1%(I_{vnZtpD{6n z5Pl{DmxzBDbrB>}`90e12m8T*36WoeDLA&SD_hw{H^wM!cl_RWcVA!I+x87ee975; z@4kD^=bYPn&pmG@(+JZ`rqQEKxW<}RzhW}I!|ulN=fmjVi@x{p$cC`)5$a!)X&U+blKNvN5tg=uLvuLnuqRM;Yc*swiexsoh#XPNu{9F#c`G zQLe{yWA(Y6(;>y|-efAy11k<09(@Oo1B2@0`PtZSkqK&${ zgEY}`W@t{%?9u5rF?}Y7OL{338l*JY#P!%MVQY@oqnItpZ}?s z!r?*kwuR{A@jg2Chlf0^{q*>8n5Ir~YWf*wmsh7B5&EpHfd5@xVaj&gqsdui^spyL zB|kUoblGoO7G(MuKTfa9?pGH0@QP^b#!lM1yHWLh*2iq#`C1TdrnO-d#?Oh@XV2HK zKA{`eo{--^K&MW66Lgsktfvn#cCAc*(}qsfhrvOjMGLE?`dHVipu1J3Kgr%g?cNa8 z)pkmC8DGH~fG+dlrp(5^-QBeEvkOvv#q7MBVLtm2oD^$lJZx--_=K&Ttd=-krx(Bb zcEoKJda@S!%%@`P-##$>*u%T*mh+QjV@)Qa=Mk1?#zLk+M4tIt%}wagT{5J%!tXAE;r{@=bb%nNVxvI+C+$t?!VJ@0d@HIyMJTI{vEw0Ul ze(ha!e&qANbTL1ZneNl45t=#Ot??C0MHjjgY8%*mGisN|S6%g3;Hlx#fMNcL<87MW zZ>6moo1YD?P!fJ#Jb(4)_cc50X5n0KoDYfdPoL^iV`k&o{LPyaoqMqk92wVM#_O0l z09$(A-D+gVIlq4TA&{1T@BsUH`Bm=r#l$Z51J-U&F32+hfUP-iLo=jg7Xmy+WLq6_tWv&`wDlz#`&)Jp~iQf zZP)tu>}pIIJKuw+$&t}GQuqMd%Z>0?t%&BM&Wo^4P^Y z)c6h^f2R>X8*}q|bblAF?@;%?2>$y+cMQbN{X$)^R>vtNq_5AB|0N5U*d^T?X9{xQnJYeU{ zoZL#obI;~Pp95f1`%X3D$Mh*4^?O?IT~7HqlWguezmg?Ybq|7>qQ(@pPHbE9V?f|( z+0xo!#m@Np9PljsyxBY-UA*{U*la#8Wz2sO|48_-5t8%_!n?S$zlGe+NA%?vmxjS- zHE5O3ZarU=X}$7>;Okp(UWXJxI%G_J-@IH;%5#Rt$(WUX?6*Ux!IRd$dLP6+SmPn= z8zjm4jGjN772R{FGkXwcNv8GBcZI#@Y2m{RNF_w8(Z%^A*!bS*!}s6sh*NnURytky humW;*g7R+&|Ledvc- + + + + Client + + + + + + + + + + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/karma.conf.js b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/karma.conf.js new file mode 100644 index 0000000..b6e0042 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/karma.conf.js @@ -0,0 +1,31 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular-devkit/build-angular'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage-istanbul-reporter'), + require('@angular-devkit/build-angular/plugins/karma') + ], + client: { + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + coverageIstanbulReporter: { + dir: require('path').join(__dirname, '../coverage'), + reports: ['html', 'lcovonly'], + fixWebpackSourcePaths: true + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false + }); +}; \ No newline at end of file diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/main.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/main.ts new file mode 100644 index 0000000..28bfa9e --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/main.ts @@ -0,0 +1,13 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +platformBrowserDynamic().bootstrapModule(AppModule) + .catch(err => console.error(err)); + diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/polyfills.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/polyfills.ts new file mode 100644 index 0000000..d310405 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/polyfills.ts @@ -0,0 +1,80 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** IE9, IE10 and IE11 requires all of the following polyfills. **/ +// import 'core-js/es6/symbol'; +// import 'core-js/es6/object'; +// import 'core-js/es6/function'; +// import 'core-js/es6/parse-int'; +// import 'core-js/es6/parse-float'; +// import 'core-js/es6/number'; +// import 'core-js/es6/math'; +// import 'core-js/es6/string'; +// import 'core-js/es6/date'; +// import 'core-js/es6/array'; +// import 'core-js/es6/regexp'; +// import 'core-js/es6/map'; +// import 'core-js/es6/weak-map'; +// import 'core-js/es6/set'; + +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** IE10 and IE11 requires the following for the Reflect API. */ +// import 'core-js/es6/reflect'; + + +/** Evergreen browsers require these. **/ +// Used for reflect-metadata in JIT. If you use AOT (and only Angular decorators), you can remove. +import 'core-js/es7/reflect'; + + +/** + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). + **/ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + +/** + * By default, zone.js will patch all possible macroTask and DomEvents + * user can disable parts of macroTask/DomEvents patch by setting following flags + */ + + // (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + // (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + // (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + + /* + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + */ +// (window as any).__Zone_enable_cross_context_check = true; + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js/dist/zone'; // Included with Angular CLI. + + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/styles.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/styles.css new file mode 100644 index 0000000..90d4ee0 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/styles.css @@ -0,0 +1 @@ +/* You can add global styles to this file, and also import other style files */ diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/test.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/test.ts new file mode 100644 index 0000000..1631789 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/test.ts @@ -0,0 +1,20 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/dist/zone-testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: any; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tsconfig.app.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tsconfig.app.json new file mode 100644 index 0000000..190fd30 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tsconfig.app.json @@ -0,0 +1,11 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/app", + "types": [] + }, + "exclude": [ + "test.ts", + "**/*.spec.ts" + ] +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tsconfig.spec.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tsconfig.spec.json new file mode 100644 index 0000000..de77336 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tsconfig.spec.json @@ -0,0 +1,18 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/spec", + "types": [ + "jasmine", + "node" + ] + }, + "files": [ + "test.ts", + "polyfills.ts" + ], + "include": [ + "**/*.spec.ts", + "**/*.d.ts" + ] +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tslint.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tslint.json new file mode 100644 index 0000000..52e2c1a --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/tslint.json @@ -0,0 +1,17 @@ +{ + "extends": "../tslint.json", + "rules": { + "directive-selector": [ + true, + "attribute", + "app", + "camelCase" + ], + "component-selector": [ + true, + "element", + "app", + "kebab-case" + ] + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/tsconfig.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/tsconfig.json new file mode 100644 index 0000000..916247e --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "baseUrl": "./", + "outDir": "./dist/out-tsc", + "sourceMap": true, + "declaration": false, + "module": "es2015", + "moduleResolution": "node", + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "target": "es5", + "typeRoots": [ + "node_modules/@types" + ], + "lib": [ + "es2017", + "dom" + ] + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/tslint.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/tslint.json new file mode 100644 index 0000000..6ddb6b2 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/tslint.json @@ -0,0 +1,131 @@ +{ + "rulesDirectory": [ + "node_modules/codelyzer" + ], + "rules": { + "arrow-return-shorthand": true, + "callable-types": true, + "class-name": true, + "comment-format": [ + true, + "check-space" + ], + "curly": true, + "deprecation": { + "severity": "warn" + }, + "eofline": true, + "forin": true, + "import-blacklist": [ + true, + "rxjs/Rx" + ], + "import-spacing": true, + "indent": [ + true, + "spaces" + ], + "interface-over-type-literal": true, + "label-position": true, + "max-line-length": [ + true, + 140 + ], + "member-access": false, + "member-ordering": [ + true, + { + "order": [ + "static-field", + "instance-field", + "static-method", + "instance-method" + ] + } + ], + "no-arg": true, + "no-bitwise": true, + "no-console": [ + true, + "debug", + "info", + "time", + "timeEnd", + "trace" + ], + "no-construct": true, + "no-debugger": true, + "no-duplicate-super": true, + "no-empty": false, + "no-empty-interface": true, + "no-eval": true, + "no-inferrable-types": [ + true, + "ignore-params" + ], + "no-misused-new": true, + "no-non-null-assertion": true, + "no-redundant-jsdoc": true, + "no-shadowed-variable": true, + "no-string-literal": false, + "no-string-throw": true, + "no-switch-case-fall-through": true, + "no-trailing-whitespace": true, + "no-unnecessary-initializer": true, + "no-unused-expression": true, + "no-use-before-declare": true, + "no-var-keyword": true, + "object-literal-sort-keys": false, + "one-line": [ + true, + "check-open-brace", + "check-catch", + "check-else", + "check-whitespace" + ], + "prefer-const": true, + "quotemark": [ + true, + "single" + ], + "radix": true, + "semicolon": [ + true, + "always" + ], + "triple-equals": [ + true, + "allow-null-check" + ], + "typedef-whitespace": [ + true, + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + } + ], + "unified-signatures": true, + "variable-name": false, + "whitespace": [ + true, + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type" + ], + "no-output-on-prefix": true, + "use-input-property-decorator": true, + "use-output-property-decorator": true, + "use-host-property-decorator": true, + "no-input-rename": true, + "no-output-rename": true, + "use-life-cycle-interface": true, + "use-pipe-transform-interface": true, + "component-class-suffix": true, + "directive-class-suffix": true + } +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/FlightsApplication.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/FlightsApplication.java deleted file mode 100644 index f406568..0000000 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/FlightsApplication.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.pssc.hph.flights; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication -public class FlightsApplication { - - public static void main(String[] args) { - SpringApplication.run(FlightsApplication.class, args); - } - -} - diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/BookingsController.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/BookingsController.java deleted file mode 100644 index 2132eae..0000000 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/controllers/BookingsController.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.pssc.hph.flights.controllers; - -import com.pssc.hph.flights.entities.Booking; -import com.pssc.hph.flights.services.BookingsService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; - -@RestController -@RequestMapping("/home") -public class BookingsController { - - @Autowired - BookingsService bookingsService; - - @GetMapping("bookings") - public List getAll(){ - return bookingsService.getAllBookings(); - } -} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Booking.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Booking.java deleted file mode 100644 index 34360bd..0000000 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/Booking.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.pssc.hph.flights.entities; - -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import javax.persistence.*; - -@Entity -@Data -@NoArgsConstructor -@AllArgsConstructor -public class Booking { - - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - @Column(name = "id_booking") - private int id_booking; - @Column(name = "from") - private String from; - @Column(name = "to") - private String to; - @Column(name = "date_year") - private String date_year; - @Column(name = "date_hour") - private String date_hour; - @Column(name = "traveltime") - private String travel_time; -} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/dto/AirplaneDTO.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/dto/AirplaneDTO.java deleted file mode 100644 index 44a79f7..0000000 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/entities/dto/AirplaneDTO.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.pssc.hph.flights.entities.dto; - -import javax.persistence.Entity; - -@Entity -public class AirplaneDTO { -} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/BookingsRepository.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/BookingsRepository.java deleted file mode 100644 index fad986f..0000000 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/repositories/BookingsRepository.java +++ /dev/null @@ -1,7 +0,0 @@ -package com.pssc.hph.flights.repositories; - -import com.pssc.hph.flights.entities.Booking; -import org.springframework.data.jpa.repository.JpaRepository; - -public interface BookingsRepository extends JpaRepository { -} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/BookingsService.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/BookingsService.java deleted file mode 100644 index d8d9aa4..0000000 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/java/com/pssc/hph/flights/services/BookingsService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.pssc.hph.flights.services; - -import com.pssc.hph.flights.entities.Booking; -import com.pssc.hph.flights.repositories.BookingsRepository; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - -import java.util.List; - -@Service -public class BookingsService { - - private BookingsRepository bookingsRepository; - - @Autowired - public BookingsService(BookingsRepository bookingsRepository) { - this.bookingsRepository = bookingsRepository; - } - - public List getAllBookings(){ - return bookingsRepository.findAll(); - } -} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/application.properties b/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/application.properties deleted file mode 100644 index 8920501..0000000 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/main/resources/application.properties +++ /dev/null @@ -1,3 +0,0 @@ -spring.datasource.username=root -spring.datasource.password= -spring.datasource.url=jdbc:mysql://localhost:3306/hph diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/src/test/java/com/pssc/hph/flights/FlightsApplicationTests.java b/POPESCU_ALEXANDRU/Proiect/Flights/src/test/java/com/pssc/hph/flights/FlightsApplicationTests.java deleted file mode 100644 index 32e0cb7..0000000 --- a/POPESCU_ALEXANDRU/Proiect/Flights/src/test/java/com/pssc/hph/flights/FlightsApplicationTests.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.pssc.hph.flights; - -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.junit4.SpringRunner; - -@RunWith(SpringRunner.class) -@SpringBootTest -public class FlightsApplicationTests { - - @Test - public void contextLoads() { - } - -} - From 0337c047edb4ea1a5e131152d517c08bfece590a Mon Sep 17 00:00:00 2001 From: alxpps Date: Wed, 9 Jan 2019 13:32:53 +0200 Subject: [PATCH 5/7] Added 'event sourcing' --- .../Proiect/Flights/client/package-lock.json | 13 +++++++---- .../Flights/client/src/app/app.module.ts | 4 +++- .../app/components/event/event.component.css | 0 .../app/components/event/event.component.html | 23 +++++++++++++++++++ .../app/components/event/event.component.ts | 22 ++++++++++++++++++ .../app/components/login/login.component.ts | 4 ++-- .../components/navbar/navbar.component.html | 1 + .../Flights/client/src/app/configs/routes.ts | 4 +++- .../Flights/client/src/app/models/events.ts | 9 ++++++++ .../client/src/app/services/event.service.ts | 15 ++++++++++++ 10 files changed, 87 insertions(+), 8 deletions(-) create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.css create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.html create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/models/events.ts create mode 100644 POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/services/event.service.ts diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/package-lock.json b/POPESCU_ALEXANDRU/Proiect/Flights/client/package-lock.json index 39aace2..22c4f2e 100644 --- a/POPESCU_ALEXANDRU/Proiect/Flights/client/package-lock.json +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/package-lock.json @@ -3749,7 +3749,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -4164,7 +4165,8 @@ "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -4220,6 +4222,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -4263,12 +4266,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/app.module.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/app.module.ts index 5eb05ab..e5d34f0 100644 --- a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/app.module.ts +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/app.module.ts @@ -17,6 +17,7 @@ import { FlightsListComponent } from './components/home/flights-list/flights-lis import { BookingsComponent } from './components/bookings/bookings.component'; import {AuthHttpInterceptor} from "./configs/auth-http-interceptor.service"; import { ManageFlightsComponent } from './components/manage-flights/manage-flights.component'; +import { EventComponent } from './components/event/event.component'; @NgModule({ declarations: [ @@ -28,7 +29,8 @@ import { ManageFlightsComponent } from './components/manage-flights/manage-fligh NavLinkComponent, FlightsListComponent, BookingsComponent, - ManageFlightsComponent + ManageFlightsComponent, + EventComponent ], imports: [ BrowserModule, diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.css b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.css new file mode 100644 index 0000000..e69de29 diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.html new file mode 100644 index 0000000..13c1252 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.html @@ -0,0 +1,23 @@ +
+

History

+ +
+ + + + + + + + + + + + + + + + + +
Event TypeDetailsDateUser
{{ event.type }}{{ event.details }}{{ event.timestamp | date:'medium' }}{{ event.user.id }}
+
\ No newline at end of file diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.ts new file mode 100644 index 0000000..fd2c1e6 --- /dev/null +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/event/event.component.ts @@ -0,0 +1,22 @@ +import { Component, OnInit } from '@angular/core'; +import { Events } from 'src/app/models/events'; +import { EventService } from 'src/app/services/event.service'; +import { AuthService } from 'src/app/services/auth.service'; + +@Component({ + selector: 'app-event', + templateUrl: './event.component.html', + styleUrls: ['./event.component.css'] +}) +export class EventComponent implements OnInit { + events: Events[] = []; + + constructor(private eventService : EventService, + private auth: AuthService) { } + + ngOnInit() { + this.eventService.getAllEvents((result : Events[]) => + this.events = result); + } + +} diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.ts b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.ts index e8dfd88..d321381 100644 --- a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.ts +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/login/login.component.ts @@ -1,6 +1,6 @@ -import {Component, OnInit, ViewChild} from '@angular/core'; +import {Component, OnInit, ViewChild} from "@angular/core"; import {NgForm} from "@angular/forms"; -import {AuthService} from "../../services/auth.service"; +import {AuthService} from '../../services/auth.service'; @Component({ selector: 'app-login', diff --git a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.html b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.html index 5065c47..76ed1a2 100644 --- a/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.html +++ b/POPESCU_ALEXANDRU/Proiect/Flights/client/src/app/components/navbar/navbar.component.html @@ -14,6 +14,7 @@