From 7c4feddfa59cd86157fdfcc1d85d3f98e7a61473 Mon Sep 17 00:00:00 2001 From: Nicola Malizia Date: Fri, 10 Oct 2025 19:30:59 +0200 Subject: [PATCH] update schema --- .../app/__pycache__/models.cpython-311.pyc | Bin 5035 -> 13079 bytes .../app/__pycache__/schemas.cpython-311.pyc | Bin 4720 -> 10714 bytes packages/backend/app/models.py | 185 +++++++++++++++--- packages/backend/app/schemas.py | 93 ++++++++- 4 files changed, 245 insertions(+), 33 deletions(-) diff --git a/packages/backend/app/__pycache__/models.cpython-311.pyc b/packages/backend/app/__pycache__/models.cpython-311.pyc index 3ff203d0ae4863ff8739897153a6b4f6307828a0..6003145aa55f231fcaceca9edb3f5415c3fd923c 100644 GIT binary patch literal 13079 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 diff --git a/packages/backend/app/__pycache__/schemas.cpython-311.pyc b/packages/backend/app/__pycache__/schemas.cpython-311.pyc index 3c5bcb269bf89f2ead0ffa339df715af07d9957d..fc09b76ce4bf81a30f28179892481236a7758fe0 100644 GIT binary patch literal 10714 zcmeHNOK%(36`mn4DZZ(<^?us2ENC#;NiZha!kfJg})lu3c zG}@+WA)s6ch)@KmS1F9_`b$Va3t~21w43Z?$SbdUzI#VAoEb`CnsifiH1pxk`DV_2 zojK>+OZ_dGj7fBScgM`t(Zx{2%YaXp;tC9cn>vzK%I#0_Y@ z9-V!h8zk<8kL%~$5OKpkodcX3A#PL~@aP=m+!%4=KJEnPCWxE#=^WzR6miqqkVoe* z=VpkT^>HJdJ4xIrpUzRv%@KE68};ZM%P3qEd~b7zP<>(e>GxpTyw*CsqVCpmY4 zxQo8`rZ{(rxaWNDO{*Q0agkn?Hd_yF*9~kTT?at{^q)7rtYnlwR@XJMJw_96WQ#C8@Zyz1dWPrrnA}H+FH4iL-&kq_OWz;Mm+1gm|I`xmyuu9 zN;%`g`lg;DhC`eR2g3x_mcM2!S-oAo{gAHeZT-aIv#zdTlyDqCmD4p1DlK%H}E+y|A=V(F{-j&9Hb?pP_0nQU|Ed8G=VQY8UY*M&T53na5#o9l^p{ zMIRte#{-@k^hwA77~F$J0!MvSYDVJKo7I~SZ#LO{z2$7M`Ms7~Q9rb}Mkz=F9N%u~ zv3r#bwNQqY>u5+u? z+;O9X$W_x1VQ68|9(~HI-0sGaR+bd6+7_nIqN$$F@M(XJ2sj*l4!}FZ?L|M`=8cPx z0r*F_V7~#8tNTF`;5g-)-e~}zQdq(0OruROyDx_p8h(+*(7CP-i$BY@ieG1dXmywQcuX<8bfw!$JBfMKQRqqM|!?Ugi9&cd%?nWJFXxB)y4mg8?V`vb$YW!ghE#+<@H#q$z zZ=H58k92YaZap2?+v`*b_hFsb+YJl~;2a9C0JwXE$Td2)!F)+f`_IsFc3qfmaX8LS ziI5wNx)>(hpb{e{?qWg~lOQJPV!{@a^1ag~82ZQ~X5aO)QKHl}Z)Ks}W)p@;NwXEo zNi(K>%X8hHHSIxmNzY}Ma%*bVD15A$-G`$5#=4O79ZJAw4W9g(AxbbcV9tC$ksWU2{ZLqV=xijSWYpc7)PN~kQe5S$9G#9Vd*@@kuN9Xs3 zFVz{{Ty3zc&C$u~Yg;eWu5VLln5478kqW|6&@h*!*f!lZGz@s==D1JyZBnfRUPQt9 zbRlw8iP6PzfX1{pPA5iap+mFe(SlL52zjDKSPhdQb(v{TW1X+qjOBS2uTuW%YKq367G+@*Rx>BqjTV4j{7X4i#MyQKH0AOJt2%YZq$%&BdN=^m;xoDDYA zNw|S_*Qf+ZfaCk5O3~Y;+=|A(<>+#O7Jciv%4){!%IA2-bXV{{fj!ArnAA33gR1p23LP=D`@)-#CcDSv;6l+p$>Qr z1;_Fsa#i%-viuNlVvD`UH`a^goT~i?2A|-%IxzDb^^UtokD2Q~!zg&X;x8cs+@z~R zGwvC#Gn@@J+=&@OyKA&(iFBm_FY-DU0d% zF=>k#@G;#MGw5S_Earrd>9v?4V%%fhXEDRXjJSH*Z!x39jJcQriy0?o!o>_)%p@^W zF6M;AOcUd7!H~tw_?TgfnI*i z7jt>djIZ&{{9|I30PAqg_Ni*tJ?%H&7U)Z8nGsdVZs{tm)cXp7fSziR;R^ z61cUqtu*dhGp(Mba(T(f=5&n~9+eH9HY}qC?Lu1Vnq551%%V$$@`|2YU)?mj%gf8u z(_At8KwB~jw7J>6PP>Z;A_W8$TK+AZ^k#6*0y_#YtOGs-=l}yy0c-$x3ivB3nT$GH)E}T2S|-O^(Lcfi_-#Vp1bhtmHNfK+ z;jnbTJ-Uo%6p36R?QkQrnHa1yoDDYEoIX{3qZZli-$~WkDLNbM6l8DKhIVInD7QRL zHaT0pz4g&V#?Xh_;xLMr8A zc%UH0zg*&hf*359THOs(d7$9iPW*p2JljrvYJwb5(u~@UNG!mS$(gYY?v$|pHp4t? zHO#IG|MiFpd_!I{%sBE|@vAvW4gSNTVfN;&4biOF1TD}HO{CL4?1Z3~M9v_${G!`! zH>rbl{5EO%D_uq(fs=hUM<%w?_!DUf_NFom{a!EU*}?ifJ*9^Le8K-YN-qNb0Js6z z0!#w_2*56m{wDyoq1tYN{T2k^&vY68AaGjQ`nzxIwpUAeKP-)olWV$B8`yrc&c^6$ zu(9UY1Z@)Cugz`0=eV$wb6j>|FG<@*R<^hwkxrea#sN!UQ+`(0v|^SJ#Cz@rA*?OEnLi@YrU_2X5&Ml1~27+{jLACzUeDNWSfXH%N4 zw>z8CY`xvtl-{U++qs{TEyY)RK%PfCy@1+DigsF5*zTLtOO$H<+Jor3A5c3< zpE^`RmisZDUfAV*@5gvr)KMc}A3g8uyuW7Nn)<+LU;SZuYG3lh?!psDpE?xThC-k8_kRBdX>+)> delta 1315 zcmbW0%TE(Q7{F&A-ENmYs72^f9<8+CiV7i(CMu#r;v*4FxUC1WunTUok7l|YxL8cQ zBbkGD4;bUI@#O0t@W9c`f55?5qh5#y=bH+KB8hR^`Q@AW9y9ZO-_V6tIsGD)(h&Q8 zPVPRO)3(z344XVdHnIf|`GP43Ad8;pOQytS$&>w<8S`aRW^>t&d5Rx5`D z=Wb{_9-FB5YLOcTmS>1mwyj*`P}Q~~CvtsfR{#fz6r^#oAoVuKdNxIc%7NuO%{RT* z1oB+Eq+^vC;S4|q!~oq4bcqHm07FE?S;YJAj}NlQv-Nw5IKn;-L%s7&xVSxoBW z{)v-BDr9dP5*~%sF~DiSc>uSZ1Zip?uxA}^yK(UQB&!>9ZQCi5?$MhM3QaMW0*^F+ z=Vm`6H}Iu%`; zYRlMRZD}uB5!KdetVKyNS0(w8+>9Z2WP@f_aOgA32)j#bkyGzD165|jV8va