From 11edfc246a275fdcee8a34644f75b9446f079f12 Mon Sep 17 00:00:00 2001 From: SeeChen Date: Fri, 29 Nov 2024 16:32:11 +0800 Subject: [PATCH] Update --- CascadingStyleSheets/Projects/projects.css | 562 ++++++++++++++++++++- File/Icon/ico_company.png | Bin 0 -> 8814 bytes File/Icon/ico_location.png | Bin 0 -> 23091 bytes File/Icon/ico_school.png | Bin 0 -> 14937 bytes File/Icon/ico_website.png | Bin 0 -> 11516 bytes File/Projects/seechen.github.io/intro.txt | 3 + JavaScript/Projects/projects.js | 100 +++- spa.html | 183 ++++++- 8 files changed, 843 insertions(+), 5 deletions(-) create mode 100644 File/Icon/ico_company.png create mode 100644 File/Icon/ico_location.png create mode 100644 File/Icon/ico_school.png create mode 100644 File/Icon/ico_website.png create mode 100644 File/Projects/seechen.github.io/intro.txt diff --git a/CascadingStyleSheets/Projects/projects.css b/CascadingStyleSheets/Projects/projects.css index 725b290..0ed528e 100644 --- a/CascadingStyleSheets/Projects/projects.css +++ b/CascadingStyleSheets/Projects/projects.css @@ -12,12 +12,39 @@ --project-Details-top: 0; --project-Details-left: 0; + + --project-Details-div-flex-direction: row; + + --project-Details-Directory-height: 94vh; + --project-Details-Directory-width: 20vw; + --project-Details-Directory-overflow: hidden scroll; + --project-Details-Directory-border-right: 0.1em solid var(--font-color-title); + --project-Details-Directory-border-top: 0em solid var(--font-color-title); + + --project-Details-Directory-flex-direction: column; + + --project-Details-Content-height: 94vh; + --project-Details-Content-width: 80vw; + --project-Details-Content-overflow: hidden scroll; } @media screen and (max-width: 750px) { :root { + --project-Details-div-flex-direction: column-reverse; + + --project-Details-Directory-height: 8vh; + --project-Details-Directory-width: 100vw; + --project-Details-Directory-overflow: scroll hidden; + --project-Details-Directory-border-top: 0.1em solid var(--font-color-title); + --project-Details-Directory-border-right: 0em solid var(--font-color-title); + + --project-Details-Directory-flex-direction: row; + + --project-Details-Content-height: 92vh; + --project-Details-Content-width: 100vw; + --project-Details-Content-overflow: hidden scroll; } } @@ -81,6 +108,8 @@ border-radius: 1em; border: 0.15em solid var(--font-color-normal); + + cursor: pointer; } #box_projectsPage > div:nth-child(3) > .project_border > div:first-child { @@ -202,15 +231,20 @@ left: var(--project-Details-left); top: var(--project-Details-top); - width: 10vw; + width: 0; height: 0; pointer-events: none; + border: 0em solid var(--font-color-normal); + border-radius: 1em; + background: rgba(255, 255, 255, 0.8); + opacity: 0; + z-index: 10000; - background: red; - transition: width 0.25s, height 0.15s; + transition: width 0.15s, height 0.15s, border 0.15s; + } #project_details.small-window { @@ -218,5 +252,527 @@ width: 20vw; height: 20vw; + border: 0.15em solid var(--font-color-normal); + border-radius: 1em; + + pointer-events: initial; + opacity: 1; + transition: width 0.25s, height 0.15s; } + +#project_details.ready-to-full { + + transition: all 0.5s; +} + +#project_details.full-window { + + width: 100vw; + height: 100vh; + + border: 0em solid var(--font-color-normal); + border-radius: 0em; + background: var(--bg-color); + + pointer-events: initial; + + left: 0; + top: 0; + opacity: 1; + + overflow: hidden; +} + +#project_details.full-window #project_details_header { + + position: relative; + + width: 100vw; + height: 6vh; + + box-shadow: 2px 2px 2px var(--font-color-title); + + z-index: 2; +} + +#project_details.full-window #project_details_header > p:first-child { + + position: absolute; + + width: 6vh; + height: 6vh; + + text-align: center; + + left: 0; + top: 0; + + line-height: 6vh; + + cursor: pointer; +} + +#project_details.full-window #project_details_header > p:nth-child(2) { + + position: absolute; + + width: calc(100vw - 12vh); + height: 6vh; + + left: 0; + right: 0; + top: 0; + + margin: auto; + + text-align: center; + line-height: 6vh; + + font-size: var(--font-size-2em); + font-family: var(--fontface-title); +} + +#project_details.full-window > div:nth-child(2) { + + position: absolute; + display: flex; + flex-direction: var(--project-Details-div-flex-direction); + + width: 100vw; + height: 94vh; + + top: 6vh; + left: 0; + + z-index: 1; + overflow: hidden; +} + +#project_details.full-window > div:nth-child(2) #project_details_directory { + + height: var(--project-Details-Directory-height); + width: var(--project-Details-Directory-width); + + overflow: var(--project-Details-Directory-overflow); + + border-right: var(--project-Details-Directory-border-right); + border-top: var(--project-Details-Directory-border-top); + box-sizing: border-box; + + display: flex; + flex-direction: var(--project-Details-Directory-flex-direction); +} + +#project_details.full-window > div:nth-child(2) #project_details_content { + + position: relative; + + height: var(--project-Details-Content-height); + width: var(--project-Details-Content-width); + + overflow: var(--project-Details-Content-overflow); +} + +#project_details.full-window > div:nth-child(2) #project_details_directory::-webkit-scrollbar, +#project_details.full-window > div:nth-child(2) #project_details_content::-webkit-scrollbar { + + display: none; +} + +#project_details.full-window > div:nth-child(2) #project_details_directory div { + + width: 100%; + box-sizing: border-box; +} + +#project_details.full-window > div:nth-child(2) #project_details_directory div p { + + position: relative; + + font-size: var(--font-size-2em); + font-family: var(--fontface-title-2); + color: var(--font-color-normal); + padding-left: 5%; + + width: 90%; + height: 8vh; + line-height: 8vh; + + box-sizing: border-box; + + cursor: pointer; +} +#project_details.full-window > div:nth-child(2) #project_details_directory div p::before { + + position: absolute; + + top: 0; + bottom: 0; + left: 0; + right: 0; + + width: 80%; + height: 100%; + + content: ""; + margin: auto; + + border-bottom: 0.05em solid var(--font-color-normal); +} + +#project_details.full-window > div:nth-child(2) #project_details_directory div.dir_level { + + max-height: 8vh; + height: max-content; + box-sizing: border-box; + overflow: hidden; + + transition: all 1s; +} + +#project_details.full-window > div:nth-child(2) #project_details_directory div.dir_level:has( > p.expand) { + + max-height: 1000vh; + height: max-content; + transition: all 1s; +} + +#project_details_content .content-block { + + position: absolute; + + left: 0; + top: 0; + + width: 100%; + + padding-top: 1em; + padding-left: 1em; + padding-right: 1em; + + box-sizing: border-box; + + opacity: 0; + transition: opacity 0.5s; +} + +#project_details_content > div.content-display { + + opacity: 1; + transition: opacity 0.5s; +} + +#project_details_content .content-block .content-block-title-1 { + + position: sticky; + + top: 0; + + font-size: var(--font-size-3em); + font-family: var(--fontface-title-4); + + background: var(--bg-color); + + border-bottom: 0.05em solid #CCC; +} + +#project_details_content .content-block .content-block-content-1 { + + font-size: calc(1.5 * var(--font-size-1em)); + font-family: var(--fontface-content-3); + + text-indent: 2ch; + line-height: 1.5em; + + margin-top: 1em; + margin-bottom: 1em; + + white-space: pre-wrap; +} + + +#box_Projects_Git { + + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} + +#box_Projects_Git > div { + + width: 100%; + + margin-top: 1em; + margin-bottom: 1em; + padding-top: 1em; + + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + border: 0.15em solid #CCC; + border-radius: 1em; +} + +#box_Projects_Git > div > p:first-child img { + + height: 4em; +} + +#box_Projects_Git > div > div:nth-child(2) { + + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + + font-size: var(--font-size-normal); + font-family: var(--fontface-content); + + flex-wrap: wrap; +} + +#box_Projects_Git > div > div:nth-child(2) > div { + + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + margin: 1em; + + box-sizing: border-box; +} + +#box_Projects_Git > div > div:nth-child(2) > div > p:nth-child(2) { + + padding: 0.15em 0.5em; + overflow: scroll hidden; + + border-radius: 0.5em; + + max-width: 60%; + + color: var(--bg-color); + background: var(--font-color-title); + + user-select: text; +} + +#box_Projects_Git > div > div:nth-child(2) > div > p:nth-child(2)::-webkit-scrollbar { + display: none; +} + +#box_Projects_Git > div > p:nth-child(3), #box_Projects_Git > div > p:nth-child(4) { + + padding: 1em; + font-family: var(--fontface-content-4); + font-size: var(--font-size-normal); +} + +#box_Projects_License pre { + + font-size: var(--font-size-1em) !important; + font-family: var(--fontface-content-4) !important; +} + +#box_Projects_License #license_translate { + + font-size: var(--font-size-normal); + color: var(--font-color-normal); + font-family: var(--fontface-content); + + margin: 0.5em; +} + +#box_Projects_Author { + + display: flex; + flex-direction: row; + justify-content: center; + flex-wrap: wrap; + + box-sizing: border-box; +} + +#box_Projects_Author > div { + + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + border-radius: 1em; + border: 0.15em solid var(--font-color-title); + + width: clamp(40vh, 31vw, 90vw); + box-sizing: border-box; + + padding: 1em; + margin: 1em auto; +} + +#box_Projects_Author > div > div:first-child { + + display: flex; + flex-direction: row; + justify-content: start; + align-items: baseline; + + width: 100%; + + border-bottom: 0.15em solid #CCC; + + box-sizing: border-box; +} + +#box_Projects_Author > div > div:first-child img { + + display: inline-block; + + height: 4em; + width: 4em; + + object-fit: cover; + + border-radius: 1em; + border: 0.15em solid var(--font-color-title) +} + +#box_Projects_Author > div > div:first-child p { + + display: inline-block; + + font-size: var(--font-size-2em); + font-family: var(--fontface-title-4); + + padding-left: 0.15em; + + transform: translateY(-0.1em); +} + +#box_Projects_Author > div > div:nth-child(2) { + + display: flex; + flex-direction: column; + justify-content: start; + + padding: 0.5em; + + width: 100%; +} + +#box_Projects_Author > div > div:nth-child(2) a { + + position: relative; + + font-size: var(--font-size-normal); + color: var(--font-color-normal); + font-family: var(--fontface-content); + + margin: 0.15em; + text-indent: 3ch; +} + +#box_Projects_Author > div > div:nth-child(2) a::before { + + content: ""; + + width: 100%; + height: 100%; + + position: absolute; + + top: 0; + left: 0; + + opacity: 0.5; +} + +#box_Projects_Author > div > div:nth-child(2) a.profile_school::before { + + background: url(/File/Icon/ico_school.png); + + background-position: center left; + background-repeat: no-repeat; + background-size: contain; +} + +#box_Projects_Author > div > div:nth-child(2) a.profile_company::before { + + background: url(/File/Icon/ico_company.png); + + background-position: center left; + background-repeat: no-repeat; + background-size: contain; +} + +#box_Projects_Author > div > div:nth-child(2) a.profile_location::before { + + background: url(/File/Icon/ico_location.png); + + background-position: center left; + background-repeat: no-repeat; + background-size: contain; +} + +#box_Projects_Author > div > div:nth-child(2) a.profile_website::before { + + background: url(/File/Icon/ico_website.png); + + background-position: center left; + background-repeat: no-repeat; + background-size: contain; +} + +#box_Projects_Author > div > div:nth-child(2) a.profile_github::before { + + background: url(/File/Icon/ico_github.png); + + background-position: center left; + background-repeat: no-repeat; + background-size: contain; +} + +#box_Projects_Author > div > div:nth-child(2) a.profile_email::before { + + background: url(/File/Icon/ico_gmail.png); + + background-position: center left; + background-repeat: no-repeat; + background-size: contain; +} + +#box_Projects_Update figure { + + padding: 1em; + margin-top: 1em; + + box-sizing: border-box; + border: 0.15em solid #CCC; + border-radius: 1em; +} + +#box_Projects_Update figure figcaption { + + color: var(--font-color-title); + + font-size: var(--font-size-2em); + font-family: var(--fontface-title-2); + + text-decoration: underline; +} + +#box_Projects_Update figure ol { + + color: var(--font-color-normal-selected); + font-size: var(--font-size-normal); + text-indent: 1ch; + + padding-left: 2em; + + font-family: var(--fontface-content-4); +} \ No newline at end of file diff --git a/File/Icon/ico_company.png b/File/Icon/ico_company.png new file mode 100644 index 0000000000000000000000000000000000000000..c4946d43530a3c85c96e4ea6f49d0b34e93669bc GIT binary patch literal 8814 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�rCy1PK;mHbmw;0 z-i%in7z`jQ4}|9>7}OE2abgV*d9b6FE0w?m|6Z<#PyuN%%o_=OFagp9m4WcW3%{F^ zZMd3JV&vlOJN{$ywmtNo*#V!%L!W@3uyZ!$WXd;{fwPKTAuEo}H~U|Qz&HxX)heHX zN)W>SX>^A99fJNbx2m;qB=Kq7R69a|`1~X{+^gAuSEYn&Z zdMix41O{3|*9d1CDnCJ7s3KF^cB<7msSJ3ezwY-fT*r$a>EdIsP%Vj&H6jMqosI)iVm$Y~J5KPmvZNZl%N)=l2K1Dr`tFhKa=$osVdq zfj8Q#P&Q)!PnR>#e8n>3e88Vcylgd%k~u5+!->tu*yYjLHT0jySya$>i;)YQdxQJW z1okHNCJdn34o(Su?WKiXn(sQVaSFI;LuVs}5cqv-Ry_Isgy|-5>U!m{wIWID3E&u; zK^q@a_)_M&K>9mz_2&V0(+Au!i&~XdUe+CG_Cf>jt@)AISH$>v z%%#Rww+z}o@@{RL-lppd)O<1E?)#DXLuVAe`?b{`Gn9i_78gl zVvVj3{vo^KA2>dT^Bcq&k@-v6HNp`)@x?8Ys`}1wRV4jp)1?@4ja)>X&%9w_-%gJ( zp^4vV{ZYktp#fB_f67-_!Y7oAp}UYWWUW3Pg_#`jjM$y`NP9erbG4{)cUN9`ZPR>L zbYv*Xb{&-=0|k?91&&X2uSJ0Pc;4#fZDDe`hKhV61(c8!B#(R4r=>>6tFAVl{94Y) zqQTFik*-Smrs%X%1zjmW*|I}%VS?>)++rFinb3Cp+?NxB; z`wg4ltK{Wv_oya2dLK3-X~_kB{T^Xyp@LiphA!!E6eX%?cIKFCoiRl= zVAvuI0w}UFt})K9=pnQn$4bzDr8zIU94B2=T)l1zpxnn++Klw7=_gmqR%|1vAai@J zCnu>+y>G{md0-F>3%dj9w5~H+R0epDP7XM|7i(RFrN?#d7Jnzkunh}bFsCFc4sz#RNZC9wzOSzz&*H6Nb+$=J{$n;3Fp*A_CLtOjid zQ>TrY5Q)CRy_YC9;-NyFryn0U4ShJPw1x|MJsSez%na}chRLc5-QI5^&bnZRTo z20^?pxmL63u)G*<^3?w=7b5UzcrzFBn;rc$^q~SwCxx;uKXiaNq8T>To0M~2XwFh? z*T`QZPUOdxmJ*u8?Bp8kY&xq&8Kgr-62=x=M!zQIFsF`lbT$(*S?w+K*(4XMI_~;4 zF&j`3*f-bk!jLc0(#Z&$O|hBiPWp&Y5h-%?L&~(Dq_KFiTs2K{jrcf6uSzQEB=P#& zVvWtD(8Yqj0fuIlObSmsC1@n;R5E+*yiSJ&miKGT?!%GU#8IB674Ipi1e`!5DnIWt ze&vf50kz(O($ldgIByvGgGb@nwnt|aBR70*2Cm0v)%?DBbNUD2U_PL)tCG>8JWwLC z{Pg7Nn+~ZbomUd!`)3vL$-G~_w!QMR(`zo$13Wp9Yk&3Aos=}GJdDK@52VO-G0zH_ zX+?`KEWoSJZTP3$f9GPMI;uRpgp>0Lz6_juw?VyAV{luLn~ee4A=9gLKI`K`kG9`h zTWAj^u27LN$@fHjq(dN4&2bN`f19u&-1Tif^^+Ffile~cFFcnQ@&0Y@xQEk3kmhVKS`n^}_&Zn8{I$O2jFXqrfUYv^BNQ_o!rrI$A z@6H<@0l8&;?!dbFm_ik-qoD60%kqp18_u}@`r!U#e<=3V1w@q3tq?8S)*5B3VfmSvopQ!aUOzU1N?;l1DI zCOs9jtgI?YExJ}S%S#&_EH?{ubqxuX@D{fsfnG7b=uGo{xR zMW*0^oGZR-jP=Zhx4*~B7Cn}}WThp4vg_g0DXM6n+>8#C{f z(rhmBbiOyxhF=GQQcD~_`JCC=lEw?+D$_EZ_QxPgpMV%17oAF}ggvsaALJpX9~`#Q zIAycl_YL#QJ3H5?jc*qOH>h?rA0EhxUIo=K8H_9B`8}C)4R-5Rp9IU&PxHEXsD1wt ztkFhzs@no6)ELP=*R@(bgXx!h{tD$%`+#EeOJ(PR2dK7aj4v^E3|d~f4-v?6THE+S zppLPsH@^no4f3;1x=*f524L?|ntIC?Uzwl_bEEo)b`Bmz4{V$r1MdfHzK`F=ZagFM z$vl|S_i|AE6@rX|<)8B2S1pTgAz2dpDrQwU2Aoda1XU61)=i)fQpx9Y*Oqd3wjnw^ zC*~IP2#1pbc!?$e{FA`^HLY$TNCxdv<2NS@@|i<(Ecn`6rsV8@RWeX(lb%HwJtWA1 z5h?AM!fi3qIwvw_j2Tajw;i<86xT?zZGRZ*+N&b{qmn3XoshQ2Dj9vu!euPb0fc=% zWSn*;T%SX|Tp%i3x`+G)KJ%Ivrbd*Z+3;Kd)+kY412Vlq=>MBf$Z}&;X?AYb1hsNa z_#(`}O@oGj@Hc}9qAoBu0JiI8(CgnN>QMtZw7X@lv$C^d0K3Bj#qLo=n8fjMss<8U zP5CypSyara5ucTwRR=}I$GGULz%(TvfJ}(ANn$6+5_x7v^Tlsgr`>nrb?`#(w!D6S zTSD3g>Wo0(HL|woyI2j|ql?+cgi2z*}F}D6Owa) za{#*otfAT&D$kWZ!2vPxl}5w0lWzTkp9lOIf}pbX&Jp0}#&=@PK^b(Ck&ZJ1MSF$k zAOOG8DC2@@JwFLgi%k3C+J5|sVF|J0a*+{OmdUyAdZpD1E*m5JF`6!_I8f9H< zxgNN@wKr-SK$UpHksZg7Z;V`ssG&&AOUhV*Y=okYr+~PC8Bk9jlZo4yQ-=UVBF}?; zjgiOz74g0>Mw@|E#@o%+CXBZkwWD0k?4Gzs2sizaXdho25|q5gY5~Zs(>lm_L5qHr zi`1&?u2biNgq_F$v*gQFwowkpdB&s(f0OZnB=RfZXW_Op%BSvB5O18k#gQH~9Z6!oPBRG@2%paRXO%vIT$VxL$H>dFKX-<|nzfR9vUF^dJW zeuMIN4tc*N%OnN3iNeb{fY2m`W3lD{v`|9?V6|gJi6;6#1is0(iVW#3m}Gw2X{tuN zI7sLZ{ss%_0r-U)w=G%P2;c*2&1N+L3-k7}J@P)SC`EWhZEPapTtViNMt!sYw+bdB zK27*#F6{-eBzElAcYS07D2?B921{L`QP4`)9{r+fHuN)V7bRsb%41rfR1nMr>2$qV;u8}!4U6p(qtOT%+28eOD_P*c*{&Al+Jpg#P zmrkRQR!Jj(f@BlAKPY3L0dj~^k!S>peDj%@LoM;%ACcGIDU!F4>Djl?p z>pjB80ieLWi?n@t7lOumn4!-Bilhk$o-yVogo+<~R}4G6hi<%yUCD3MZVO}l1t5WA zME4)nCD9wP64<;X=UM&lgOj-wVx+(G>DOgBhU&G+OizOfr^ul^=DV809 z75Tz1xdd{}Y3N-mNhl{($hG=1EfMh0 zNSZ9@1Ar9~=%|eocQ(OL1$|To1@O$mpY5`V6;LJH@)wOz@1_mi>bn7$XbIqfxhT1q zL6qa73?~W@yzr@xc&f?apDK7DIP7)+ev6Sp#^;`w6ovP?u;suzzr-*Pp}=_{pE5YJ zR{$yHst*_U`Cm;yr-fZ~*+feD%|*8m;34sV26K8RxYTpN$tfr_gaN4CyL|rUX(0Il zf47W8ZQLcPgK5D%6ZZKB$18uN&TQ4J90!l3cH+;q_xlXTAmiVHb$r}lDN+c$j!`el zC0eyQi;_7HV6u7WdePo?@QvX(SF`rBq>roybiywc3Xe~FcUUM3=z1`uKLZ@XZ^jtF zZm1$eiL)f;6sEl}*=`@(dy^szyOFVdlTDq>8K61Z<$RzMg^13*R%PMaxcWyQoso3P ziP}AT6lgjmtq%7V0PjwLdbp8$EUO97Yo1$E1&$Izgn4Xgx@-Xa2?v0=xHrrV$+d29 z))o5!3fS?qIff2z*@U`S;-Z^?%z{#4O0$KW0zmxeg|SR)K3(0b8{)memjJ~7-gST> zt)lelaHN5rnbO3E0E<9HRKgP8fC&T5=tlrc|6Xw-mUbchp($V@l$@=G67n`NvE*{0 z8Lg&5zl(aEp~t{$0YUs~3vJ(NpWf{E>Su+Ns$>E6&ogLOq==b42(An0?>_*~S2~37mr7uxTo$3~!=YQ1>)qKG7&wsaXdp^3ALSj1 za>xW{t8hhquP#@qN>mw~oyoDmK%XYscUkAj%+K2JisDF_yW|M57D}^XwijoF(cLZ^!o$lm5BC} zi;-Ri1@3kp(N6__xy};>Ol&&uS7pRrzNhX#uv{(nU>bEVYylJ(H@&$Z6 zYpI|B7CuHXDN?czS4M-f77CO=?#@f80MF=`C^BAd8TchTnsxD(fQ6xCImlxXNahlA z${2j60PJ~GCT$#3aiek^sQ&E=$|dEmy3zFty+HgHjjH3^{4bvccJqTN&TNN;u+GSp zLC@?|fvWL{F6^TMuG2vd z|Cbep4)OT&=U8O_P+S9G$w+pT)~o=yZ}W`wC!|BaHj%3S!MKw|_05ww#9jn%ZbyVc z%0GZSIe=?@2)Nr`+c9I%Dk#bYs3o??eL|sUH9%3*7V8A=uyWA0U0VU0_Xi3%$E3ZJ zgC%iPc0NZH0=;mAWC&KA2E~F>Z}K8MX^g6I3kv-QM*!FSb8Zbh!p=H; zzld{8{gz(f56E%->bwSLmJVYeEbu1U zpb}sZ`a#_3Wr1mc(q(7LK|fI=ceSQZnl){tO56p{|GP$*8KXzz(>iYOiuw2UonlY6a3^G zov|Nh2Kot3R{_pHW=@5*$LjDU_<8F(ye@S>Bo;j_k4beLQ*8t=|F4w3Ohy%$covC? z1jd@Gj>mC$FmRaEU;tiD6IKT_r)!XsfkxgR@2)S-JhxZ3DmDwi{v>7K0P5-`jcMSM z2j?c<+soV-RY5G2&~6apN!x*Y0NM!zz*!T4=$}CNONN5OiI)XV&f857`{q*Na}{3z zh>m_nx$#sWS{SfCeO};p9{s}+HL9Ha#JCsWyh~24s$?m^cck1Y0PXZz)o{qzr^965StKgM`F8~Ya*|n<%Z>r{+l0%UYr4drU85LbZUmsAQzD!$ z+8;eB_;ny~;Wa6<05#7KVmhq1i{0-K0jyTn@lUe~cu-qyyi^04CrAxM(Z!SUKvH!LV z>CGK}luKCXIKVOr({2=dbQUKSFND_s@u(CZ{jb*ez27w5l=m)T#gXpY6hSG-2usEx zBwn7)Ycb=u{h|24iU29S@d*E%8)aHuM#xHU+}}_BdzfR!DYhuvBYqI{33LIFM<|0P znXH19>+xy^JwM1MhnlOjMB;o?q=lk`)k%(-_koBs0K?9dodCDU$ek>A!aKM{rh3nB zQM_k38~{Sa2KV*vWxJp=Ci?fZcPnir3V~*_Fh(T^fy}*i{AHo7JC(d%G~ZMW?;q=Yp82j@j-JmlAh7z zU_zl8kRCQgc6SR8He_)EkV<1px-p622E(t|aB6iG)6qPz{7Bd_7^R_Z7&?>y3=BtX+p-9v_l;c*6)i%(p;&RD` z@3`RFWs_6VcljiMX>b_f3#rw*@b?(sIikC%xPr3K%cy+XGjz$}3IN~VQUy!a+{S<8 zR^KhquqM9=9FCo*UM-n3hvA|mx&zKhCJ2p0s?P`>o@cSWPm+`X=;ze$TGvQWi;rAU z%kvzm`V5-SFwMcZw%D}Oa7>_3(l4sUT2~Vdf3br(mBckF<$<7>QqWbENg$baPN{R% zE@92w#EB*_BcILaJOQdzADy54u^W4-SL-v^?R-0pwjQ?!u zS#S~Lpm*Y}u#s3htP98CG09%LQ9wNX(^mi^T%%1V*@19QycY$w8%YddhBk&586A*? z1hQ-N?|M){2-8QN}mQRT&0O&G_a*dQ~AbVW3Ruw-navSyuKvX9GlEuY$)wp zG@@sKVI*1@Nv|<7<#EH-Wr>KKP0yn|6Y!t_U@JY6gRzG}Gn^GqD{SjpAt9TLDO8E! z_w7cx-eW3&8ydtB%<#Cs2b8h*vh``7I-14B&u492`!CCJU=PL))(rUjJXUHuMmALPdC7S9}`&feuu^ zm)+0!&UpNKGX8s0G5l~=*u^2e@Q4eB)u8LdEAJfbh)9G*g$JQOjEj2g;fA}oezOG<4Cg`Pla|U#Q_Lk zKE;NkLgOdf3R;7@3{|uHRR*IA{fY0~{_hZwHqY1-L+Uio-Sen6kw1~<)d2%_BKZi8 z7H61sz<#|EUc|qqFDJg}=>}WKp-~VjqSg{c`+*;l{6(<&r^+2jNQRpHt0b1B3hP2! z9rvCp>URMJa@W`#b`rzvrO0xKu%%<| z-wzLIG+l3Y+wiMxYq6Us&|6?-(1yNOF+(2_3P6)4RuQz3#-;I&F}zvlUd2lUw^P@A zd~PW*FMmzUqpP+a!qsLHgr&&4)x)kFx|l}#ToGLqHuxfPd--u?ecwaxKIpX)xzJc) zp9R-QGXsv@HTU)B4u%Nhd^6rJ41V7yStr@XZDy)7^kDMFCGr=cvv-ShtD8Ef;9TiL zvz%u&-Zhc^g;lP_~ISzG3JxFvP%JJ3-yJK6?3;p3!}^ zg5_-*f}iV^EP9zUe$FuLm)!;bQZUiFlZ=}>>&i#47B2ud1M zf1ox#Ml(OXe->UHbfYR4Q+RVpUO*2{-tJD_p~PwWRVi55PXy`#GyM?b zC2Ib-gszYf0{**L)1|!Ie*}oMGW4zeq0`hd^^G_2sMYue{jdHODpW#3Ls?9YN2;hcdPi?px+y( zdDjrsahoTtyavj8o4NN8DC#Zj>i-II4!O*!$wBq{eQc3Dy2RWh?Sec&9*&D)=5y0Y zR|Q_iF^V3SPE4w>ZQ*vOC;OBEs0_5s7CAkd;XbTGKO75Z1}+u$#SEeOw8tYEhQR$B zCSG7p+5QXGb7D{4L;|uU_t5E04&n!s++!uM5gYwid|f{r@#ISb5ahvq557ErtMQ%` z2`jrd7JpK@i)o{KOwDr7{)m6Ja-&O$R zL2J6(8s7vRhaHy`51Tx$K%|`{ae+hVoGZs~JE`)I+WGJ6!bWMpEwMnZ788UGV_VkT zNzJ?(;2*&~@1kbwMxa!f||Z(F_uqDFW%iSlhkg?5l^D;ny$ zOV~^ZH}8HhrGfNq(sqlvX(oUSmfHsVupavF2oTt<=~JPd>so}Kzxfis#IWbPO7DaU^8;nwD>$D3fvr*X*(l5BjY9)w8D zsA0Ec4(^-|U5aPVo;#WLxL!A0WL&fw{Su$-M?wlGJRJXc+0Nf8B%=~)T9=Ye~lluZo!QT!j*!;Ty-Q$60ad)ZnCKqYb zXdkVzUN-abAIXnOu_c+MdB~E+CW`-el{+Gc&i#cudvj~z&*-jN9UL)1t^x>!2i_5u zz4XyGvFxFpshAF=WKHzr7wbOorZ$A^{qeC0CrP{I&4=ID6S?)o-Z72fs@(Y%i4HDlfpYr8=JT z_r68B%4Z5~>{tB$yk6u`FcobDE#Cm=X^l@~#5Z1Yy9(M_lOZI?PD`551LM<9=UOW^ zY%@w(aNd{eBJh|$`u_ZP|7Ql!T@sD3KWr>Nc!N;ERXO)j*S9wSaOr`)+}>jyf(m1tyqX83^~TqfGC z#}Lh(G!HUduFtK}#|Jdz863R6ho0Nyuz(ovpk?~(pEUy-S{rn(^QbSM8blc3qi*ND zDW%Ryf&SR|Hz;)A=f}{yjB97rr~N+5p2SQlc$m@KK%ePSZj{MvA`lA&_C-c;<0S~~ zryNso-Ym=VEpszCZY-gVkg8y-A0C+t&j{KE)Kzv*`a(rw-4oPbQnOn4v%DyPuSdBR z)F-s}+c0(kg*Vw53R3kD`7xqt%i)VcBvaR0J4Lvfpvhj3_6%NDwAI)Pv?@0bs{g%n z7>HXd=~Gi=6r+Wt%4cW(Z}011PK{ZF_DJZ~#u5s3a{FF(F|Fr-s}an%i#f9>xh2j8 zgs}2NLq63DS)W7#jp^RyugdS6fvG&6 z)>Us}Wed9QuIpN~GB%$V>;1WQ*jM^}c03 z27Oyr8ZD!VviOjtqtxMrHV4MvGI^SlJVfR{E0Fs`xW<%L^Wy-w9F%Ro<+^YadR4*oB!2>E#qxUU-VUFQs?*i3UWL6D+=M+iGVB z19q^OWenK4QW^BvF$L~<}RCkb_lK8k%=bH5P@!q)6 z{FU)PO*qXzr<``3=ikddLvuf}f47%f6Z}FpWxW$*b=2{A_Qev=s`8J^tv;!S->Ugh z2(Naz*C&ZLI;ZelwU=qYDF`HsUL?D#g?U_PA!NV5(f_h||BF88ZO-VvBN?ogZ|8-g zfX>~Kb+g8;f_Hc2&{uL2Yb)4Y-P)9YW>jE)6wO(uly&yQ*kyk9H?9QFZl z&-VO0vDAQ(y1PZ(lwrMJH^x~fBS zd~(qDuofSGW$%}Cjf3(QurkSC_KwC*Dd}%SFOoFxq^e0A{O4Z!UWF7g)ULqTrGCOg zEnBI0<9GAeU}X5&^A(Y-`5Ah0$+JbPF|F@2LpF%j*u{pWq`>F73q=>+3nh-LA#aHu zhd1uF>Nul3H4}Nq!9;IDAEkheE2dye3A(F9bjo*|fLuSU- z-0Di6L6@JUYOj^W{#MNy+w%A6%&DN;d6;Oq?9pDGxM!8jjc3GA42@OF*}7DWi$ zqQc*<2(!qWOXsN)@9)~!qx`~1MTL6z{p!4p>D?e4x4h_wR76dBi@1v|&QnvR)pgI+ zgOllA-h2^`QAF5TzQuD(ZFerAFFap0BxT%Cg8A}M+$% zwsUIN_82Yi`IGG#tm%~9&#_rGm%s8F)1=a=3u0>HFRb?b^pKBNu8+~TzC$D!^nIii zDK_LHDsr_bpCFE%f&rE-?c;>dF}K-^rvgTo{n9^?tNzEWD@y#IHm(Hd8sj$#j{rS?&pdR z^#2N?`Ny`vA{Hd%CjkJtlRi6qk=?YN(`P|TZx`4zUa>5SVqP&Po9=%yX;vp2kPL@U zpByT$#5#ZT|D8bdj{~_ej}6X=Nix>BLON7!nkNmPxx-rv=JHuuj~*vP3^Lu91)pk5 zZiL63+MGvw9@O|Dy+>WJ$6=&*6rpKga6Rl2f=eLLwak-nZ>k@*h-ekh_^-O_lj7smS!dv=$l|sVxVi7-B&1Z^ zUs44EOk-osz=cZD{n0Bn=ejW(eX4_?Mh`5oX2^>sv{8-bLJ22HH~h zkwS7Nfc^wqI?r8zbosyubz3hrFmkUHY6ufq|2=1wfK05;ZKrFPiysxBTCWIGl z^u~W~T;4i?u0p?0{=fMQCu_fu61dMrPR;49@VHnNJ`n>z??LXI=Jf*WuEb1ejBdPw zHl+%0SMLbqBNs?7-B@T#Q0o?0T2Ri(%^m0}hxf_tT}x@9K$+;rMV_rdelD-JQ>gPs zu5_P`^wJp@zTVALPsl2@LI_=!WIU-5-iO@LZWok-88a5p5=wj&MYdZvkp4IXFo9}9 zeIdIuq*%7n*>O0EYam?H=A9^`IO&((BUw^B<2+}b!W)4qqGx8w5-Y<8UE!#4;V8@>4~C+l>q43i+c_aE@j4Zd zmsJKZlNbiGS61DQ_UiAt>6Q1=cOIqZemTdD1wZtGDwvIhB*TrN2VUe1&bLe)`ZxJ1 z|1zV$IwIpqe?%1JG_Lg)wN$KRS7}X}3i(z{%F?N-2$Ky(t}E(BBypzXFU3NvU5BIax9!}oUy z-hv)-l1Yf*iu+~F>chH+Iq@p$P;q4l5XSFH@L*XW3Zcxw!8B~4*J)?VbdS8R=YH?= zj7!8Fo|4~A(YZGy{}#C9n=WOTIs!Wa{;>yzp{GM|ifqBMaQ8nsq$3Mv27z>!){G(J zRMbSQ12Og1#lsMj!Z8D~eO1Jciy})d+y}g^t3;)`1E?G7VbX?1mIHt@xpd;#)dYjO z|9)p|kC2B?Prf=t+X!jB%2%vPGRa-nDwS3Dlm7tUl5giQCsouj-*pv74bU@6&lJJo z{Y!Pxa;XLeNG*zdY)ilx=2cx?_y%5|e=Z>P8LEa}Wg zB_^CunJiPM*l(0k3G%@Sns7)~{ToVHfh2Ou+0t#?>ryv^XLq^b}P%uO~vTJ=YKq0f32EsrN-tc|Q#<4%PLJ*_tl3hcn2D zmn>0i`mwsw>+tafbJ7pjjO8c0+#W*NDRu}%SX%D2qt1XNu61{qYLh)N|I9y9F$ z5sVw;nX2ZDC(+!0xVEUHPU#X(N59#{5Rjy65C5gNBvD-qn+=ps3QB7 zA5?RM6SF&?o}nTD1~aoZ!?FAYUTm&&fy(REG*2grp^CAc?w#k0qrw%JS`U_tVNDCi zS{VTe)#S*;uPslGObBUUcelDf-4Db6QYx)>a0l5!xOPE3>jG_)NzmiE`?;pmf66h+ zcw2$#^u~9m%bv}^*{N=?Q0up!o#2*t+c`Y`SCSFU4WJ32ov%U@lo|4Fn-Y7cjGBAM z13?^@ge>q(D9l%gwXUn{cKsyA=xuC+eA^GlBzqI$@2w=1Ld$<4=uUc9o2{IOd zxNkfIObP{W-0Z}-nGx%9dwYNBdn=<~=Ug2(qJ?qn7-1K@KPcsB0;yfF%Cg1W&z1yi zdaJjNcQ)n_q7~ZV=DqM&0OiE5RZa#(``DG0dcB$2R z$4Pe&aLO~Jj8*c2feQZJT3^>5F>TEE5N-{R4IseQ-J_GtJ$Sg)4ylK6eV z@VuV)YwT3l#&*KF_3=m)UN;0P6~+&!PRekvQ3Ym8bpp+nj<7r|E0Bfuc*JyWYYQ!R znE3(O3TYiuWh8bV^O{PcJ~M0%r#ZVgLQ;0p?JghilJ2hke(Kq|UI=*-Ricr7tLXbh ztuUE6*}h|}3uu}TlVDsoyS=Bh_~s+{-;fm2Q%fap7C3D`hu)Iqs+-~MH`hd8U*>Ja z|7i`99e$9XVh@~;^je$uVxK7V4!`#BiV7Kl5(IDw_mBB=11;*53mxzXp7hWjZTSG) z(K}@$4HGqA! z_Xrvp)aGddYGJD$SijOgtAF!G(OSlj#|%?moNw4}8RdPb@yv7ceAuK|_kOc8%MHj( zBL61K*0Rz}5+GAufL>cq(sj4yN~icN))C9F(k|=WC5~wKKBk$L{N@Xftq+w6_n#(& zLVbyRdDaEX8h1&XBJ+>OA61_(39KF7PZVEL{%#Rq^T0}!DH1X?Ug~yU_AE_&#dWp|7XQ8_SXJfzN1wee zyGfm0^j+%v?SfUo^(=;#NY8`n>8uaqRWxd~k8w0^-`?wb?AnK(>5Ft^Q&iwRUbw|l z5XpC^`d-%saCgS4P4DHxiGLH0{=T_Y4R7lZut%}lQ!lgh>3O{utwlzyOwN(6-!aKs z%wyReuRv5d@!IKPYRaWG1NEAR!ebN-vxvTZR-|}+lRPYlBXVanz*=81+FyEkH~e}k zOgaNI6h)1zuABYzn%8DG({O%&300G7?aroUBvOO1MQJS^Zx*2sHK-46#X;2m=6~Mm zy9fE_rj_aRr<_jA;2rrN1}3KPji0+o@meN%qCEvW4>YfM2o)$D=%+$^@b1Ym!8|xO zA~3u%yBlhS_PqDCvisOX^dfH)>{D$7g0$&M(hbOm? z*$l+zAZ~|N>pq{=c=ENIosmwY7mWpN)BM|wBejk9j`$oAP1RrK?cz(1z)1=2wy2~{O-AJUKp+q~{c{$%n(nh3k>=zB=XW0}GrY1w_dkBPR z$_oc3g#U4^jNzt$yg%+dBqaxf{DnCsn~E(daC$0eCi}Jvsz5sw4;*ANeVng946|Gs z33RzC6GX3JxIxG|ROGX@RW7Gld`B|4M&Zcg?=k@BFXSI-3 z$cHcCQ~@MpQQO75K1e1NPvr}}~JGO}DlRRKH>p~lq; z*)2Wtg-R;N(TG)@Fo_^UZwJGRQ*ZE~8exNZ2A(RT?lx+T>c!Vvh@vfLbX_aydFR$b z!}&M=qtNj0fR}~TF*NtknuhMEwn;9QA1%|KwDo)|VHC@jd^kT(Tfb-^68QH4>Q{5U3jjyBK(SlL-thfZ!`53U)AOvx&P zZP;#1!ZCM_8UglDuHdA2TW+7kZzvZG^|klsV{d@N^?Zd=mm-L_0%n8bd;RL0$n3+% zXdR1+*$O=#hG7x>=SD2_#e0yQ$_%C%tx-z}fBvY>UE0i7#p#7Kw{EjZ>$+=;4x49T zn#PEY?5B*oesb&*5;z4EQwSv6=eP$h5OeUg05^`m(f#PyUFX_tKEccI}Ov6 zea7?|eB)yGRfuNSq=nOJH8Crlou86StR`Xlp?!h^k60s(^()R3!o2@tv$c&?wxu`n WN+edqH0?paGvMTK65U|um-s*YQE%)3 literal 0 HcmV?d00001 diff --git a/File/Icon/ico_school.png b/File/Icon/ico_school.png new file mode 100644 index 0000000000000000000000000000000000000000..fcb29db4225cfa138962412441a3635aca2bf16c GIT binary patch literal 14937 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 literal 0 HcmV?d00001 diff --git a/File/Projects/seechen.github.io/intro.txt b/File/Projects/seechen.github.io/intro.txt new file mode 100644 index 0000000..d650f9b --- /dev/null +++ b/File/Projects/seechen.github.io/intro.txt @@ -0,0 +1,3 @@ +fdsafjni +fdalmsfkldjakfdafd +fdksafmnkjfnjk \ No newline at end of file diff --git a/JavaScript/Projects/projects.js b/JavaScript/Projects/projects.js index 63e0dd1..a8fb79b 100644 --- a/JavaScript/Projects/projects.js +++ b/JavaScript/Projects/projects.js @@ -28,6 +28,11 @@ export const SeeChen_ProjectsPage = { bindEvent: async () => { + document.querySelector("#box_projectsPage > div:nth-child(3)").addEventListener("click", (e) => { + + window.eventBus.emit("projectMouseClick", { e }); + }); + document.querySelector("#box_projectsPage > div:nth-child(3)").addEventListener("mousemove", (e) => { window.eventBus.emit("projectMouseMove", { e }); @@ -42,6 +47,23 @@ export const SeeChen_ProjectsPage = { window.eventBus.emit("projectMouseLeave", { e }); }); + + document.querySelector("#project_details_header > p:first-child").addEventListener("click", (e) => { + + window.eventBus.emit("projectDetailsCloseClick", { e }); + }); + + document.querySelectorAll(".dir_title").forEach(ele => { + ele.addEventListener("click", (e) => { + + window.eventBus.emit("projectDetailsDirExpand", { e }); + }); + }); + + document.querySelector("#project_details_directory").addEventListener("click", (e) => { + + window.eventBus.emit("projectDetailsDirClick", { e }); + }); }, registerEvent: async () => { @@ -51,12 +73,34 @@ export const SeeChen_ProjectsPage = { projectMouseMove: SeeChen_ProjectsMouseEvent.mouseMove, projectMouseEnter: SeeChen_ProjectsMouseEvent.mouseEnter, projectMouseLeave: SeeChen_ProjectsMouseEvent.mouseLeave, + projectMouseClick: SeeChen_ProjectsMouseEvent.mouseClick, + + projectDetailsCloseClick: SeeChen_ProjectsDetailsMouseEvent.closeClick, + + projectDetailsDirExpand: SeeChen_ProjectsDetailsDirEvent.expandDir, + projectDetailsDirClick: SeeChen_ProjectsDetailsDirEvent.clickDir, } Object.entries(projects_EvnetHandler).forEach(([event, handler]) => { window.eventBus.on(event, handler); }); + + let isTouchScreen = 'ontouchstart' in window; + + if (isTouchScreen || true) { + const projects_EvnetHandler = { + + projectMouseMove: SeeChen_ProjectsMouseEvent.mouseMove, + projectMouseEnter: SeeChen_ProjectsMouseEvent.mouseEnter, + projectMouseLeave: SeeChen_ProjectsMouseEvent.mouseLeave, + } + + Object.entries(projects_EvnetHandler).forEach(([event, handler]) => { + + window.eventBus.off(event, handler); + }); + } }, clearUp: () => { @@ -120,5 +164,59 @@ const SeeChen_ProjectsMouseEvent = { document.querySelector("#project_details").classList.remove("small-window"); } }, - mouseClick: () => {} + mouseClick: ( + event + ) => { + + const { e } = event; + + if (e.target.classList.contains("project_border")) { + + document.querySelector("#project_details").classList.add("ready-to-full"); + setTimeout(() => { + document.querySelector("#project_details").classList.add("full-window"); + }, 100); + } + } +} + +const SeeChen_ProjectsDetailsMouseEvent = { + + closeClick: ( + event + ) => { + + document.querySelector("#project_details").classList.remove("full-window"); + setTimeout(() => { + document.querySelector("#project_details").classList.remove("ready-to-full"); + }, 600); + } +} + +const SeeChen_ProjectsDetailsDirEvent = { + + expandDir: ( + event + ) => { + + const { e } = event; + + e.target.classList.toggle("expand"); + console.log("click") + }, + + clickDir: ( + event + ) => { + + const { e } = event; + + if (e.target.classList.contains("details_Dir_option")) { + + document.querySelector(".content-display").classList.remove("content-display"); + + const targetDiv = `box_Projects_${e.target.id.split("_")[1]}`; + document.querySelector(`#${targetDiv}`).classList.add("content-display"); + } + } } diff --git a/spa.html b/spa.html index 4e7fc3e..f7145e6 100644 --- a/spa.html +++ b/spa.html @@ -170,7 +170,187 @@ -
+
+
+

