From 42ede42f6206d4e2be03a913afab578a2235d573 Mon Sep 17 00:00:00 2001 From: kangfenmao Date: Wed, 8 Jan 2025 12:44:01 +0800 Subject: [PATCH] feat: narrow layout --- .../src/assets/fonts/icon-fonts/iconfont.css | 51 +++-- .../assets/fonts/icon-fonts/iconfont.woff2 | Bin 3860 -> 3768 bytes .../src/pages/home/Inputbar/Inputbar.tsx | 205 +++++++++--------- .../pages/home/Messages/MessageMenubar.tsx | 4 +- .../src/pages/home/Messages/Messages.tsx | 57 ++--- .../src/pages/home/Messages/NarrowLayout.tsx | 24 ++ .../src/pages/home/Messages/Prompt.tsx | 2 +- src/renderer/src/pages/home/Navbar.tsx | 14 +- src/renderer/src/providers/OpenAIProvider.ts | 12 +- src/renderer/src/store/settings.ts | 10 +- 10 files changed, 215 insertions(+), 164 deletions(-) create mode 100644 src/renderer/src/pages/home/Messages/NarrowLayout.tsx diff --git a/src/renderer/src/assets/fonts/icon-fonts/iconfont.css b/src/renderer/src/assets/fonts/icon-fonts/iconfont.css index 0f00ab67..c49c6ae6 100644 --- a/src/renderer/src/assets/fonts/icon-fonts/iconfont.css +++ b/src/renderer/src/assets/fonts/icon-fonts/iconfont.css @@ -1,88 +1,91 @@ @font-face { - font-family: 'iconfont'; /* Project id 4753420 */ - src: url('iconfont.woff2?t=1733224456443') format('woff2'); + font-family: "iconfont"; /* Project id 4753420 */ + src: url('iconfont.woff2?t=1736309723926') format('woff2'), + url('iconfont.woff?t=1736309723926') format('woff'), + url('iconfont.ttf?t=1736309723926') format('truetype'); } .iconfont { - font-family: 'iconfont' !important; + font-family: "iconfont" !important; font-size: 16px; font-style: normal; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } -.icon-at1:before { - content: '\e7df'; +.icon-at:before { + content: "\e623"; } -.icon-at:before { - content: '\e630'; +.icon-icon-adaptive-width:before { + content: "\e87a"; } .icon-a-darkmode:before { - content: '\e6cd'; + content: "\e6cd"; } .icon-ai-model:before { - content: '\e827'; + content: "\e827"; } .icon-ai-model1:before { - content: '\ec09'; + content: "\ec09"; } .icon-gridlines:before { - content: '\e942'; + content: "\e942"; } .icon-inbox:before { - content: '\e869'; + content: "\e869"; } .icon-business-smart-assistant:before { - content: '\e601'; + content: "\e601"; } .icon-copy:before { - content: '\e6ae'; + content: "\e6ae"; } .icon-ic_send:before { - content: '\e795'; + content: "\e795"; } .icon-dark1:before { - content: '\e72f'; + content: "\e72f"; } .icon-theme-light:before { - content: '\e6b7'; + content: "\e6b7"; } .icon-translate_line:before { - content: '\e7de'; + content: "\e7de"; } .icon-history:before { - content: '\e758'; + content: "\e758"; } .icon-hide-sidebar:before { - content: '\e8eb'; + content: "\e8eb"; } .icon-show-sidebar:before { - content: '\e944'; + content: "\e944"; } .icon-appstore:before { - content: '\e792'; + content: "\e792"; } .icon-chat:before { - content: '\e615'; + content: "\e615"; } .icon-setting:before { - content: '\e78e'; + content: "\e78e"; } + diff --git a/src/renderer/src/assets/fonts/icon-fonts/iconfont.woff2 b/src/renderer/src/assets/fonts/icon-fonts/iconfont.woff2 index 9a6c9a7bac7db7b534f6a8df786270985e2ca379..5eee38b818ad3d45ff2cefdb20bfd00379b042c6 100644 GIT binary patch literal 3768 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 literal 3860 zcmV+v59{!EPew8T0RR9101p%Z3jhEB02`P901n3h0RR9100000000000000000000 z0000SR0d!Gg>(v~P@gFQHUcCAPzx#m1Rw>3X9t1-8-f=zqr%1kKu}(f?7uwV$#{*I zk!I0~BG7yK*7&o4RsZ!zPrJ&HR;&fVa;4m#0sFR@%OOk%aEuX}xkK(>97+k#_xt^R z?X#~s)>OMU8XgL%5Sn=^ltL+X-kTwk;0pn@-*4}u-l35+nuZA7Wx9B?&}b$l5Ta;P zi_E*9KP9Gf>&y`wv(T7aR!)?Rm0&hZ(n&rFHW%GMMKxA31So7`kH|q`oS#~6z*j3=Pl%Yris~^)i5s4zO zJ!-e{$SQ4MR?K@iGv2?vs0aZVZX6=aZqJQm|4-yKCGPaU8PaQ-n%zR|{06u{!F|DzFoZga9?1si?%v#ms)Q7n%z)$dsFY|z3gxI;V-u+f-=oJ z%PRIpOe#|sUp)eqm{3B+GPNA3($4)4&zJKQ5+I2%BY}S3)is}X5+lH;KSsqT1H<6+ zKXT9Gb1PsZ_&klFuyl+VHXkE{?Zc?CvoT8S5Jm)h2P1{Oiy`O{IF4bK1IGvRC1B*} zCviM5VZbQ(a#N>zE;L#<)3Aei?TiIQg!ODtqsVGFpvejm@qxOW2JG%kRbokp`Kf&O zY<@}GemxV3d?MSeYpLF9M6 zGQz?L!#be;78#1j3QYf0NZrhjO%y*XTIBuNys5nRLm@>PHXB9e{g)4OINda*d64{p zK{RpWLlAwshH(VEk=63!Q}OJR_2G&6`2Dd$_tCbgj;Uk@IF>%B+-saCw6WFfKvya& ztWmXoUL{jRrv)<^GfnVDcvP#X_^8Z|A%5`jRAlBJAr{eyzXnp6V?yU#c$R~X5X&)b zpj2%vHN%kZmg>!ckhZcu&YKZ}Zrr3>j;cDhT7UG^K&wLG9pnELSP%Apwqh5MG1X#} zS0x*WS|Js!hif|7M5<#ir?20rY4HuGMphqYzjxgV$j&DMyLx|;JEH3ukSkSEN|2vP2d7;OKY#9%WS*07}8~Dae8%|+Z z93^EkAQA&OP62RR5U0s_>eR}MA0a8<=a<_yGUk&Hq?7gOSr6Zyd(f+ql$Bv1ds8r6 z%>_8nQ8qCqtdVoDew-k)zDl6$LQ!Qwz?f61HPV5DxmPY}-q0}I>VL|x3rblSc};95 z3{NBnkfhF^eL6TFo}kz;ik-4<(1wq-rq*s?H$;;{ltKw=B}x9oYMAv6R;{M@>g7pY zBkC$S;pdfgjNOu!&AMFYgdgNqwVr%VSL+GT-B!ADos(h9E-2~2Y}HJgjgX9^W~8pU zPEqY4Oh+f?EERQ~XQ|97Z?0y`NSq0m++;Vpl!&3F?@3qt0kJdK-N3SL70tB z^E0gzz{$oG%4)l;Hm ziWuwjq^+RI^Qf!?9Ft9Ign+3W_Ug)^*0d?exo;;f{xa8KF>#xPBE~lGiH>#RxXqDF zJtqiIqGsZxyl>D4KKck158-%D(kW7e81fXSxd`q)fauL~Eux*9D9&fn+DavQMk%VCdGehlyss>9` zr=s%*bJ(_0q291Y=_iN3o5Z#lp?~As%kN+m&2*mq*5BxTd-!mAeWWq+=GeaU;z0g= zN#uSo{v5>m-5WKE-x|S2+!)h`Ul>3)PR|T>f8&3})6Q69w~gNXVb8C_+x`!`^2ts~ zr^I!`j*kXX%lZO_lBsTO)NROPs91HzT%wXlm$R~~5<*LGDMkzi#6;~^!*u+bPNnk^ zA-!xCy&MqMuSTSpZo=MU>&(hRGu(gGl6 zBiZOygfGM<$zTQhsDG)yJ}x66OAF;-^X*b*P%3UD$vHQ64MYw`wrZr)+~#n5DvjOD zbZ3=YDpSfJ$O#HS9Ugh&;AF4uU`I?-=uWQJf~;n5KO_aBTZD!N*2a<43`?cs`0B?+NClA@|?fbnPzC z^QjjU^K?31vEV@m!-cdToZsGh*L|ITOrj(v#l@OTv2PwQUuStuDZ-@SWO-Uz79}Ht zl10<10VsoX$WC9_XClc%y^Gd&n8L)rfP}cx#-Ec$~r6>f%#1 zUYP;!C?j2XfNsUNqTkvh%o+J!`wsOx1IUM#`L4$R{p(zJx>9A^ zH(Dvgp8pm5wOpt)pve<>-Z$*Gl!(pVw4}T<0GPrA`XQOqpwskK9}w6Bi`T8w7J+rT zk@Z#o9gu*7794OCXT`4kFwi46zy;{;wiIi_E_K5qm&7BnF?S68QUpuN;# zrOIW?RBD-U$P!BlpVi{??%tOJ2ba&WG#d~pFVx>7Q1|f9@uVb@q1iG=BRhEDe4FWA ztM{yMN~}mIQ>zeV>G~!5z(DpYf> zgp3Rg%?*hO?IZWy(Q~(ouM%ya{(OMRjW#67{t=#rlw@6*uY3tU2cV{d4(K} zhEvG9AuwD>`^Nb(R6{`II=SMcLa}XAJJP=Pw`#IVh1w~X?-a@vyA*PvI}$?)Nt{e$zDbzQ1`h!?24^%Q-8#oO%CDP9w zB4kttrUOM*#VjRZ5Db(9Cxd}DAQ{0d3pTqTPzdTEMwK?hK*>7=puc80Tg76j*qXBT zl`C$RnsXf-QL!@6 z>`Pa+R9>{Gw*ahtN%;^=Aixk%yTSy>b7~@57`ZbtUp|&Fj1YuD04?<8#K68HU-;|- zA49~B+B#c=F~U|?Ytz^HK+=u~!vP+RKr)vSqC0A9cN|C_0x{PW7TsA}YkRa`X9Lc@ zWw>;>$ZV0vvAM;A$;fsZBd1*k;0_7q>ezCzWNf_YlfaR3ao&)5VwI?owW5(`3=N;S zEg&fnmW{`6d~$q^j#I$mB0No*7+Xs>ht!o*_Y|^jA~Vkk3>Q*(C{YuLV&v-AnQZ~# zdGAENLZql$Gb9u3L*_|9BX(*|*de8lGWhnOL#9`jm;K=F;OB0YhjPNE;f$apL~bvb z)|@C1i^PfimL#EF$oyE)6eB**&$lJp7&Ul1$Op;WB~8Veg4#h-`&aU4Jhd$T%k0%r z&tv!Mz+%ga?VI_(A>Gn#V6-G@7{A*LX&dKC` zG|FBIoU*ifc@FYT|00doeWe*xw=5%!f4&fH1I> z<3fLG6;^JmVAW*pk3Oq*kl`CaDljTL{brFXwu(G~H58fC(sQgfrbOaHVA9+h5``^f zWL}UeoXSqWGvw+#AWz{RMUF#8u-Ifcx$+2vlCSnW63!~wWSr?I>U9b}to#>!h$!V# z8pB_EhZcPr9fXaZ5h<>`%lPg7`Y=r$&%KLL(8v(w^D*6sbubbxV^=%`NE=<^I_#(H zCpeZ`J$XOAPe@x!0Z){Fg%`NO&YUY(qKqKl8J4uzip)A`Lz|gmLgA8nR+Hgcj{r>% zRSq|XSHzIG<&N|vsL0KgDy!?E8l&Q^Z1h`qI&&lVZ+nn~c}{Jw1>iNm1Iw*ub| W#%*109rFBjr&tySs1}eYvYG)qjb}*! diff --git a/src/renderer/src/pages/home/Inputbar/Inputbar.tsx b/src/renderer/src/pages/home/Inputbar/Inputbar.tsx index 2b86aa90..9de9d2a5 100644 --- a/src/renderer/src/pages/home/Inputbar/Inputbar.tsx +++ b/src/renderer/src/pages/home/Inputbar/Inputbar.tsx @@ -35,6 +35,7 @@ import { CSSProperties, FC, useCallback, useEffect, useMemo, useRef, useState } import { useTranslation } from 'react-i18next' import styled from 'styled-components' +import NarrowLayout from '../Messages/NarrowLayout' import AttachmentButton from './AttachmentButton' import AttachmentPreview from './AttachmentPreview' import KnowledgeBaseButton from './KnowledgeBaseButton' @@ -387,114 +388,116 @@ const Inputbar: FC = ({ assistant: _assistant, setActiveTopic }) => { return ( - - -