From 2a577cf6ab536ab1d43a40b684c17e02a1477507 Mon Sep 17 00:00:00 2001 From: taogaetz <59668529+taogaetz@users.noreply.github.com> Date: Thu, 28 Aug 2025 12:45:50 -0400 Subject: [PATCH] search bar fixed refactor all to tailwind add recipe form --- src/app.css | 66 +++++ src/app.html | 23 +- src/lib/assets/logo.webp | Bin 0 -> 4432 bytes src/lib/components/RecipeCard.svelte | 329 +++------------------- src/lib/components/SearchBar.svelte | 262 ++++-------------- src/routes/+layout.svelte | 72 +---- src/routes/+page.svelte | 54 +--- src/routes/recipe/[id]/+page.svelte | 381 +++++++------------------- src/routes/recipe/new/+page.server.ts | 60 ++++ src/routes/recipe/new/+page.svelte | 103 +++++++ 10 files changed, 448 insertions(+), 902 deletions(-) create mode 100644 src/lib/assets/logo.webp create mode 100644 src/routes/recipe/new/+page.server.ts create mode 100644 src/routes/recipe/new/+page.svelte diff --git a/src/app.css b/src/app.css index 4da9cc2..281286b 100644 --- a/src/app.css +++ b/src/app.css @@ -1,6 +1,72 @@ @import 'tailwindcss'; @plugin "daisyui"; +/* Tailwind v4 theme tokens (two-color theme + highlight) */ +@theme { + --color-primary: hsl(var(--text-hsl)); + --color-secondary: hsl(var(--highlight-hsl)); + --color-accent: hsl(var(--text-hsl)); + --color-success: hsl(var(--text-hsl)); + --color-neutral: hsl(var(--text-hsl)); + --color-base-100: hsl(var(--bg-hsl)); + --color-base-200: hsl(var(--bg-2-hsl)); + --color-base-300: hsl(var(--bg-3-hsl)); + --color-base-content: hsl(var(--text-hsl)); +} + +[data-theme='italian'] { + /* DaisyUI theme bridge */ + --p: hsl(var(--text-hsl)); + --pc: hsl(var(--inverse-hsl)); + --s: hsl(var(--highlight-hsl)); + --sc: hsl(var(--inverse-on-highlight-hsl)); + --a: hsl(var(--text-hsl)); + --ac: hsl(var(--inverse-hsl)); + --n: hsl(var(--text-hsl)); + --nc: hsl(var(--inverse-hsl)); + --b1: hsl(var(--bg-hsl)); + --b2: hsl(var(--bg-2-hsl)); + --b3: hsl(var(--bg-3-hsl)); + --bc: hsl(var(--text-hsl)); + + /* Two key colors (RGB → HSL) */ + /* Background: rgb(255, 247, 222) → hsl(45.6 100% 93.53%) */ + --bg-hsl: 45.6 100% 93.53%; + --bg-2-hsl: 45.6 100% 90%; + --bg-3-hsl: 45.6 100% 85%; + /* Text: rgb(123, 34, 30) → hsl(2.5 60.78% 30%) */ + --text-hsl: 2.5 60.78% 30%; + --inverse-hsl: 0 0% 100%; + /* Highlight: hsla(54.9, 89.47%, 33.53%, 1) */ + --highlight-hsl: 54.9 89.47% 33.53%; + --inverse-on-highlight-hsl: 0 0% 0%; +} + +/* Ensure our theme overrides daisyUI's default light tokens */ +[data-theme='italian'] { + /* Base surfaces */ + --color-base-100: hsl(var(--bg-hsl)); + --color-base-200: hsl(var(--bg-2-hsl)); + --color-base-300: hsl(var(--bg-3-hsl)); + --color-base-content: hsl(var(--text-hsl)); + + /* Brand tokens */ + --color-primary: hsl(var(--text-hsl)); + --color-primary-content: hsl(var(--inverse-hsl)); + --color-secondary: hsl(var(--highlight-hsl)); + --color-secondary-content: hsl(var(--inverse-on-highlight-hsl)); + --color-accent: hsl(var(--text-hsl)); + --color-accent-content: hsl(var(--inverse-hsl)); + --color-neutral: hsl(var(--text-hsl)); + --color-neutral-content: hsl(var(--inverse-hsl)); +} + +/* Force page background/text to the theme values */ +html[data-theme='italian'] { + /* Color the browser/OS area behind the page (e.g., device clock) */ + background-color: hsl(var(--bg-hsl)); +} + /* Global styles for Chef Bible */ * { box-sizing: border-box; diff --git a/src/app.html b/src/app.html index f273cc5..08c35c2 100644 --- a/src/app.html +++ b/src/app.html @@ -1,11 +1,14 @@ - - - - - %sveltekit.head% - - -
%sveltekit.body%
- - + + + + + + %sveltekit.head% + + + +
%sveltekit.body%
+ + + \ No newline at end of file diff --git a/src/lib/assets/logo.webp b/src/lib/assets/logo.webp new file mode 100644 index 0000000000000000000000000000000000000000..4c06ad906b1d0ccaa4445afa410716cd03ca3b52 GIT binary patch literal 4432 zcmYM2bx;)C*T*;LX6c3{r9o-wrE?YOQkPgl5m=CtkOt{mLJ*K{kXS(^6cLa{U5hH*JeUVT}};JT@^Yf|0IezecdlW+&0ytJ!3fBTKk?oy#A3tpktnjrs(6%R0)Z(x(__c z+3aJie2PuZ-+2BC!01r8OQRpu^tIr6iLv|bf_;qLBry4?9~E-?BOt1vy`qC}zO&^r z>TtJ1)o5HaoY|~;fQPB8i8M`kc%=>9GSR@Gd0(BHXxy-1Z-Iz5v|``t8mEiYH_YF~ z)&A^TRMPKRbgLQuz3X42-ZKFC@LHvgG9rDt=fOxu>Btt=ajl=&&t z#gXfE=j6butuY>-pTpTT9)I^)C1d zCDI5m0q(SMb-~XdoT}QK&?ls3{i_#>`<=sU&2OJCiv6@BuU-4eOsI-&jydnK4JMA&u(RyIh!)k^Qs@dzD%^m#0mG+KStSl=9;eDh#wxrcv-a+=ss;Q*AapoXxibJ^@ z(Oq>kn#(*gZgen%*72T|XHPKySc}C_;O^hw`Y@c0YV#!D+6sksqpLv7FQ>Xg&uP~C zb-}e${BM|K#|!g=|9)BddQVi+%PwHD9XFNpyt7pKYC7;FLc+1}e0FR$AF1@aw`QQ} z{2*cgIk$V7iR@fV{Cj%vN@1tx%_>Bp9XI{?*Lt`ivN`}GKP8f7#~}5%8s)61@j~4G z{DZx{*6@w9;Zw``ffc^}+1CMtntTs7rpB9)szLXvQ2q;Jzj!+BT@JIJgI0dkch#Ge zNLA->kkcUJz^}R%47CP)Srk0{@1fDnr9rAT;n9^OmS{UWB9NP?ckVMgI0Ii*#W#q3 zRbuLg%XtOuFUM}#9K8i7)WDaRXzhTsAL&AEDPH@-!Iux2rlbTqEqW)l*;*HlM)Z)K&79qUBN8^{^s(%N zaITj%8&h@b)~@~581pAJInVetH+%b#M)&mT^LkJNCVIIGM%y(-i>4XvNgvtk&y5*% z;Zs=q!*`$4dSW)pql=7VxK4b+)V3bcS{j|o;`gSJc3ey~Q3{u0)$p()8T_$JM+s0i z%ipP~H_r&u(U1Kri)03R@bV0kHO)d$#tFNsP8^g=-UOJs8Kn}{xqMU3_uGBB3j=v~ z#%8;VANi+&XpSz+EPTk%HnEMPu)DD5dyI#q4T?UwMb+5))j8vqZL^twbLGMg4y**e z2YITgK3nyw_8L`4UZg7FZE&k?Gh6;bx?`!8HPyy=N5ibKn@3}20Y3Nr?9rH8;T;-% zcfFcy-iQ1e>*E_caW|MS!Y8PzKNV(m)uRKC{P-Uk+9;9?l^%G$!B zm|6JFD7%P@`1_-ivT&y_Ngq2Hd80FtAKgUr_XLP|S-l-h_E$u?SiTVCNV}MhT_WY( zm>bR-R_%k{=O-BElyYyG@z@y3ZIz<-PhwxD{B4UKQDhh_?qgdXTp6HiF;%wn!3qdY zcNLMt;|Bg6-7ORAq0nTbN1RWR`yNG4lW{nb zODJR9G68>2yO~)kx@?mZcivfdv6#|TlQ_8Yg4oQ|@WbTj+uw1-;#*neKuOA#ux&DDp53@^A}1l z*n#}YPgzceE7`U+tmYu5U>;6C7}aWFNe)GuA0r;|HCLst{UcH1x>aU^#=al-{W3t_ zudzj|_l#`MKIX^XD9K-Xm!$^(Y4wM>wfR~sek%E3dBX5uD0T7O4L$o#s#!W-10~|J ziF5qKcjRiO%=2;p2llJy)hC6}W4hbfzriBX zH{&Xka2f8lfCfWbsSIUX8>QPTZUkin_yS&0A~ZcuKYDn+zK_6kI0zWf%#tpj)5qC{ zOL63_hAP=`R*0MUt#nf&{*+CZXqN!hBVSi-C+P2!h|X@zq7m)hR(|*lHD*sB6H8|k zk3>aL&-FAugHwd8@qMCP>p5YO<)q=3IG9V1PrndLunBVdJ?txo6ene)H)PtF9eOMr zy(!3|i&sET7F$hsq%#|arx#;rM1;1-p5D_s=I#-ECtbSlLOnf_66;aPQ3XkRFq&#) zSSYgE+8ct}%xyz8X!Tj5K93fNv~dnhb2V!|Qry|+k!@ublnw>TRCp(8CzEC+R2Djr z*$CTX)<%>ZY#2xx;tbq!nH3dSd*fZ^r;@3h7TLB&qFJixU$CusFdHC4)?htm0h5 zS4Miovn|;sp)@%Og4XMGXaRib`i-(e$$-4Ur{E-K34tt-0iyd$x#ASElcpd>UrbDc zah6iYDn@g#jASR(8%?eoPaq9v&1=6x%TCx+GgX|gGU0{Eoj;B-V9;5STS0(~RC?cR zawc6oWukadqql#aK*-<@z+1uZ>a{RXt079>+C@lDr1O-F<}bQ&%K1E_45 z&Gr|<*d4|EO-RvAQLdg@0}uS&GEs#PsD(^dAr;TZ+N3k%loQy?08Doh>uIMCIb8XA=BH{6IkyS>x8FX6cwx(! z09LHu)x^5FBzJ}TP#A_E$^@VMqAIl5w*n(3>+d*$#O+S_Crc+O zMX7&MW82I6U1cM_Cd#^E0$;B^- z%_c7cYb~p6<6sJ#@XVOMuvEMz8P4orT^_IBdrY?+IW)iI4Z^5a^zwHK8u7~!l5TB_ zH`KEi%*Y8=RgcPF$U85Z>`iOh5e8XR&%-X$_C`2AmDld=B<{BG5WR4egnY%&3pNHC zlk`Rv-@ME>=JDWBL9HDZ9fyl#0-plmu$_Br3Mu$ET*Y+MJy8A|pN3fjIB%RJg}u`Ti)+$A&o`HSVt z(^q0M;~&;ikKcufGez7Fc(Y_Akjjrx!=K(=;ee(R(&FI|){X?X5mkZF@YnPDx$&GL~TuH zc=(6FH`-S`DG9xlDxTeHejpzHiSoI=gO&$-p1+?&fKap18{S3x5FPblpjNOG{=?|; zVXA@TG@2I?vWgWC>g`FH_d|U%!okd{068q{*AQxG3ST8b`g32X3~h|m;M!k~<7gRk zL=>|`)Oj}pjE#ikFI6c&U4M-}&9hR`vxHbK(zpq z52Ku3;ml;W(nGVS1u*G)Jgi}S(wYM&b`2ol;g=ijY1gcDA(gtwejN4PeTk59n;!!G zUZ4PtaU;4*B@*#p64kTPlEG--@IX_c2^Mnvf2Wn6St`1~(_ z>w{PctmG#Zc_OpW(U9Z_wx^sw^T>Y`u8B_>g2gV`D5wa$(3b~?hzX6@kQ5efeIDp` zmbhLdV|j+ulz}^zfsvfCK>W!9#Fx{puD#xn?HUXxpn)<#xgA#RMJ6er4267yYy$jR z+M>Ny9)$gGC@_};q6o@(mU+Z)1Dkx0xpnIS4P7_d8>r8nVGm~zsz_a;ilRFn4?ra& zZ}ON5@3n-NYb6yd#73792FR)-Cxt4u)btCY@Sn0iCW`Khjd&lcN*1l)68h(5Tyi@o z^2P8G>jyliL&|yvGHnGHph(_n8c~jd%eyo#ZyhZWL_@gfdRc^i$w-d8iz*%L5~60v zJ>{qJ7(j6HjTs{+86|pmF$mERwct`sWdEI$UAL+c)F9Ll9dt?ORi8v0vmPyX@%(-W zv1_x#ujn_A8Ny{`XqgpUR@7)=W<&zp>@y_Q;@#bNb<`YDqG?&W=HjY3nfNqAl%#w_ z&#q&-MnoIvMA_B=Up;}5kzhP93n`wKJx@x=q&t{>bi|Fw(!PjwpD0T6buK1>Le}%~ z{-JUfzO1JF+lTXY7WY+og$~%YFm6|&twJM(DkY~;u{b8zmwEQq?7+vNjl?F098h5@ z6RaH6Cq6H{3dx$5b(Y`JNNkFgj94W?7c}_7C@Kl|#BBZjr^^BnShaEqxlhazi`=!rYud8!E z05_ms??ktY43q@i-@czj1F>>`D0z=cx90-QT|9lg%pax2pMtJ>Ru<=Iif{=_73rj8 zU1@Cs<(_rSlpog|eYnhbpA=(kbc?aTw8A^DVqd9m`6`R=240-=VhfMW9{L2f$&J6d z_#L2(RN~uyDLB;ZKKZca`Md4D-Gi}hY`oTT%6_1^v`Q@spkc0~iMjoK(0GY-1ORk& z1OY_1I|2X%2nGOe>3_)##Q&$7-ZIO7Y -
-
+
+
{#if recipe.photoUrl} {recipe.name} { const target = e.target as HTMLImageElement; target.style.display = 'none'; @@ -23,8 +27,12 @@ }} /> {/if} -