+

_title_

+
+ +
+
+
+

Introduction

+

Git

+

Features

+

Guide

+

Documentation

+

License

+

Community

+

FAQs

+

Update Log

+

Collaborator

+ +
+
+
+
+ +
+

Introduction

+
Especially thanks to the guiding principals, I think it’s fair to say if you are testing your component or app the same way you would instruct a human to test it in production, then you are doing it right. If your component is taking an API call, and formatting it into Markdown, then you should test that it is actually happening correctly. How the component is rendering (and mimicking it in your test) is an example of testing implementation details. Testing what the component renders is not.I know it’s a fine line, but I think you should include your last line. I also think it’d be great if you could find a way to query by something other than test-id.是的,这种顺序基本可行,因为它提供了呈现项目相关信息的逻辑流程。但是,细微的调整可以改善用户导航并提高清晰度。以下是对当前结构的分析和建议的改进:
+
+
+ +
+ +
+

+
+
+

HTTPS

+

https://github.com/SeeChen/seechen.github.io.git

+

Copy

+
+
+

SSH

+

git@github.com:SeeChen/seechen.github.io.git

+

Copy

+
+
+

Download ZIP File

+

View on GitHub

+
+
+

+
+
+

HTTPS

+

https://github.com/SeeChen/seechen.github.io.git

