From e449f2e1026b9e83235c11dea40157fd0e5c09d8 Mon Sep 17 00:00:00 2001 From: Marek Mihok Date: Mon, 8 Apr 2024 12:16:02 +0200 Subject: [PATCH] chore: update files section #2291 --- assets/examples/sample-document.pdf | Bin 0 -> 13506 bytes website/docs/files.md | 11 +++++++++++ website/widgets/form/frame.md | 4 ++-- 3 files changed, 13 insertions(+), 2 deletions(-) create mode 100644 assets/examples/sample-document.pdf diff --git a/assets/examples/sample-document.pdf b/assets/examples/sample-document.pdf new file mode 100644 index 0000000000000000000000000000000000000000..3d2d122dda232b4f4ecde07cf0301f20ff0313fd GIT binary patch literal 13506 zcmb`uWmp|s(=Cd-yR#r@aCd^cySr;}cMBFgI0Omq?yd>J-JRg>lCwzOeX_s3-}8L; z$L$B{SzWWI)c8?jbWL&v5ivR@dKNhHzMYGm!@|qY<9!2gEC5D;y^$3hFE4;W%+ki$ z)DigK#?aYR#MIc{#1z0FV`^vaYyn{A-~#aT!#O!Sni|@|xr5dxFv<5aVg%nlMZBRi z0C&hHT)Ng4q_s(+Wl|`BfyyUMdh&xUlp|3rEx{DUB@mB0?P%R&!_qLm8Mk7kv$(92 zeGvIN-!{gu8lUTL7V-#_>?aeMS!=WlvgeJep3-me8Fh_>o@^7EXiIEkdh4w+F?SWq zipTpS)Uxh5{H${iUhz1tl0K2dBldAV<;E8QO;Qu8){wW9Q;rwX4OA~?`N+;iL_+0F z6p{I>;w`ES&^DwA|Gp$UBZ`Ot7*tH%odLQ424Q;}dq?H>hQ_9V*N_W4F#*_qjls_k3_NhyUuG2* zW&p>l8ID0kg%!Z{m&c#6m|iFH*I;tMc`^vTg2xVs8~}resjH>2sgk(RANa5{G5>df z{T)=9pWIZG7qG&{+Bw?C(MSR0S9qSVfJq(+ObEqrNq+^f&|nHz5lAr%RBAO7l`c^6 zFj8Yt4EUfxqdC|M6or9qMG?`Rl_+c2({i@U)wJh9&9#NS#<>OaQ=hpO5QV2eh#qGR zP=D4O4UCh+ZXGoAZ+*95I4Gb<8lYVpW@ZrLcOqcZPwjlEsYMb4wKpg9{wA$Uw4DkR zPP0G#;z&7!$)G^sL}%D}eJQYaz!H^f`*E3nLVUeSqGk?dV#dmW%`GF{>Z`Q5Dcq%L z9ZpH6*v`Sz9K~&8&5CMOSWP3}$cuu=(Mcg+H_!8iHf>jtOas}urJ9<$%a8$K#7Na2 z*`vs@31=3?zS00V(Z?Bi;4M2fuUvd98)FEHPZfC!f~DnOk}vE2DFWcF}gt9)<7 zM3dMnyYazYX6&jC;Ugoqf2I8=QBZPC+f<9V<8p%IW6jxJi~G)nH6mZ-XTBlNN7ZwR zqp>W(s4UGjo1-#@b}Wz^GOcvN+KwbukUCo^ft`&q`BMPM1tdt_YQ`l|sEuBH-zEYj zeB{xQjT30LH9gG_j>qgk`>&m$T(_y;P9D{G3b5Y=yphCYF%{h@C@hc`85u!9N**(L zzD4=D)x~A`eYlr4BfAUxJmiO};*Uhw;Bbr95Z(ZdSb7t5 zZxCWk9LaNOar4%KZMwnGVxgTs!?6a?GlJ0?AQJeqya!(efCT$Xpn!h@rBF#ISwHg$o?Km2SU9I@jX0(zqkNgXty*Y=xTr^OyC&`X0BjK zELJ{ps?aP7z7~v!u%H4b26(@4cq~f1!2LKy5zgD7k{n?LzNS+v+%YqtvAdQwq?)k!ks5ojH}KCuXhZaS5?};| zV8AEDG+^-0MTBBC$Usp^tm8=Y!HPxGVv+Lko1-P-9Jaxs!g35#aIgk&x56}|HjLB^ zXN{y7XHtw))MT)C+09T`0`3F97|m1{Xi%2DbA@F`O^>GQQ!|J$(5_0Z2A?-P;vqm9 z?84n7c<Th_I4HHG!VJl>CDKRqyx^6z>jDxhIpWp zG8R?~!a5L{!ibEFLL?Bxn#Fwefn%l zeG)&Zmx8AzFvV_xZsmZyDzzN3jk+Gb5J}Or+$5t9MrlUjMnRiw{fgvm@d5FTX!6AZ z`&EBUZdqfQ`m8^9;~i=5BLre@Y3))@Nn@| z@se2w*l^SA(uUJ^()L&f>nyb3>mjsuwD#)t7?V;@MpVqmYa_XG$}5fw=_dH|S4#QH zjf-kE%=6@GN6~fT>9sio8+96$-Gt<&88jI5D-}<3_!YCuv-3N}JGK43c8voT4I%~8 zyNhxnaykvO4D&XO-;~6aPQ1<2%HtW}G;VN+IOpHerl<@yf@wPjp8TClQPUtUbN=GuAe!;_|4wSv_u*E)8CbVK?`@yG(;j&wWk>`K)d>@$OU_+z7K^gL<{n$nB1dP=fzEmL!pdK7Uq4;}&g411am$8o}8 zqlv&Vj^2bmO5go`&a~=M(w5fY!-(u$^qy;)WLes2D7{%C&m4%d!SABH=_XRv42hn35@v%QD8M|lWNh%(q8 zaQP5o5Ngo;@XWAikS-9t-JspAfy4}x`eZuOSYSd=!mc5_uxtprm=8`k^t7yH6h|IS zs_wq-ZV+@vq9Ve5tr9UqlSAT>(OA-0ZeqjY{h~ACvZ7w1$)eK98nl|V+hS2#QGfzI zEMk02FEUrh;@im;>9DP%O}MQSdKR5ewMUDN^*hDi#wud(m`i94dyL;3pxKK)*S#}+ii1cFt_hwHN$%4PHHM%bLe1-160O=0p`eS70JehRR9P ztTpB1i_En|6j?fXkS2VsRn4loxM}uR#SzrqtL?OHyKjWUm&1>~Y-Vh3F6JGsFQHG} zY$w)8jWjcOy=^xI(C9Iu$wmRl_)lj==e8-3f1*pw$&2K3hB+A8qAQ!pXnQDtTA_Jaac^R@{Dd z^m)!;toDO>OlXrZ!_TDqO8H*MvEnfru{yB>@pAF8sQaiD&+4oGvu{z!Q(GaO)GrOU zNfV{nzHX20=0?MPXVw#ksqds#i#oU-W^ZiwOnz)nxmlhT6h^F;cD%a@c+Pn=z8Z|% zKa#(bPs)yd=jILjbm2~6Yqq;~8+`fr?~MC3n|;kofr+oAu&|J!lc@>dSF)-E(ETe> zeoedo%3c3t+wtd!Lupzvvr3b>sSgbti&F8h4xs z56bhsIg7~RPWMS}P%d~uYosIH7E84tN|LE+60wb~%Z`;KNo>=>5VrrR$-@}sRb!h- z`$mMu>SZ6J&ih<-xJ;y3c14&@3yw3UQnerDTab${s2%Hjw0{Hc*RKCNkbmOxJ5F+j zwm@d|kNDXbn!j?sUx5_*#qa3Y7#RU{%p7b0CMHg1Aaa=)b>SE!fk?767PK?BF$IR0 zLD0$gl|6E?aJ_P^-wirupgV)G;d=>FOLGfn06QB8fI->W)K=}ahsJL!94iMqu)C}I zuc!mq*nyCiHFW>oVq#_ozV8)NzzCZH$No)5{~-34;jfkcMg)*OvM>S{@E?4zyw3T5 z1xU1pt_{Wti>2l;pHXSgme7jxOPE9(6ECG9BM@QiSpFCh+W9Q;2qja^b7 zzxutXdIiMghcU1nW-f2+Gw>bnQ!egZZ5^K;8Xsrzx2#MZA4|8)9PAG+@;+NE#q%3^ zdOBEl^0&=Qg*A9QtT*s@8kXh|FT~Fw+c)QRHuX>GyMLX6X3kp8X1eb9ME$JrEq--r zbDz&reys5H2Xu4c9=n&Po0a6d*o!NhgO4w5)%m9!yw6-)K0etK6{kKxWyEuGipNEM zEpO~_%r0$;hu!1hL{|EtVwe0m)l7bE!CTzVb1h|vmm(m2m5rqlOGu+E_wo*9x)b0iwom=6J+VJ^@P zvp<(lwn+@;40mBKunS`%C-9X3-(+we_AL9`jo;~wTj%ACHpg0-}Uu{GNU$4~N%HQYuTKK0g~Dn`SCi49}MYhD=U=b}Q|{j~_9@py9=lI`4V}{MK?- zv*6r@CsiiUUY!{1l|W*hCkKs0B}X zcxJ#hw#ihHfaNh_kwS&ucdZwhZm+}>K+2q>4i%n~gvVoD1*g$yIvhMg1@c?INIEMyGz z$K3+=uT{s8r(0&5yVOHUnr=xnjZmeUJF{m+^(i8@?W%PrB@t;fB$`?RwOEJ)HE5B` z)Gp}p8VF$X{((u&r2}N04JoEJdP==$Bpb|Sv7FhkoFPfrD#Xc&-ZN1uiK4o648cB9 zu9`wPO(`+yx6O?Z%S;OKBKNVyMXm7`-{AFngv<^}7c?5!(-qW~Y`65QVQug@5eSad9%69)5R!JE_9V(B^%DR5tki_5Mq92! zYl~|+PkJRqLNh2wn1FcMFi0u)gv_urogj&Lz(9g7%#uP&<%pM*!G;9>vX4Mg3?4a? z9`giSJRkj#*aC^&tct4eehHc!&Etaa9bFoVOWP#fW}8>Y1+Uj?p-8w=Z)?cpwin;n z<-mioU24o5uv$oKsq{L+AuP?44~(a?C5E%nM_QF#`QAx{?1oDqMrR*1afIXJSrF#< zEL3VYqLf`>_)~;dTS3E#c_k!Uc}eY?NDmXG*N2wko69kk-(M~>Q7G^l(DQPPSbE`* z)AcKUla)DxMM5^OtpKlO%d@er(EUU-=*-AAJB#O`kQum{uY@R(OnI)wIPV@F^9b{G zbkIRL<_$&nHRH$I1a6szY_sUu_v2eKA5ci?O=S$ma$^l4H90!sVM*0e5Xy=% zPAG1bmQf&Df?$v|4Y8 zDs7x2isN)P%w{rLBeO7=|ICzvR&a>#&#yAUFW$(Sj{&m5x{T!EXiWxgu~Umwv%0Yu zc&iA?Rs&JgXPZ8~B{n|+L%nznna~R0y7^K8!+QU9%MukDJ9Yidlbf#AdZ=Ow%Y^r! zAf$q0M?U4*YVIv6IK-G_r{vs(zrus977UqXtQ)4R%+hW!1MLBa57gVYZ{0i;ve*Y= z5qVXExS^0gf5tVM@1r2K_0s-01n4UcR#17%mvIdU4Megw3OpBvYsXQFBu0DNl|v-)C>_@3Z*)^!jBb4OE7I>b}RSPMz5Gd)I#R6^ zW_Vn3`g`e!xwZXpsM6N84ABxLV9ECv9le&Ws5Kjm?S1S<-P zlF)Ok62m9@I5yR6#^yr4oyy46TO;#Re0G#I0*$+$#q78S<>+o zrug^j$vQ0vw4g_>s!3@wUH%_rdPeByqMiJtH&kA*9Y9Pk-VfWT?1`gp;(c0mF)r=M zK=aD*OCk^$j#1UCpNvlg5FR*^X60SNV<}845iWkbZg-98K~yA(K}WU?LlZ5&JELgM z@$Zf)Cx3t{0c|qI)!f!0aF^qnPg4vlI+;Io_=J}`#nb`fKB;h1 z?ek)edi%x>$4h|I_IQfh)?1y{-Oswf6LPL-e)}9lw^w2|Xd4glZXAV!8nYKPTAIN1 z+=61A6y7ea;_z}Jl{cpay!SnrPxZ|4!~tVr(rM+=?p$0o*G@!{`X*Ut2C4doyeBpS zEJq!j0f$5pfLFThT)*pq<3jptT$+0rzN z6|~mrLF`J0^rh%K3^QVi1yK{)tCKBO&|4iZ?{tGqqqm{g7JMFNRp0h6}AuxZCg-+#YY2c=xiP-HWG*Z#`zW+%P(Sr;<;u z(|Dtz%bB{|QT(M^QE^Yh2I;5Hk<5#y`7?`q>NVmaw;Qid1;1+cYQ{o)=~il{tbAFt zn9?;h`P8|M_~3~yE|BFz=od_jDyQ=ROfv$-5X^<3cgwUDN-DKdvbh$!>z^3 z^|-}R@$+-6m#Y)!7XYmX{X7qqmL(tgyP& zRFhOGExP+xWOx|dJT0i>J~Cv)dF%h1uf2ZE`isQ;rq};pdAI0q-c2WDZ)5VCDE%RM za7@2HqcQxAe6#n{S%#>NcC$;ky^<75Z0aj*c`SYPj%0c>oq zZ7u){8ykQfNYt6R*nz+QAndQ>{k5|HOUQua?|&uiao?VwM5~TCCBX+2 zl)&_^1Xq0h>7s)^e+nt1eY$PW%cpjBz!GP9vl~a4zBjNyReQ_0|0$QCj3r=qAB}Z5 zYjifeEq36*z4oeLa5NI3|Cm`E51&J(rX)CV0a|Jo2dmkWSy>+W=>`h{@^IAg+Qnu{ z+Uxu!UCdGOt>WC|xc{jh_s_*>vRaiEJA_SkdTW(uQ*Zh#GHxMJUt3A}P_s2lxJ;ge zqQsKYsbZ|{kxm6YJ(`D&Pg>h9{Zy(%R*IOA7*wiMvxpc}_1`q5sr>O~=`aMOX9+O` zplA6o1USlK6h2S;e)IGP6G?DY03rW)qu{@NRT~%4kEF}{|8uqAo3eBf71c}fv5i_ z2Cy>!M+{&A-u?eC1^^|3KVkqUu=Pg_U}b(q&L1)0*XQ8B3toTMul^DP*tvk}#b06o zEAaZ?!56J*{T@TzwPR)Kay*L6EI3x+%>*AS3zV3Ugiv5N7@p)C64(HuHz`os&kvjZ<1ygC%pZGpmnHu*W=WZ8ckQ_%_+rT#tU9W;(a8O7%d4 zL*3~|xsS3M#+H!A@S`6IoBXEnu=Jff9!XIsyF+md^rWk9>i+qdUoHiiX98@1Qow=%5-)c!)vv zP+J)uK=4T8J=PmgKb)kOHs9gtxkoJ47s|^f&RYF8$0O|n@0T$KzpL~)dtJAm)2aws z(7PJgyIfG~~xU%7T-+s-W)e5`9OR@2Jb3c2Z!)!vbxR*ZfHFRiWV zcxWN09QoQ>Qgbm{a_H#CNi(SCI^;uB>v&pHwp@Eqv)rx}=T`RN>yo<8r&cwS9ot)z zolym~6PS>ln;qke*`2wah8@jjwv?p2?r)BfX-VnHraJ{)E*{bV8tZ^>7iK#xZIZ)Z z@skR-#lC2DxLIngR{Wqq1c&EE-)DAUn*(ACrS)vcfz`&z$~ypzUe>EW^? z)?C6&SE<#kjwCdD!Td8`&?S|Ep*D#Q7a`F$F-gpM`-}0#WKyIw6pd7^qlcv0%^br* zm6wC?aOjHZqU%AjlHWwUm-GNMmRQ7t530Ri+{p|)>HYJ~hw1D}>4(739$)#smD4EB z2Y8pplkwCnY=`S5Qln03Y!`-F%QW4lx4hj(8>6`94UJRIE~o4vmu6Klt6F3J`<(VQ zF99p(Q2?FsF}@ehQi}uD>>rW()lAOUQB>@=eJt_EfvbHzv;+gj&pRzx00OL&JL4Zy zh>oi{mOsw+E!_Ql4Wh&Q0@otC?1SOZLQcxu(|(J0ciE6*zGnnb$*hNlt@A|V#IxKlcbmj~ zk3Zh*5%GKN=Il>(x>+4`L!Z3!*u1OG6Q2yDL?+DOJPUffiHV8+h)@_BAMWFIi*Q0T zzSZh_Gx*@y;%0NYIJ+>>QD5#7a^$k73Wpohs%cB)psrdIwG>oQSfa#8_`M(j{5zo` z#-7uj`3F==)VB37Gd$ccj6PY41zEn_!fGW?^?_vRKbD5kuIiQCaRm|!l*oC+HGdStH8sXq~ zoRBn}Bcxz52F17&fgW7C6n&7EMWw~K!#x&G1Y})0ST>8fdU1KKpj+f4Y!ta@PWht@ z?y&I1&Btld-=;45!BDLQKhyZ@fZJwut&U*BLHI%O8iIDQ^f*(l+(nN|eP+ zoW(#zNJCpIABSAoJJd^1UHjsa{2xl22OsojSo-@1Ojx(B+1>EI!#MZhAy>&vqDlov zH%S5|f&xztfQ@bUP2yr2NO(kD_X?7NRbf117@DCorhO@BUAz<;8_n>C1_QC!z#fVQ zSYM~@bUT;);j1Fq%ardnwIL2D1I6sALg72tMR=-MryNQLD5MI9A7k#tugTog)6!VU z>xZ-BG|+3Tt3eWSaU1v$mbg)aczRY^VT%WcV$SWXH^Bbk}1dPN-b;S z%F9~{&?VI+Qjf<6i8OMgGyVov7?rpoh~(2G@B#}S95zRGT~tLU!Nr7RNMBuJXDyHIzq}&sL=!gx{>+!+rlY?_R|kQR%q^Nih(a+jcdO%Xn3N&yXWGgtkI6 zLiR@jNxVZb!bQ+VAJFMDOv6Y^HX-U;TctFP)!Z-6k#b| z8bv|fRCMGj%zt7x?aL~ehwOw)9=qmj1dSv6u?Q5yt;_jDy~8_pH2@|&eZ(H8#1Kw_ zX&%m~3OV(o0uNggWv`VZM5M$;;xdX@lN!SlD}aQX*iq^TL>a&HKuXnS}~XtR;A^1q94)(+yf zA%Zem5W#8p(T`%LT@QS>Lz8MuSo=YMly0=|39t+Z)|*CFfuzOY8Y8j^^I{9m$~L1Z z_)s2&jcD!5BYV9EXtwk}tC4P{xWSZ$jQLVYJ}n3YxbGgMtU3z3t<-q85YKQ1S5_PH zmvSxz*aI!7&&Y~(V-w#ICAXoJQ0$=Jb+E;Q)?H|!X=bZDvn;r^D!xI-Ay?6*Ja0mE zWeuujryba)fA8v3N#ht#yOH&I9~3jy0JN-;$6_;7aXj_?r!4>&pn_p|*yGgdMmH3d zckp>YR~+4@TilW)Hov(I|2%!m(|z7(w<^sQ5)(6tXQo#kzcmigsw@1LTtIE6kCP75 zc&y0(CK#m8bW;Z-nr;U{tpSo@i2+VtYrg97Kx_MNu^Ml~-s665hW*Jc*XB^Crj zeS$eJNT#}XV#u;rg505JQCR{vjramo41)H=cr z3`(3{N^>_OZ%O@^B9)iQO^~m58}a)^qic{Ug;iIf8*lG?qYmvJ!1x2=iA!}D*U*x6 zxSP^t$>J~t8zcJjsF zp|-7V#m9@x4n(<_etaJ~hcUh=4C?u`%}wM)!MvrQ(fCoPkcxfuERh>sE%BMtoDH7S z)-X>*Uyu!?o~AD{BLIBtg{;ABnxus1!6@U4=e~0k1ISD%Omx}A1Fcf|hr?bX0OVHm z%ZHDr5vfO=iOTJP)*?0+?na@x?mhyzQmFi_BTk7CN=Su{IIa%jRN|so8Swa_qT=Qk z-V;BLg3y0Nes5nr4VAlG)5q@ZgpdAS%oXZsdZH{3HH5h zkBtJ}fbk|*4^%&gMmUa1VPE@EMs1*OEd7QD)|sCH`DE!)#?@_^h&!s&))9j79a3*2 zQibJEBe8>dCA%}QJrhlSNfH-i_jhFH~Vt8yFFVkOrYpXP1))zeRHt23D2u<0@SSe?F{ zOG}pDGFbb#xQFVmZ8 z%$d<}YaVIER^DKDxx0X*egB;y#7bOutEFYAKvvfN`R<%p@5EZWeDRoYt>bxrV1_L^ znyr)rZxX&SkSC#32>)#_qHNq$OeQ}8eu*Nf>UKi%SxczCg$?b`au3Y8X@USH23YAM z*|ir0B$J>8zsBdu8(i(LYE}NbG){%OB`y9t*gR8?T$f#Ci;M5e8PLvWLguDLl0$|v zb`I_EL6$y6M0y|aAr11?BOV?QeiZE|@9FQLypj%lSUoA{5$jBKKfTJ@L$ZGusNYZ8 z9G%MPd~`^b_oBN0aXKeqeOvE3Ajelcyflim!tLEs{(O8~KL)SM!@(908MIJIjy?Ci z5)&g4Gm)wCTPl5h9o!t2DCx}1C3jqmv=lhW$^2$~JU10O6-NK3%j~Swhkjz2=W7Q; zb{Yy-Lfld*yQx7D!79SX&+nfSI9Bhxb8mNw<(}^;Z!)4OuBYq~wx39guO6`yG(&dj zoD1PKT1LR{;oC3miV@dtV22q(?Dq&Z(x*i3uGZznC@KgEeVA#tzkAN|7xob;Y!9#I zfE#xN=|64P%Omw^1>1K%FBoeZ6CbV6s<0yJdT-uGenQfhB(Lg3K-JB`e2|_Ggp{Gc z+|^l+RKXTK=-2}9OJ%828A)Z(KtgqEd$N2OAAI*PsGaLxDqlu)yu?KhkuP{>hF6J z*iCUlc0{)yP>Jg}H($B@Pb5CW3$6AZ>*^l6+i=)b#I^9umfPFw zcUA;B^Fk9g3W%HBFS&klby~5i7LbI~DwA=5y+X6&calWcDQ#hI;B%V1nfY$2tL-P( z(c!=L$gs$7+D|*AQf^_X30SY^%CP)_e&tT9CjqJfr`%lb@&&POH?qrvPTzX(c$JT9 zI;70!yS1|Xv&Bs(O+(o+chlD!#QLzeN#9Rp`0fLb2NKc~)b%@EX?PCo3AZvo zwWz0s!OEx!G8AVVs+R1GStd?})say8#89BmRF1riP10TSAXRSWu6k}EDe~U> z(b-l#qnD(Qw4Kt58SDu0AT%_q>{*7SXA0QdtLxX_P)8Q&6bt*xjCws z{+d**`#g+E6TiBZ-T8h$5}mT6>8fXM@ZArtHGCFNuV{_ad!m{!(tXW++dJI2Z7SNU z?UlVN&PmbcnG(b~MKVoku?dWI!MniFjmk7sX57{2AF&B3pF z$nv@z?krZQ+PZ8a+gEs4O`&`&7}r@eJxvmtH$6K=+wG$ljdP-StUp8Dq(@$;R`_PD zSE;>tN}t=e-f$HnLa*w)iu+X`D-6=UDc^Rf!)K`h5ed$Zg(CPx#Uiu)=HQ5OtCr@r zzV6V|>l^=KkbyQTQ47Jy;5=4K?gm|gI5J_e6}PiN$}@vGHEijBk*GNTrVs*82$;AS z1J8R<*%}(lD+AO_9i1%g?SN$;^vv{3039kJ7fYbd$;=|m!K6bCP;@bLboK-Q4-@=4 zoZ#+E4Xic+9tLp+_7MSA{lig-a5FP9vof+WvM_Q1bxKApMn+2D571B6-sIH<@c(xC zQ)J@qXle$>2w>uZWBk7tu$YC7g$-Z^_{+uultzC&1=#&%V_^YS!~Da>$jA&ViF&>M z_%X5q<OXA1di}%3!piZlzW>dSgO%mqer#O8BNM;8|IC^7-}7VPVg^R( zAAaorejh6n`@hEEWc;@u2Rl$g{>S?`nK^*vYX4&lCT3vgKQ?DaLtqV%9th5sW7Lf6>n{k;L8ZsMlFf%e5o3WXg8X6lJ rnKE)Qak8+O85*1M!~O3rze~`ZoPl8bg#;#`(#-)!PA)1h2KRpeO)gxw literal 0 HcmV?d00001 diff --git a/website/docs/files.md b/website/docs/files.md index a3654f234f..885ebd67b2 100644 --- a/website/docs/files.md +++ b/website/docs/files.md @@ -108,6 +108,17 @@ async def serve(q: Q): See `examples/file_stream.py` for a complete example. +## Serving documents + +Use `q.site.upload()` to upload document from your app to the Wave server. Use the returned paths in `ui.frame()` component. + +```py +q.app.document_path, = await q.site.upload(['path/to/my/document.pdf']) +q.page['example'] = ui.form_card(box='1 1 7 7', items=[ + ui.frame(path=document_path) +]) +``` + ## Serving files directly from the Wave server As an alternative to using the above `upload()` or `download()` mechanisms, you can make the Wave server (`waved`) directly serve the contents of one or more existing directories. If the Wave server and your app both have access to the directories on the file system, your app can simply create or copy files to the directories to make them accessible from web browsers. diff --git a/website/widgets/form/frame.md b/website/widgets/form/frame.md index d0ebab83df..7b593cf789 100644 --- a/website/widgets/form/frame.md +++ b/website/widgets/form/frame.md @@ -25,8 +25,8 @@ q.page['example'] = ui.form_card(box='1 1 7 7', items=[ The frame is also a preffered way for displaying documents. Simply provide a path to the PDF file. ```py -q.page['example'] = ui.form_card(box='1 1 4 7', items=[ - ui.frame(path='https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf') +q.page['example'] = ui.form_card(box='1 1 7 7', items=[ + ui.frame(path='/assets/examples/sample-document.pdf') ]) ```