From 2d16fc833ddd15dfd8d30a926ec121f5c007ea79 Mon Sep 17 00:00:00 2001 From: xiaoqidun Date: Sat, 17 Oct 2026 17:48:20 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E8=BD=AF=E4=BB=B6=E5=9B=BE=E6=A0=87):=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9EPNG=E5=92=8CICO=E5=9B=BE=E6=A0=87=E6=94=AF?= =?UTF-8?q?=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/webui/assets.go | 4 ++-- assets/webui/index.html | 1 + assets/webui/ofdgo.ico | Bin 0 -> 370070 bytes assets/webui/ofdgo.json | 6 ++++++ assets/webui/ofdgo.png | Bin 0 -> 7211 bytes assets/webui/ofdgo_work.js | 2 +- 6 files changed, 10 insertions(+), 3 deletions(-) create mode 100644 assets/webui/ofdgo.ico create mode 100644 assets/webui/ofdgo.png diff --git a/assets/webui/assets.go b/assets/webui/assets.go index 9bf0b70..beeb608 100644 --- a/assets/webui/assets.go +++ b/assets/webui/assets.go @@ -22,12 +22,12 @@ import ( // FS WebUI嵌入静态文件 // -//go:embed index.html ofdgo.css ofdgo.js ofdgo.json ofdgo.svg ofdgo.wasm ofdgo_edit.js ofdgo_font.js ofdgo_host.js ofdgo_wasm.js ofdgo_work.js wasm_exec.js +//go:embed index.html ofdgo.css ofdgo.ico ofdgo.js ofdgo.json ofdgo.png ofdgo.svg ofdgo.wasm ofdgo_edit.js ofdgo_font.js ofdgo_host.js ofdgo_wasm.js ofdgo_work.js wasm_exec.js var FS embed.FS // NativeFS WebView嵌入静态文件 // -//go:embed index.html ofdgo.css ofdgo.js ofdgo.json ofdgo.svg ofdgo_edit.js ofdgo_font.js ofdgo_host.js +//go:embed index.html ofdgo.css ofdgo.ico ofdgo.js ofdgo.json ofdgo.png ofdgo.svg ofdgo_edit.js ofdgo_font.js ofdgo_host.js var NativeFS embed.FS // Checksum 计算WebUI嵌入资源校验值 diff --git a/assets/webui/index.html b/assets/webui/index.html index 1c1c744..89f0a09 100644 --- a/assets/webui/index.html +++ b/assets/webui/index.html @@ -6,6 +6,7 @@ OFDGo WebUI - OFD编辑器 + diff --git a/assets/webui/ofdgo.ico b/assets/webui/ofdgo.ico new file mode 100644 index 0000000000000000000000000000000000000000..dbee36371e326f013c25659b6969c6194d849103 GIT binary patch literal 370070 zcmeI53A_}=wf_h4#s7=4xDdqc;u@F4n7pWY=H-7)jD8Xm-{0ta$@`l{O(H0=2r6>f z?q$7~T|fl{Q9%#{1Y{3_TtEdCQ3Uq|6cH5y$bMPsol`S4(=)ewrhBHh>i*r&=iHi} z?&+#J=X_69S65dj5)BgHN;GYnptNP;&SMjaR*6KSWy|FD6#D*k`tGvJQrqVz5}lhR z5?5cH+`jM^iNskyO(d$SQrrKhLE^d|bOQS0^Ih2T*hKq&4H6g9Hl2#TNq$dBB0=Xp z`S_&BZTfd-w(sWZNz|4*NAqN%|)xOCzzdMCmqkfsrUQ)`=2W|Z(T1w+O$ec zm~pr0_t4K$Wl5Hee#7T8{XOrytNV#!#)2N=A1j87f9~8YKHvJbsD9+%+@?XTxZ?>vah*#d6E;^HL3Y9;#U*EiKet;Li%_lw7-{w;NUQfK_TRuzp>zvuj$X4#+f@6_ik@$AB$VqxttlA&S| zrM-qSC%to>$X^>tUr`Kjx!d(> zE@rLlM86&U{<8H0u72tL;fd$p=pzxN-|#uI_~G*yr9J(A`m%QKQNHEI-|`7kzt6|- zfOb{isd;q9&EH?@1bxv?5tevcYBHbMm=4k95B31Aj+y8Oc_XEIYfn z&FAJkRJQ4qza#k#NgYX6{_LxU7?rgz_t*m4d~VJoov-@9-;vxvl9PX9ac|$26rU~> zZMvUC3>_~y;xf^(PKD3Sd8lmDDSwyRmz6*BI{49FiBGqz6R)nDK{4n)Q8Vi2q7%i0 zWEmWl!*Twc2gmm>zIrzu^Y`rgr7c8bjZ$dSWh z=}V(TzlZ;?*zo@IGA24GLs9v&%_q&iM{wRtUV23I8TnK3&WA6^@*F-~Cu4FudwM7? zf9h-Weds^L9BS`4Re39eI4DC=`6q4ARP-2fnRxf3T9s{9YO@SQ=g<8282Ur;$!BY_ z@-=R#GUV}xqVs1Ra2wit#J}e)!;vG0WEfl$5_L1I2@UWvDx}pZW^DMEAj$ ziuS!)d$@4(K_Q-@_MW< z#pS1Fwij(Hzmx0ts;mz3r*^OUe0k0AKH2xZk5@?f;FFicidP;dzdnu5nf7aW{!Bk5 z`+H?8C-qPMrm4KvXj|DVnbLI%e`ejYe)t;HsvnXp3-_C{q>i?4AW8Q-)CbD1UjO6n z9;e8dU-jVSbiH9FR|vkYHPlb$NBw%ydB8a&=VoLee?I3x$9`x0s#Cu+RkrCgH-D}l zU#~Jxd-iS@yZ3xuPxkKHLEQC~df+l}UAqiAUrbwixA@2FRk?C>-l{GW$Ibe~Nl(uE zOFCcm!HxX64C812f3fo2p?po1mgR2`K3cnB;8S#s)oj`Nn#AUVi&eJiG&g@f7u&hV zkRMv;p6!vX|292N6i+X1MfndA%ikWPgz_Hn)RH&*HhbZ%{)q|mZ%gNC{9u+pmm%qA z>}%%2I_Kk9RQ_}=>L_n6hgJUS+;-A*{>l2=s<+ZXDu2`K4?B7DG3or@8R95!L;Xv- z{*w9saEgL{Y$$3q(09(<7WPT>}wmx6vj#`pjkEvT&Kqik$Tw zA4Bp3lFvzkF1yN~%fe;KDy!KBA49@+J4&K{A9TuP;WC*OIqN$Y%D zhv-_A#|5^2{egIu?$_`bBHugeMB|!lAD3<7TKUyAz?a)T%DM(Tdi1E+f8ZOj=B-)c z{_68&`HlV166@ny`MDfzdYnwe!eCj@x)E?I-BoD@wn)h+ddRS#$In6Ybn;RT-861mGF4fzWuvo9dgUgV}|O_ zr8>A;e)em=|G?M5J9d4ZrFUc5U95wv%jN? zJJ5Y#_V;{cccBiRl%L0n_}(>-liK|&k_S)9&m8br6W<5o_;2^Gh&p&ue)b`5&zR*^ zYoB&p2W}s7#~Ur$3D3%3N*#Fa1>cvkm^Wi=D?BZKF?Ha3PJGYhftv4%K9sT@Ep*S{ zdtQDgb>Oo18h)j?um3q>?S?txOX>s4cG`UYl5gd=QwL+&Utd2vjXX0wblh*q4w zgFSrFzsk>wX{)kxCHNl6)H$6)QT|*zaQX6;J$-M9?y*?JBVYAzv;)sa;5lJ^MqVZT z-RLu1uXNcn^S#VCcBTC67x|^W?<#-hHe${CSzP4wpUtwn!Y^O5@O(VJ|7IrL27O=N z8%xf|%O1brI`F+YV;kq7>?N0B1X4D^BTM{;{=!Jza#?k|m=^ha4wYfgo#3!krj?^DH~@#SLd%-@U0 zX8(_+jG1xswwkd&y>8fqUuKonY{RA5pD`)_t>i}@ z-apOwzbbnvK4VgTkMCb6%g=37GQK;HGsZF-Kd1QheEtCS38-Bi?5J%rmNVbyR2_KE zgeUVis2|p*X53G&`*i=phECe1d}Y>kU$VcINF3%0&=XS!IHl*DkQ(%$^irA9i%6yo zQfb3fdR!`Pl1j@`X?ZHGq?Gk6C{=prd0JPKRFS0TY0($?o+qP2@t324RLtQ17srhg zNScIPxQudM7^OM2akk07Po3);N}nKkiR87A3zw10%4L>%a8~Q&(ezucJImilwvm{P z9fbKiE;E;1*2Ad|QorNpX*ZIDxt{sT#$}h!$2+Nis_v|}HX7Gm>4ody$OqK%l=h22 z{kaas*1tLe_2)YHQvc-hJ$$d((fGIWQ?F8A>d#~A)%2V*KX)Y8+enRP^O#(~KIBXN zdF+hWdH81cSK@8DSHkx-eVl`uPshI0pYK`ly({BfE1tV#oWrV~gZJn@jFk?2sXzNU zKf}9i$EM^ZNX~zr1I5p`^1XVVr{>1Zqw+p3Kc~s- z!tmNWyw-}xF~Ya{^F6$oizcF@9Gtc+;KabXW+92!3|MJyc9pteN ze5*gl0G?y=(wa%KYIf@GgARPHKevMuXSO4|AF0Q?@_AL~+|(mK@VEXnPl2E7=k>ep zqxmcx6FJrus=LyK2RiVz{>;GLG#`umz}&7msk=uy@V)*j4vd|0oA_o=GR~{I*-c&a zgFx!fI^gHFcrI13e=g}Dp!zqK&r;1;&|MrnxVKmpxY0idsQxr3iu(Axu8_Mra6GmU zSpAs+w{*bmDX$~OYsEMmUkSASZs~yI2tRkoa~&OCHwIq+Qgxu}&MdXBYC+=+x1`q7 zvo*F9iuxC;gLK_#EknM(=6QTg#E`RcA3 zQyCMfpUr-eCnkoj{)Kd4r|zr+eolVQlK!&4&F8d`P}bi{2X^c3;2Dk3);~)Jw5~I+ z88(a7Bjh-*Vx8h$`8=l%>drn9>iR1kaD4}kxmLFCF4kR(`m+v_}1}rqAz2ZG84MQ;~J|%>LX5mFu)qpPa|FSHJO0Ug332 zrZ4Cw+0L(n`qxY))ZN4SJAdwC-Mb5@t;(#!X{CqEHB%3{mg3wcHIfU~xz%s-eD8_> z^VpW1=iU^%oUVI^>wmJXId?D|Trarm zkPC%fxqrafRrJo51ohEetv|PayxuXt*JuBM-EzGuUbD)H@S146R$Aq-f6IISpVt+p zXGF#97w;2`*Y*~)Hn1&Ow5I3EsY~wq?%Y*f5~MrV>+iJvH}(b8XPz&`>mu`-gGPI+ z&)m0uc*+fe)XK$|Hbrw zRGp1!zWTGzR}A?st&81Du1#%K*WB-E&FYnl*Y>)IbdZ?3q>XL6s{`%U-)sMGP48(M z{KU^~*<0zL)VkZXKl`WG@sE9M#N=Pww!Is5cT#`WftT%{llr?=cc=Ad9e5>n>+fdW zb*sPIb=Rr>UesNe`g>J(9qR98-E-<6=<_dT@z3kJ=hQ#Y=bv)x??>Ia{`^O68Vf%= zw$ZEhtpE~BNR@$O(@i8Flfdr&=zw+2I+yK&8!_DJIVf-Gf0X`$fa^k-+}J=zw+4Ht;nDr1JY0 zN~e*)_QC3aZNRoDiD@T4=DbLnlWZV?{e#s3+kkE1#Dpas%XyKUN3xj&_77GEYy-AM zNj7!zW6q1@B9g5nuz#>RU>mS4oS3krV>z!>p0IzgwrBQW|KM#9WDJD;VSmK``1(L3 z`RBE?d7db*JIX1wa}aYKM9%(f?@>?PBIYd}AVxg?JNX`EUOPuUkIc^x!XMH+M9%)q zJg+6s>!Z{i;KAg2Jhp!(HpJQ=B4>Z*pP#|~a@&V$I;%{1-R-^m zcF?;9UK208{HPc=^{@1d`H$r~D*T*v#vjsb#34>Z&i>3cucx!-t(jT&&)qn38TO@}hi?5%(?lTEgynZ5sGWB<-*C zzMS5nQ|jMGpRN|YNBkr`j=*d0w5w`f%G!fr>Q_eA{@kB`d|E4U^Wx3WF2&-U4tb@H6Aub(X*sJS2= z8I0Fse{wANl6qso%4Wv26x*xwXy^lxwmE1feD!!`7U75ORc0aY z6UM^+YAl%V>wWa;E26i_n67bLPub3`G{im-5Bt+N5Ziq1hUe&B&cD|i&-c>y%7;Sg z1F^6_w*mZKg8TZPLt}!Oc^rIg;D_x)>;ti}Kl?zCwhyTf#LE6{=zY;@F1VlEE8D9y zL~TK=?9X#I+S0q?`TqT9U%aKv5l9*mABdIxlh=Zc<=pRm2a1~;=%%xTzz1Sz|0eQ% zo0FgGRP_AN2>C!P?ay;V_!&Wd_iC|ogd^euF||KG;{zX{_AtiwhY!I1vG;+P^RJ%u z3}ajHT|ed(!~QfbsICjc)F)j1##C`n@6)}0<_z{v+dn*Q!GVLj#q{~z$o^*te$RQ* zKb4=ln!^5B_7C0%4jkAmrp>F6>R^4Wf2?J#lZ@Ig7; z=)wI0*gvoRz4rmTwpZiLF8cuNU(o*E`G8Z~d*B1Gzb*T_?*ql!-en(v{cYRdJs&95 z_AdGW?C;3_xjwK{nZkDJmhDxBue>=;bm&#|I3eus*#5=)fZMj`HBRR)sgZM=)mVYU z6!tI5{<%I-crKayw%<>-uP${RD%ihh``h<{klLQd7h(UB>|fXiLTr23zhv99{jGf< z^|Nvc2~9=k*(SZ5J=Z zy>-2v%`NxQ_8Qxt)^?`2I%?7%#rS9La9?QMcwRf)y*Zcme86YhYioaIv+KZ1#I_xq zWSe>P=n>(j@JVMbs+4g>wdJL!`F$V&+v{!rL6?Z_J3hnT4m0idOx;2&8hrAX+k^GkWJJ>%k`zt>PG==?P|BER0B>ej0yhu1t_PwIw zSMt3c7t{M%KalTsIY{qrbyK)cHhn>N5BmSb)wftZ+4!B7{Byl{9lwF2e<_AO_FFM@ zoXbMz>^kUsE{^|%&hCmkZSBuKpvU-cXl>6vptb#N#5d*VNX^??*xy_)aq$<}ANJR- z|BtxuTAu>^gMV%L=l=g49?k!7GN(k%@pUsU@%;cE=kQD_J)bC8ueb~jK_rpIDeIEI-`!ecs zQ91GlpWItrcJ6)EEw!?La{TWS@%8pkDs#b(W@FhIqxsp*}tpD_kS&J z3)K61@4g*m|DVgTsABEU%(ts*CLW&ppJMUa-eSc&Lr4aT{y>GVXjNFL-%zu>Z-?s7;F>cl$MD2!wp4y%LiQdYmXGE&7}6@5RCPZpQx#n*Xo+^t=h{-#z>5XnWY-9sBEQd)U8p`|E6b*uOOU>u!74 zzj*sc!S=9!arTdj?O}iC_K%Y74fa2e?%8bC@xF~)WwtZ^A2r(>?BAU9xWO%5>Uf?) z_K%|N4fg*Rve`5p?dDdQ^VvVDwl~>p*@v;FyxY{k-yq*gb( zxm8{>`^Uld2K%!Q{DR~&w{)u0d2;O^7u(AKkcj~e$YwW@e5{l0+$gKE|J;`!;OD*q zeI`rU#P5{!sM>GKql9d77WhjXy~JN7+Y%vyQxPI~6^&Y+&h^V{aR`H`)Z5Bw{A zzKWy^$#{}kBy*xGjpy9cr^Ot4*8BEXH;xJ9S=KD`A+T*w81w;uFt`KwKzzuGj}%X{wng@KgPd)S*T&;Ho*TEDVMM7l!;~b7I)$?2X5lX4M`yvv=fK=pA zx}cQT8Cpf6t9?;!*v^g*u#dB^BL+|mNa^8RN^42%=nuz0PrCa6`}#TT`*Hr``jebQ zGMPkoo1*-%p%WjNl=A&ph5)L&YWq9V=Q{9@_!l!DV4r8-kL7hhs@@k+`WA_kxQSz- zuc-I{`~LaNLY)4%z9h$x^d`Z*eefI=o}Jc%eV-X%7Ge_uxUM8;kgO+hsxur9okht9 zxDUWA#Et(Osm^=AKjL4^eSjJGe7mKYTiBK8^a=_i6BNUsv!e=qhSH0RG|AQS)ik$G%U4fBU+EUqM$<^8xS= zpN^VOqdxY18vNVWRp5Trs^SFEs_O}&b=Ss$mj!d^(sSr^wgvdtfPd!wftm}%gc)~> z0i%B@?(KKBxU2h#qE*H56bl+59%x|0kj6{!uYvC{|DB2dO`pFZ_U_vuKK}GovGk?U zV*E3Ah^hxK7ae+?F5>|A4>%s&*$w@Jkn$F`z5@8yfPePoHa$)jD_(hA82=6(Iw1bJ z>vOUGy~SeAl4>#X$^Q}+11}bBE1OZ@0M`nL0R^v7z`rK^b6003$Tq|f|-+*Ej_}9cgxL@CQ6h34(f0X&9s}su=S=bLN43__=hp#1&M-d#m^OJ(t3UdBYY}!xV+WXw{f`1M9A2RlOv3LJYcYrSOELqnIOKZf? zalessl_K0`<}#%7Hu%?!e>oSp`aJRJmN!cz*ZrUK+~kQf+sS7WjQqEuXBCXw_#B%4 z5%|}Pe`cpmkCW=n1$LiiXJ_R8$ke$Hh`W29Lab*$f6$@VX*74?EX08D`5O2SpG^vK zQg|+~Gj>Zo+Q>flPt4kP=D!nSfT?cG^ySlc;9o=joz4X=mG6ANx5K{jWuCvt(mJPq zp!Os6{kj1BYsr6UbAj{m>|~!4_Bm$pbIQ}_cN2piy)N~fvhV&Lw)QvZ@_>I0`B&|v zJ9B}Z5T7~LDf{iKT8IV928+5w`^9Hl)`@{*u0;$8-uJ+N@HQx_4dA)JqbL2*^|`t1!6$p{U7kJDgWG`?(V}};54wQ4{orp&WRWR{=I$bH*Qvc@yyU9LcK;Z0izZ31hrtLq+0lo(CYc8-C>>~yQ9s|I?=KT9H7uZYo5d#8^ z0pMR_{{5H>><9aZ0fEH;@UJodd<`Ji1%CAjg^;VMpX{rGV@%N3SOESt=ijTjz(KH& z7~m`W82{6peQy7~mv`-lO)#sIYcn#X`r*9BI*sWc4itFqu)!1GuD{x#>H`v5F% z%moe;`-lOavyc9NMA&y@E^rvxM-1>h2B7_qKny5#E^wIHM-1>Z27vzv@L$Thz&fyx z7~ok90RNHTzqq-;IC@6xmmm z!#u&FV*&V&6#wSy0!NvB#DJpN$Nawtv9IO<=gtL=1N(>pMaKZN{}GD;nYqCG#J>Hz z((mN5dM}TP8+`4MUZdNvPOoB1mlW3mj$#4$j~M@QF7S{ah)tib70=A8kniJ*3;QZY zAqLov0pLGk{PSF3ZpR0WxlXjL{0^-TVE#V7sI~iweU%~x*opz*KXUvh?VjX5p6nwA z*kT{!e-UM0we9)Rs9f(W)~!J`8G6uw*eZ&CM7y$kw z%s=-5I0kg=bEdez`aH2<*$`2u@!TH8aH%QA1Jbbo{70OBb?smM$kk%&*B_LMPGo+M z7$9Q+_>T$y+z%K#0}O#9<}m>6e@xo{ zWPC#mFrc6Q7~>cK{$s^IU-Kabq`^0Qh-nM}|FPpAF~ER**2fse0Pr76{t*MRz&C8f zECzu8*z%7UV8A}>V~k<|_>VRJhyhvP8#ZDR1Hgam`9};eV4w9d1~CBqga6d?LAWoF z1%GNI;xPdHga7pNfw(tl76F8Or`o_V*V0;QjSRZtev|eB{`I$^%YKM{fLRoXXg>h_ zgMX9wffx{z7y$mkzX|^s6Ex$WzvF%YudS@El{CKw0RQ0Mf`7ySs~GU!$IC^xLEno) z3;_S&KM((i0l6_?_nvLyshRD?ef`d%bydzPpu5nI4}yR2Z^MT%9>8&c*`N4qThT_Y ztIF?MJxi{yrtviZ_y_+s_(wm$$bRe8GnCA|<}m>LgMXX+$2SI8v9H>Fjbi}#2mcQE zk6#QZ#J({G@H(r7-nXcZ4@nCC!M{WP;}Zkyvd=6t_gw~DB&r_#u}(1n{Dc1@_>X=J zaK?TkaZm3v#FCdriBCRzO=vV%82p3(BKePQ3@D2I7atLa4j+`a3pJW64F17?3H(Pd z29(OanlGS93;_S&zeN6{69e30U!xcR{=vTs{OcbB+-6^s7y$mkzf1h<8w0#zUxOF` z{=vVC{OcD3ykj{E? z@b44d}?G!M~+nI?^NfE=iB>!~n4G*k{3iNq*~C--r{I z`YtU7fc>I;5&T>FV^R79-zDj@xEKKTi}qFUUy{ETt#`x;OT9ab0bsu*9|ZrFepr%T z!FNe|wHE`xe#t%x{!8-HlJ$=`VX6Q8F#znl;(OrV(*Io1FZeD=zveLj?7QZh;J+mQ zbj=Qk6P9+!#DJaOd?EJi-JX62xA8r^W^>(IcTK&Q$M9|r^~{Y|shrOr?3`XFz6Aa) z{SIuKF%`^r90Qt)(Ublpo}AG}wCQn@0Q;`^C-?{dPTGsWkL7plwx{Q1^2H&v`?g~P z_y_-aS<1&*5c}@xexm5q=Pb(@0QPOO&vpm@;9o2LIp$c!0I=_feee(VwPRoPIdWqF z*mul6_y_;m@^9=1w5w_^cwAr!#`&Gv6a9b00H;0^s^hsIaBshsV*U$*#NoqrUftHq zIt6^(qELkbUqUDE~aCO-CteoY|*1lbI{*=CwdX*$4lD@!wS3-SZUDwr4Z# zgv-ryar5=VgWczD42UrM;6DKVTX$_NI`u7+_o`N{eOkQy`ebcn)!HdyVeL?PuZ`;w zEa&<9A@0P0h_es=1L41s=rZ6U8ms=?i{WX{&$;#M_eJOG3xar8mBV;bS`3H*``{n^ zJB}A$eDxmjf4&C%bN`^Y7!VWo!9VzqIRDOLK#bT2|KL9c{M(NKF=HS6ga4TDUpNND zkbUqE{$s?ybqt6p``{n^$Bh5_F`%w)pO~x9dVS2Sn}YfO?&`CkZTLBLo$vqYHU4kK z3f~uKD#lFyvzR`=n_NpM-18Z%>QVCd;2-=u>H|cB{|q<$>|mj_L|txk3$_tH<_G@4 zf2{fUk+m>!ugU`c!9V!-*#|-tbHKmPw#W5w-o$?f3*KT`#^}|9{Bg! z_Gtgn{)7L7?|-E81j!X79P|_hgI2{(KI7D9 zaC~%p2K-0Imf#Y$bm{}(A3o#MXK;LUdFOCu?*Dw1jPJGD=b zlyuJgUrFNodR%^I$aN$M!TMi~MaMp8ikXY5#KPL4VnOYYSPSc5?$R33YxtFtC$do} z`xlDuc2(aIT?Stu`i{C>40^m=jF|juG3uEc#i(g|$!IF?unE_`-)-nc7xa4gM}Fhz zdw${JU+?#SIa(~(=D`Q)9en&Qt}w1G!rZs%aiSnj#K_6li>XWQ5{uSUilyuNi`w-A z#EN$Yi$iFCs*0N)pL1)2=U(dUJCA;62>xxt7{Fot{@u}&{uDC)lkW)Z zGU$9UcINLT^UL2JM7$4?%=2em<@q=IY@W5U(@i(GPBfUf;C8=J3?x7B9{|`kvkV*m z+~&8fY$hIj>N+w1m2SlOVC|V#u_})2bHD-rHen3lurTq@?04*Yx_E5X|A-gfs*Viz z%zs?j2mb*;?I6pr@Xzdb>UXA?yy)-R_U%8EL&d_DgNW$?yE2c{%yh-z+pl2&uxFzLq8OY*Y?Ks zz5*sW+5BBr3 z5B>uJ+h(>w@!zJ$NpilA&e#56zcBmY-zJCw9TwE{zx<5Pl*O&JZU4c(J@&)JKi2;+ zu6YvN`X7x&`(CGtXKOoXIp+uL+h;#a{L_6%xxNk7|1z$97R35rjYWsvr;3>?I%>y1 z*muT$82MLm0BKO`ed)R5BA+-AN&W! zSeWw-FaKcQUG~9$m^lopY~kb|?7PoC_z#M)Fy|XS{=vRC?1TR>a~M?F!o@$>_l|w= z9~5I@&Nn>#gMDw=2mfK_FsQPHgMYB^J^SE4D8|B^Z}9wseSg>o|6%4ZsImpiKiKz= zeefR?V`0uWIR3%DzwCqmFmo7G*@EF8?EB9?_z#M)Fz4$(|6o5D_Q8LcISi_7{_+p@ zgJU232gO*J^YxE^upcb@;6Kb9230nH_y_yJvk(4*Vl2%0de1-D4+s0;Kg=8kRW@(= z2m9e+AN&W!SeWzmj(@NpF80BHm^lopY~Jt>_QS_M_z#M)Fz4$&|6o6y?1TR>a~M?F z+~ptahnIZ=|5wucwzlD&TR|}wrhMJwAMA&leFOhLBKE%m|6$@VsIs`jKiCgH`v(5c zCiXXj|Dc!)Q@*A15BBw7-@t!!Vt+mO4-@NZTK`|Gme2eEF z?CZt8f&XKO{h{DLOdJMPmg4va`}(o3N=)1*NNyzAgBTDLcVWrbIsaf^k)&su;{Oav zF$T~rEF1<^4rly>eLa~smO8~hUjy_eIZ7fRan*r+{=vSHBE3Ho?|cn#0m)lnKd$U^ zz3uT2_VwmHxAZCgIR z!Mar~QZe9MN^21V;ur(0+kdccMNM?RPw~&!0hg1kLJWvo3^3;(>_><3LNzhOfQ#w# zERw^B196E1_4x<;g@}pXenSj6l|Bz3*@74lhZvB}KiH2R+fHhfiUZ%G^eU1GB)m=l z<_JV~jzot4C2#iKJZojAn{IBMXfScX?M~bV$3{#8#5|7)e4FHFBt1!B@$}+Wo9DdT8SF=l<5H_boO2v#K*G-qUP|&Sl0TF1ynzac{yJ#it9jQE zldr$#wM}D>LAzfnG59?+01ZF`&;T?54L}3X05kv%Km*VKGyn}i1JD3801ZF`&;T?5 z4L}3X05kv%Km*VKGyo06O#=ddLR6Vqy+K+tN6mI85|!$J1Lph7)c&33`i6Zz3`*T^q25HIEO~zHw=e+oBOL_( z0sk=70QdkOqyfYSQ##PTB0eBKAU+^IT7*Yjf5`9v|A2p(YXI#h+E28fh>zycLI3NE za*4OKeJcy>Pwuw-y&Au@x;|CozgGLz__5V~HU4b1zpOy{$_wnTEU-Vd+p7Mm`d0f@ z^{w`+>Rats)wkMTR-k<41@>1K*spe5a_h;`Gx%Wr2t6zVB YHoN+wo&s{JU+?~IPW5w26R*wx1rWx8Q~&?~ literal 0 HcmV?d00001 diff --git a/assets/webui/ofdgo.json b/assets/webui/ofdgo.json index 3dc1cb7..ebfc343 100644 --- a/assets/webui/ofdgo.json +++ b/assets/webui/ofdgo.json @@ -22,6 +22,12 @@ "src": "./ofdgo.svg", "sizes": "any", "type": "image/svg+xml" + }, + { + "src": "./ofdgo.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "any" } ] } diff --git a/assets/webui/ofdgo.png b/assets/webui/ofdgo.png new file mode 100644 index 0000000000000000000000000000000000000000..12c8df25da0a7ca047441dc43b1bacdc6bf1862c GIT binary patch literal 7211 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 new URL(path, self.registration.scope).href); const CLIENT_PREFIX = new URL("__client/", self.registration.scope).href;