+

Copy

+
+
+

SSH

+

git@github.com:SeeChen/seechen.github.io.git

+

Copy

+
+
+

Download ZIP File

+

View on GitHub

+
+
+

+
+
+

HTTPS

+

https://github.com/SeeChen/seechen.github.io.git

+

Copy

+
+
+

SSH

+

git@github.com:SeeChen/seechen.github.io.git

+

Copy

+
+
+

Download ZIP File

+

View on GitHub

+
+
+ +
+
+

Introduction

+
 a Especially thanks to the guiding principals, I think it’s fair to say if you are testing your component or app the same way you would instruct a human to test it in production, then you are doing it right. If your component is taking an API call, and formatting it into Markdown, then you should test that it is actually happening correctly. How the component is rendering (and mimicking it in your test) is an example of testing implementation details. Testing what the component renders is not.I know it’s a fine line, but I think you should include your last line. I also think it’d be great if you could find a way to query by something other than test-id.是的,这种顺序基本可行,因为它提供了呈现项目相关信息的逻辑流程。但是,细微的调整可以改善用户导航并提高清晰度。以下是对当前结构的分析和建议的改进:
+
+
+ +
+
+ +
+ +
+

LICENSE

+

本项目使用 MIT 开源许可证进行开发

+

许可证协议详情请查看 www.example.com

+
+
+

中文

+

本翻译仅供参考,原文请查看这里,或点击这里

+
这是中文的开源许可证
+
+
+

Introduction

+
GNU GENERAL PUBLIC LICENSEVersion 3, 29 June 2007
+
+
+ +
+
+ +
+
+

2000.08.06

+
+
Fruit
+
    +
  1. Apple
  2. +
  3. Pear
  4. +
  5. Orange
  6. +
+
+
+
+ + +
+
+
@@ -180,3 +360,4 @@ +