From 5769f74d6885c6c36a1fb16bb2545e79c989b500 Mon Sep 17 00:00:00 2001 From: nadijagraca <108531476+nadijagraca@users.noreply.github.com> Date: Wed, 29 Nov 2023 13:17:25 +0100 Subject: [PATCH] Enable `NavBar` as selector for `Navigation` (#70) --- ...5_antony.milne_models_navigation_navbar.md | 48 +++ vizro-ai/hatch.toml | 2 +- ...7_antony.milne_models_navigation_navbar.md | 46 +++ .../navigation/accordion_inside_nav_bar.png | Bin 0 -> 16189 bytes .../user_guides/navigation/custom_icons.png | Bin 0 -> 12332 bytes .../navigation/custom_navigation.png | Bin 253844 -> 0 bytes .../navigation/default_navigation.png | Bin 258342 -> 13554 bytes .../navigation/grouped_navigation.png | Bin 0 -> 15409 bytes .../assets/user_guides/navigation/nav_bar.png | Bin 0 -> 12136 bytes .../navigation/only_some_pages.png | Bin 0 -> 11239 bytes .../pages/tutorials/explore_components.md | 4 +- .../docs/pages/user_guides/components.md | 7 + .../docs/pages/user_guides/navigation.md | 294 ++++++++++++------ vizro-core/hatch.toml | 11 +- vizro-core/mkdocs.yml | 2 +- vizro-core/pyproject.toml | 8 + vizro-core/schemas/0.1.6.json | 139 ++++++++- vizro-core/schemas/0.1.7.dev0.json | 137 +++++++- vizro-core/src/vizro/_vizro.py | 3 + vizro-core/src/vizro/models/__init__.py | 12 +- .../src/vizro/models/_controls/filter.py | 8 +- vizro-core/src/vizro/models/_dashboard.py | 29 +- .../models/_navigation/_navigation_utils.py | 22 +- .../{_accordion.py => accordion.py} | 17 +- .../src/vizro/models/_navigation/nav_bar.py | 71 +++++ .../src/vizro/models/_navigation/nav_link.py | 76 +++++ .../vizro/models/_navigation/navigation.py | 41 ++- vizro-core/src/vizro/models/_page.py | 15 +- vizro-core/src/vizro/models/types.py | 18 +- vizro-core/src/vizro/static/css/accordion.css | 5 +- vizro-core/src/vizro/static/css/layout.css | 58 +++- vizro-core/tests/conftest.py | 10 +- .../tests/integration/test_navigation.py | 154 +++++++++ vizro-core/tests/tests_utils/__init__.py | 0 vizro-core/tests/tests_utils/asserts.py | 30 ++ .../test_get_action_loop_components.py | 8 +- .../vizro/actions/test_export_data_action.py | 4 +- .../actions/test_filter_interaction_action.py | 2 +- vizro-core/tests/unit/vizro/conftest.py | 24 +- .../unit/vizro/models/_navigation/conftest.py | 85 +---- .../models/_navigation/test_accordion.py | 131 +++++--- .../vizro/models/_navigation/test_nav_bar.py | 129 ++++++++ .../vizro/models/_navigation/test_nav_item.py | 87 ++++++ .../models/_navigation/test_navigation.py | 160 ++++++---- .../tests/unit/vizro/models/test_dashboard.py | 57 ++-- .../tests/unit/vizro/models/test_page.py | 3 +- .../tests/unit/vizro/models/test_types.py | 4 +- 47 files changed, 1576 insertions(+), 385 deletions(-) create mode 100644 vizro-ai/changelog.d/20231128_173055_antony.milne_models_navigation_navbar.md create mode 100644 vizro-core/changelog.d/20231128_173127_antony.milne_models_navigation_navbar.md create mode 100644 vizro-core/docs/assets/user_guides/navigation/accordion_inside_nav_bar.png create mode 100644 vizro-core/docs/assets/user_guides/navigation/custom_icons.png delete mode 100644 vizro-core/docs/assets/user_guides/navigation/custom_navigation.png create mode 100644 vizro-core/docs/assets/user_guides/navigation/grouped_navigation.png create mode 100644 vizro-core/docs/assets/user_guides/navigation/nav_bar.png create mode 100644 vizro-core/docs/assets/user_guides/navigation/only_some_pages.png rename vizro-core/src/vizro/models/_navigation/{_accordion.py => accordion.py} (77%) create mode 100644 vizro-core/src/vizro/models/_navigation/nav_bar.py create mode 100644 vizro-core/src/vizro/models/_navigation/nav_link.py create mode 100644 vizro-core/tests/integration/test_navigation.py create mode 100644 vizro-core/tests/tests_utils/__init__.py create mode 100644 vizro-core/tests/tests_utils/asserts.py create mode 100644 vizro-core/tests/unit/vizro/models/_navigation/test_nav_bar.py create mode 100644 vizro-core/tests/unit/vizro/models/_navigation/test_nav_item.py diff --git a/vizro-ai/changelog.d/20231128_173055_antony.milne_models_navigation_navbar.md b/vizro-ai/changelog.d/20231128_173055_antony.milne_models_navigation_navbar.md new file mode 100644 index 000000000..f1f65e73c --- /dev/null +++ b/vizro-ai/changelog.d/20231128_173055_antony.milne_models_navigation_navbar.md @@ -0,0 +1,48 @@ + + + + + + + + + diff --git a/vizro-ai/hatch.toml b/vizro-ai/hatch.toml index 4525a0e3b..727f65f6b 100644 --- a/vizro-ai/hatch.toml +++ b/vizro-ai/hatch.toml @@ -40,7 +40,7 @@ prep-release = [ pypath = "hatch run python -c 'import sys; print(sys.executable)'" secrets = "pre-commit run gitleaks --all-files" test = [ - "test-unit", + "- test-unit", "test-integration" ] test-cov = "coverage run -m pytest tests/unit {args}" diff --git a/vizro-core/changelog.d/20231128_173127_antony.milne_models_navigation_navbar.md b/vizro-core/changelog.d/20231128_173127_antony.milne_models_navigation_navbar.md new file mode 100644 index 000000000..0f207acec --- /dev/null +++ b/vizro-core/changelog.d/20231128_173127_antony.milne_models_navigation_navbar.md @@ -0,0 +1,46 @@ + + +### Highlights ✨ + +- Add `NavBar` and `NavLink` models to enable a hierarchical navigation bar with icons. Visit the [user guide on navigation](https://vizro.readthedocs.io/en/stable/pages/user_guides/navigation/) to learn more. ([#70](https://github.com/mckinsey/vizro/pull/70)) + + + + + + + diff --git a/vizro-core/docs/assets/user_guides/navigation/accordion_inside_nav_bar.png b/vizro-core/docs/assets/user_guides/navigation/accordion_inside_nav_bar.png new file mode 100644 index 0000000000000000000000000000000000000000..caf529a846f291fe41968549547157f5f8731127 GIT binary patch literal 16189 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

D^!%885s^0M`&ox%A+D>=u1xM$^d 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 O9!XI-kqRM$p#KIpR>N)p literal 0 HcmV?d00001 diff --git a/vizro-core/docs/assets/user_guides/navigation/custom_icons.png b/vizro-core/docs/assets/user_guides/navigation/custom_icons.png new file mode 100644 index 0000000000000000000000000000000000000000..19a456bf14b664c610eadbcb9ba78c9b20868fc5 GIT binary patch literal 12332 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 V8%sRI^66D3Nl`hGav^=+{{?zA@Ff5M literal 0 HcmV?d00001 diff --git a/vizro-core/docs/assets/user_guides/navigation/custom_navigation.png b/vizro-core/docs/assets/user_guides/navigation/custom_navigation.png deleted file mode 100644 index ba7e361737f31a3dc297a731f684424b43eea317..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 253844 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

    _KEj-_F%`-tz41k54;M`~r_Gz47I>h8#QZmg( z&>T4r^&A~@)f*M3&k3yzCj~G&<}SP_-8u!)9Eb-?w}bX~^1Qa=bfcSZ96q#k8NH>% z%#>;gp0RUi{G8yJUWK0^b3s&D=G+An`2%-{zkDtxOAdaVAv-PpA<~n93f$THjc+atcLYdtt}I<9_9RoLi4t}B>iVp| zsV0rRGq>Z3#j=XA`du{$z|-3H(7NOe7nD`4O)Rx*@t4f5)yJ;H^-TuOs1KejZSTn> zDOs9Ytd*C{Ez{1IptIwJl8mO4F^rYolqAr6;WkzU-ol!ntH9)@`x)whwLF^ZSItYb zR=fh_gimv9NO_j~iVnw4`}J-oCgeaYuJzV8n_sOJL4-Go7?@M!nkT;%7hLy3MqabA zF;eQC5b1ncEN}L$81w}9qTiThhV18AO``ZpKYEI1PMd6FG?pX7o+)yI9AaAY_md#i z<8wlK|ErB?Q;M}sPTy;N{z{Vyavxe!(o4uC@5(3DONbU(8W%4GtyM{$XaYq*V%zJa z1y?UHqBY0gggXUMb$4pQ>G*)tpz#w~zA_R+=OT|;_Bcv=)QRjdlbOFNw8_>ERJtWa zRMw_$>2qAn+1R;6K~97bDsW!)(Qjn$X>$HtJCl|tI9
    R38Wkq~L&c#v-6{#}j! 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 z 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ǚV6H64;D)$kq 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�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 diff --git a/vizro-core/docs/assets/user_guides/navigation/grouped_navigation.png b/vizro-core/docs/assets/user_guides/navigation/grouped_navigation.png new file mode 100644 index 0000000000000000000000000000000000000000..59beeed9d16a2e6427f5e901ad31b92b69201e2a GIT binary patch literal 15409 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 literal 0 HcmV?d00001 diff --git a/vizro-core/docs/assets/user_guides/navigation/nav_bar.png b/vizro-core/docs/assets/user_guides/navigation/nav_bar.png new file mode 100644 index 0000000000000000000000000000000000000000..e2715cdcb65019edb6b3a7bf16db6ca73c31fd7d GIT binary patch literal 12136 zcmc(lRa6|^wy1&N1P>4h?(V^Yy95pH*0{TSAh=ubgaE-SzCqWYH#84n!+UHC3bx+tE`9Ui~qVGV^rp4132M0kzh;AJ$Z|V^F z@REBF<4LvV31{R$# zeJfWZGi56XSNyxFVW$Wmnkp28yh)Xq6hw?Ox&U8Ve9#7oC#e<5${7qiS)0F%hX*W< zK`tY+s9_Mi{I)5%S2ESEEjK1P_v`^V!sro5{3P??qXC}h)U*4Cr@Gwy&~1wyGHE&N z+h9`cT_ilo;gjTYViIb%sN03q8(cZ;d+{L_s^4TTQ4Ln|zQ5+Gv;DZ`Hax4y-7D2s z9ft-l5Yvnl#S3y(zx4-l_gRg5>DXHYb!QD3Nu6zzhe!nZo6)Mgz8E^b8Z?!fHlYZ)m%bXwJkFxhAK4y?NV@3VboUtU6O~;1tZ@{l z*;$Py#mh7-u{Jt{5??$lOxS;0LlWni(s_lHYP5pTEC}H+E(Bi=tJ)9ZI~-gqN%s-= zmk72?{F0TBE@n!aA0c6iz-5B8ql&FM4e>E+c2;6-xP3??=*`J_>u~>5M!x50)-}x5 zD?6{(5IxiGSsbtZCb1yqbRD|C9cV0H*h9VDkR?Vo6T~$mwuKha54$jdOZR&>Q9%R` zyGjg84}%}`dcq&R7{an$JO&l9gQFZ%+0T0gqTrQ8JIff9Tp-d4Vm)M|AX7bRa67dd zEM@x#W*8wfly8E{lDHE=7sQzTh=ziUF*t7^J`1xb@FqYb5VKUn&Ou`dQz*bx6BUN| ze3lc!$+lGBbi%<4?#-DQqk0PyZ-7^fvfs7E{K};B$&RZTS}q{Di`$N{8H+KbXtm3Z z%?q*>^14&xgv|{DMu9v5N*W0iW|+;Z&{3eSOe!6u8A2vBTg(Wu;LoAGMa87aFupE{lkjZKX0uNUEbHiH^I#Z@kJl@M(I=8bEUJ6KyODN z^;Xzx)O#)1EEp_sYopq{xrUVQv|KAWS-MeghR6zM>LTjQ>bYL&JNX2S8$j3*i}rB^ zLlr#?;e8NCCqpN-K^V0RJ24MtS13()WVeGM*(s}i%uTQ;sd+rUWVoc)1gsMGF7+<0 zdCEmBy#xoPXUuxP;hCxf!!7SE<1O-M;qm->MMD~mgpvf00kHv*0XUk%gw!`OVRSXR zg-V4Qg%W$8*@ZOaztXfQ^GGy)ysN)p*xhD@#`VTU#jPFUNtI6h#QMk@U#YAiGpj%A zG)p=wQaNLs)xWxNvDv&)@8IqLx4}3Nsi3G#PzaYOvM5@Tqnj5sQO^DfFFZ+@E|(z3 zd4h6dbHjRrY*TGOZ6GU_NJ)@phpzn1#G5dzD4GizFC}F)W7@Mfb<`ZRSJbU)N-7SY z)@ZP(-_u;udMoA8dD7(5+N#+o`eX;FvZ!k0Rtkg420)41h3qO+Dp3~xdn{9)7Uf?n zGz;b|YF=4zPEk(1pY)#myw^0vR46c`FlP5#a-4dKtB9pkYRYMR!!pSt^S76Daz5Lx z`GvzB#a&R+*QBx}b;~x@{ON>Rf0rPaQkVFvR|MZsM5q+=mGgB>h1EWBD!4}41RnA6 z1rUlbY1k&~hAeq{zj~y89KK_?lYgD?S{;@f78y1$_>G8K*JkikuxmuQ`0MY=-}%IK zddn+H>?`emoHAhk=^hEPt?bM7gf#K*g6as^gL%v|{*-54YaX~;o*JOxr%|dAK8xh2 zbFO}VxJ9s~$6&=UL2p5Sq&1*%r?I73tI=A^TDzvMqPbX+r|zj$R%cV=12Qt~s+zTA z)0e41u3og7x4G{bS&}oJG2^r;vm~)bch;u>+Kg&8Y5XE zQ)q^|hH#Fsk4UfMkB<59`KCS6uSMPO+_2qTJbt;0xv9AET})reo!OjZo>W|F96B!H ztnVK;E!JiI7+EXd)4=q(^09nmyp4bCdZ2qCf_V$~1!@jzRj{p{z&}vPLnt6SNgr(p zaS8o_xSQD6z27#xJX{!Ch0z1w0=JQ}nk)jZmi|EDPm|sC$=b<1dNBIhmn+HL{`&sA z{%gfdMG8fc@vU*o@3!3q-6uwxM)no46>vsWIGzkk4Q}is9E<{`wxJzyi87@ODjHvF zFNRomK?k6|b(T}b(~vcRs=(Q)gJ009!YZB6eSuZs=Mnq844YBs>FyNG6{6eSaoto> zBT^sYdgFEC2jjBN`EIZt)M#31?vwlz1B zHd+_o)cjPO`lVBe703_rW){9wIwO?D^o6rG_}Tz9Z^R^z8-*E064y!gZs zJ%8s;K1m?)`NG(rKuC~dhj4qbp7Y*(#dj0o?1YJ#qJD2UsjF|ze zfvZE(BaCA_T2yM=#gZn^`J+*+Usx@PM~Sj37AjhWOUJ86yR-YXb@o|zt)1RkK3mVc z<;$kNjx|2cvycb=2d|=D2>_Bfm5jVw-F(bpJ-t z04jK&S971R{PT(|K$-_C46pr{@a?Ntv zTkq46A7aToO!s=N9zFL1Jt!u94Mihr@_LTVE_*!d9)rkD?}j<8Z8IMhudd@WTr!61 z4s2^&xSeX8nGX2p*XJBpYqt;ST-9A|E?_TRuEj2pFZwP~k?r6z7i636_jIpXe%`-> zWeJ2qH6~2pQ}$GU3>hbq6>$+U4dx56+*YI-V zqW;=#=68?0L>5ApEZ^v}%vD(-PB4>Pvy-R0BdLesMdHp>-He!R!t!Kmjr%-5F6-@y z&Rx^bYZ#&gfk|&;uY;R6m*!R$J*ErWXH4RHbFFv21P@71hiNekhNBTs)S|21q7b?> zP=cY5eseGo_NNCQ`N+l&T-#s!KX+F-UPt_a91BWWLGDk6`S#uhVuzI0na~fdJGcq* z&z$Br$MfT%VtxkJ5JZLeK)o@DPw8<`B@p5hU=!16~jiui}Cs;DC1w;3b+3^{=atDcP_7bqw(X ze524O5h*F){gaUc2xQ}EX6v-8_=F3Xnl@KfcT$)A$YW${&1hh3YY1X=v$g}PK=8Wp z0EgBfCj(+PYbzT^9ydPHmpgcXWAJGvQsS3eoGkfB)nyfkMQj~F#2k#wjLf9`h{VLi zybi`DJW8VC|EL2JAE}v>lN}EeldG#MqbnPut%E5O3pY166EiClD=PzV2ZN)#jgx^J zgN-BEUnBprBMNdfaxk}ZGPkuM2HQ0-v~_mkBP9hp`tQfzI6-da|Mq0#_)l6uf=u8m zOe~DdO#f{gP~`=mBRr~PMqrchs7bwbL(IbLt@x5Lb`6d^esvHK?BbrVLvFNqz}XHaS#YGe(?wj z`suIJ7h}PK2E2m)kV8JV{EHSVBr1Yi8iTthj!De26=%jd1z?H?Qj=LuVgyABu+@$a zP0hSjKblT~5Ceh0l>q_MyW2lY0v1vN0RjIywTc`Pu$7OQ-Ofe8{ozG$M9XeZS?705 zA{T@rUvYwZ^ERK%Gz2W@qX2^Ag6T*cIL>rAKd5!5jf0q%poM^-qwa?^UV{D&4mv8G z;6>mD2W_9lE%OpI4$OiYu+ltLM)6JBZ3YrvV_jpi!k1eh&0 zau=$U1jOf$>R;|T*L!gfO(>2MW{`j|@)w(~NsW*B*%b|Si`5k$PS)4D#V$M>bW1c7 z$!CN`m{yZPbeJ161&YX{HP)X~Qq-*$s&C|nzS9u~5)Dvq`0#-`DhbS%`oMCkwHtJ5k?6bZHF zLNM0Gw6M4sK|g3ez6OFvYO-)2#l#@?zj#SyKc*UjCY+*z!pPFQDj`1PIakWIv#aZs zBI@_CN)@)(?ovej+17`BDyO4xw;)16)~vHHuMdQc&S>U zHi^{Z*jPBWKRV?7X$W_JA|2IaA=094G9!WA+6~PG5tlaK$@*BGysL7dx{#jZ{XU5e zU!H7Q9Tj>C$7ro!n@4eJV7907a zS<0H>e=>OwRQM{`(m$Bf@IUNe>Qo#5TH9G}izf74b0&jBCCF=6f3@kJN3x<<#e-4+ zqxkD_ViPgGAI;zXbEs)BON6h{>m!LJiDUjiyT{RYC#R>q0mml0AwNl&S)(8CQ4Ri_ zs1bTf$6k|;H-q|&_XlmC&bLNHOVf2zSV3PaU#spr81+Sn=F1(Pl>M?@ubEjEQg~iX zy2D&f^TQra%T`>UPHLW%%e0))36~#9=VmdsL-V-Y3rm)WZkPDYKQ*;CRb-7`N4WTb z3N0lJYtZQ6Pi#G=J>2@!F~h;UFWSR8GAIhW5vt{C-?3VHr}qSnW&kjdaK zOY#^R_{l<*S6SYySiboD!7Ck14I3#0jbTF+rs<)ui2}a-2MaY4;o-0E_ogh}+=t$& z*PH#UwMb`4lpC!R=?H*1S<3x6XAu?^75wmU|G0a%x>%t2==4t9*qHq3{B&EBUQ{_^ zQlPxfVX#Mkv+$ByEALHEcIc?^L9%mJ0jZ|8$Jyuau|P1JnC79=8Ck3X{q~kNIyyQk*ezRtuvn^Uy%T>9K~%PRPnO8I z8GeoHjC z%hCR9Jy+cwA#bv`uRGvORY6P^>ioOd+-RNQXsIQnW}icI329Kj==qC7i+5jU(mpQ< zq#7mh=^yuH>g1X`0ngP=G0;y`@hTI@6!ueDXgIjFwH}#)3B7IBPucDDLnV?tXt%@7 zdMgUbKa~*pJe@jzN8;&kgaDSryW@&6zJgrGq?NOw1y&? zNl#bikyc*0bH7X=Od>RGNK=0#qsfmgp9sOWJL5xABRG00=JW8~6Pmrq`8pdiX0rla z_$r@A6R$kOa58b|^}{;du1z`v9>#q{$DH>1P8~_3*Amg0?M=_hPpXM|5Bmh{)_3gE z3Dm(d$)!8ZY^I~@!*x`<=Y8((H!B8Vm!QuoAy?KHXSx~;CK-E^S0QZ$IOL>PX(#1v+p=<#6nQ4 zSuO*m-mNmc-(9=Hn5=eENF_1LNQnFStaYR6t1HI|h?JmVTFOoMV5OP= z&Vw;_PQBF48c3wgc4Hx8P;VsGlO&GEL=(C-+?t^o=~Q1$HS~X7ACm)RbP)2(&%Mbj z84iU|Y5CVysC`+Kus_tT{Z2Glj9(LUJy8Mb*ZQ!CjqgdD(#4%T8A^H;z-lOk4Nu<6 zcnK_^U)P*x-_Wd8diU8B>olP=XmNbs~e^8Hr5TuTW2p@CYV40FFtAW>|-yx5127EFkSB^35 ziawQT2>0DBo3Wj$_0;dpTzY!q^yY|2JoSFe(0cEBq#c9&IbLPPR?6kFudpmk z>Y;`Smz#3G6*TKmpeeOp_#v&NZ@>|we-9epqN9J=L8Hc_<>}WRF#)$g1*LIaD;>Eh zgNDyS!@$4?N&vQIh}$ERO6`fb5W(ct?*Kh96~JOh8U4<2b>_;nVHAf7sH(mp)UHKG zy3)I4VPT(;hhIiuP2lN>DLF&zYa*078}N|&nXd1J*QUWHDr{1=!Dt8&8zn$&*N@u= zFT`d55F3ifVDO8u0LIYP=XAao42=ND)4*(&`2|DM0Ab-etBMNjCIlV8(ANy_DF6Bd zF!cV(@d|8yg&82vkQ`7KSkSitW9YK)NG6y(@x=iQWv;eLdBIRw07H-NM`z=~xZDMh zCw_1e@{7;_FzJx@Gq)!=CA+r(d3KFe8h{06PC#fl7BH0u=Yc{7VCY*-j*ownS}{1< zHC;Fe$G-ekKQhY(SpA6ru)FiXgLwxR4BH11aIEJ*;3>zMj=e9jz5ye%z6sS!to%@f zBWFDg7@BM&vxzs3^uS4gZIS*zviJPb>iMWZ2xG>4zIu+u6cyT^G92mTGueudnmCQl zhhN;6z5I`Hydn*IyqKRNS>AGG+iFg^Wq`{&LEc`rFOR9%iv^E(fGm$HkI(ObFA+^B z&l;oF7Zns;$9c5S0A5k!wdLu$=9}OHpzc>(M4?gexq|4_O26qY&V5lhZo9jiuP&tW z)PXK?Df#+VV70}#j4dA6uJ8h%lhhSmIGC%>ck9oo`njNigo(8{;@=~j?+ev_zo(SV z4C@Ms-aRL5fhDG->>WuW#JWB&3ZPY?6Bt;*1;)l47-a2-={^#asY#Lf!9k?!yxh2~T<`>QbyMz2 z;>9>LY?qJMcDK@R^Bz3$f>GZE?M*$}?XH0)OFv<1)g5&M{3RB?C7ZbU8_E5At7pn` z2AIhOj27=?Z?>D(6$jgbZO;3SO^ps4BX111tR9!#>>VAuuFu;#M`e7(&P~5&+pP-M zyBzXtG2I}%4Z+#L3l(Pc*ZJ<5agMOOxi@*~NvZ?DHO1p|+{G#|<;$H7VKnH!(Icqz1>$&UkrMv7OK1NxbVDb$o5> z7pYZuhfxGgr~79rcME;_@Ea0w-Nw?lNkMIUmfItIe@X|Wnk5JqSXe4jb{%h0<79{d=1h?z-iFfwIx>at;>}_d0e5?U zl2;PR;5cmN!p^su%sSk2Y*7~zw27|ws44i}NiG2}8$bT6s~J?)(C3@G?0)ae5VSoS zVmM!`L#o#%bQ1phM0ZKGwwtmBVFFAiP`Jd64l-HsQkILc_}%50RQ!cv`)S*l^A_AW3j>vbbf65Jzpzt^+11>HPCXKjOIc*J3V#XU8 zDn?qz6(#5pNZLg17zJ{mI_!dUtE42CO+{_f0jz%U+ zC(^#n=LPoETqzJb#wf7qgu`X(4cKcQd-+M^_qTlhP%vjkyG(R(?2juQuhNxJEkXk& zaWxETbv3YdQ;!zIMfIOoc_>Lst08Hz$xoAb2ZllN7^{_Xii)VKtLV@7QQdm{w>PiY zE$80a9NBQW?Jyq|HQ-7u=-XEyz%X!dOxH&|SRBQDQz2rhU`fitq>^8~*kwy{0ALft zjvnZhL~W)qmV`T(d*9ozn@_-tzzx!tnQcC41Y6BkQkd&42tQx%nLRAmkMs1Nt^?3D z@R0Eu9ixJ_TR4tfb?Sp{8>B`i{Sm8FZ|AE=%Fj3gH6eXGQfX=`<$6jVHhbf^uMYSi zFth-uFv%SYPgW?^PK8Dy+M6l?Y4;xKkihTFX!U$ir46@iq0lQ%^}a{dTsr^z-8Jg~ z4{i;=RuB6|hfb@P#=&eA>U3L$mTM(w5XJgX*>^&|PsLbX#v@OcuW4n`bxA?!GLvWe zcda$u;=|^k!QESI7g;S*zD8GR=T~N_tUp-xe&o!3e(%1PHUKpcI5qG{xf`b0lf;k) zmwQO7Lc9M&E@zZ`OPjZ`y6a!2yZ|~#iM=^CCHe+5I(k7ZR6AS4S_36q3Vk88s?^b; z$Fl97&ku0Mm$*Pn!_N_ZEWjRRyYHw6-dbBt=*rRJy-MoD4|@Oo1iZzfHTKJ_!tft5 z$@$8n+xg^5KUMCQiyI1_jNdz{K}~%3G}XDN4y`?6}Pvn21x+sj--ntn}?O zyZc*d zlYwm*ey`wF&CSo@sEnqost-3d``Nq+o~6}@16h2Y{2G>p3LQ|i@I(mcaQo!<`bkf` zdWW7G1y`f=;>YO>FoAXdtPp!*wOxR)cjz^OXwgIR8 zPuUn0Vf!3$`&|3LV`-ytT5R_ zVOcCKbo++F1;@}5*3i{2@T@=wkt@qj1ZE4NhUmLNSN=g};+NRT4=xALQH4a5^YFai zU3z7R@3ZH!&a$Ef>PnPg6M$`f?_$&Gy&7Tu{j6hapgJe=-pu&Dj`5E_?x4+&Zk7}4 z?0q~yEm25U6mT?TYKodcgC^=tF5jQ#(6qKs>MyOVm$3%8C&ac8&mE`Vc1yeD{@5yZ zFDJsVqx4T`eznU73-sB3A*(`5KzB?2YV2BgYP7(Q?BtCTB!zmDEGl@D1g-r=u#xc- z_G(NSV+D3h^_E3_S9eA)K&t=>#yG=sEe4Dqv2L=m#Tks>B+=edFBukFvPFp-5Q5p$ z51JL(->F8Qb-0*Y0StQpWn$Vj!o*KZY;LqFEv;6W!hsEexo^eEU#i(@7XFM#1|$&F zWit9guVBJ#--RNpz?M3jL7^b*`p5Ho1ZLRy_s4XmVqk4tx%OS`2o|H3)CmiL*9>@p zucKe$dk=gse&JomR=v1R27Dksji1A6bq$+ufMYQ}X zu(fR&QdrVhhDpFxw~GMmXvF)8=onXCxb;OXNmJa5fS}(hL1!l!GbW#<=)J zm0TYQz-fjAbzrXp?m>fLy(zW=>Td`P0OHju7~=jNiY5Tp4#ayA|2nM&8qa@(LqT9Q zKj;HsKT+`xmku2H|H>h2!N>JpL)GKB6RDNy$~f@RneY~+ z1O@AMj(_i~TD#z)!su6mHtR4Bn4hhc4JZFjuR19aE)$0|^fJIWBmmlr*@%X9DfqfH zTFtWdXYzd@!~!vYrT^<+I&^#Nqu1)|%t%^oo6okd`p zSNSRs0eu1m*`C$(%7oU`CW!Iz@kYs>u+4F~%k@JYXkhLBQ)7v$TB>QPEV0z=PNJG% z`wN5T_+a)t<-_s4@&0m?E2`%;p~B_NUZszZ%2<&pPO)YS;qX@u@sV_0FmamraKpvM z#x{PewK{Ukv6W9?(!-vu1a-A~!!dYMxf)hC9L%W9Ia8k_AvJ}4MoL~eOJvsR861?k zrnB}a;INet)$h0tCpJn>s2>HooH=f%-x@QHebtKxb9=;a){uZ9GwZ0o30V=|5&J=6 z6VrxaL5_~;-k(wBkQPe4(Dn@BynpkqhZyxYz!SMU{O@>j+gg1#`t2W2N|k>GVB?z$ z(&zfW(iH@nB^9>MLJN(~?}op^WUCaJI^DAd1FhYhbd0w6{1M`dH40wE22ude3(AtI zbwAE9DHjl<5b{QNUX!Xk_JWbgn@>J-L6dzRXpFO&j;x(+((MW9z7~On+uc87wb~I> zF1ZV`x&Pu2I#sG7GE?zJ(#f!T_QxkrzHMN$k)vMm?Jd6-n#1P651GMqieN{@$ZJ;$ zb@#Ikp_6Pu85y!*II5khBwyzQYDN58EI281`wI4MpfL^!tca(m{=9$AHyT1coGlG* z&!#-8WxuiqG&OxtE!7Um5rI=TDZj5ntG1cK{~?{&{TT@d9c@fOi_3DxraGa5pGGN{ z8JOg|A7GH2uVTsiPF94P6DKRy9lu0I_9R^A7d6A(-KD7MimvCs(;xndZ1(4b=6&fx z3g7kz8Q$FCDh9;{2N<1Nkr0l#PLJonX#49Uoea*io({9zfD1!|x8}o*kpRAi`_LV} zL&84W9L(QZEh@?D5n%c~BW4u<<@rwK6YrD#O+jsLuHbCtj~WHwSB~tGAMeA&Y$!O| z4rhz@LzbIElNi1V1u;`n!cru@uXWtEy>b6lcGvhNR^44(Iy_u4N&={bf<9|ki2m;_ z>zxa)50@vUU)KBNzr}jgOHj{5sdG-74<-?qEuP_8n-8g!mh#kCt^vKl`rP8cjX3zQ zHeclC$7#zsM2$9^_?|>%?Z+)9)v$+N+uVoSbCM8;4^oBdIq5E+HQ?rZ9zpf(VYEm) zVGi=RYoyLD1#qs{HW~D!r0yXo1hIi~`SMwxqaFIB&WbcOh&XL$OQX+7*RjTB=nj=j zdC5ZeWwgUd+2f)JK19JHXLe@$KUNpKp+~b#{qjS#IwhL1%KiL1Kgeg=JFiEKvmH#~ zvVPbfDQ}1+4@9(ODg&emlh&p+8d&+04EVf4Xs~A*K&GsuD7%SlH zZQom;u^0YKkp$YL^ldGkZoR(j#YCkTWU=J-h)iYp2!zdd0aM{$;v@Qa7S)Ot$v1yx z%*PR65*TqObH&7Vw^02mFNpBkXBF37Gg|Wjphm?0q%KT_8JI#WnozIe3c4~-(2BUNp1;IN&| zTQELF72T(?Qfl+Q-d&V^?kDv_epjcdCuhfaZzh+?8_DPCGcz4lUjY2@P_ig8Gu5R= zpCr%!IH4rr-+|`2$BVtZs z<;Znfm=vYK?f9yt@6pd7YM%S;)>WwWP>y^NqN}s8ag1Jr_ZnkjN#^{o=u}G;kBV>n zs(9gzjMfv{$qAnPUxkc)_oQk$lfLTh-z(XO%g?6@2z+%J#!z8w{3G?@?P-$rylalu z%(nA`upuKUhfb5rWXGLUe12hw)0ePQ_D&fll#WrEWygmh&Blom=X%vw%JH~Z6%~Cc zSZMK-KuYfp?FOmV+mTe8FD^{vsID~^X7LrWg%@xwHz>=Fb+CmFn@sjq{)my z6th{BN`fm#hHy2Q0y-E}E0%KJp^{6Vpv$SXnNKz3wkKnFFh^)~+5OVdaY|R${djd) zC$Pt3IQ2#mRUbXJ!?)z1F~2yu%+$B2Y#APPM&_&M^&Xxr!%uAuU0%y+&N~muettI` znr}FG{TA#MdE}Jmw>Wyc`?bwOH%^qs27)1179D=lq!32~d^q_}Ka#rdVmGJajGY(1 z^$gNi{HWRI%mJO}X>x5gc1)tRM4Ni~`!HQpcUxT*xPK{sN5jA<&J8BBNj$RU37?4|0^t;yHQp@YfDoL!o+8Ph=W|Bj83Y5oBZk z!FtccUvlEW$c8Z@qsAr!^DRbsG=O9Ly7aOyh^$Wr;8+$Dl)}UtX6}GvnI3s$`8ccHpw}xyXQn%?^(sg8Cav2mpgz&~)#B|7ieX%Wgkm z`%9NAXg~rX`k?QBGk^2e2lj7(_`*OR7_HbU;U!N$sIJkMNMrm&z+K>g#K^zD>?`Qs z;Jze_VFwQsMx?w_@vlR~*8;Ep+C(7%I>7L%9MUiK6ZBs-eF0L*b`qdkC>;ahe>WCS ZL})N{EepraY2g0?k`j{>Efv-e_%C#SWo`ff literal 0 HcmV?d00001 diff --git a/vizro-core/docs/assets/user_guides/navigation/only_some_pages.png b/vizro-core/docs/assets/user_guides/navigation/only_some_pages.png new file mode 100644 index 0000000000000000000000000000000000000000..4a13897e237e7109ad19d3415c9f50829bcfd95a GIT binary patch literal 11239 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 YuFD$--PTEZ`6mQ9DJ98rag&h$1zq?6o&W#< literal 0 HcmV?d00001 diff --git a/vizro-core/docs/pages/tutorials/explore_components.md b/vizro-core/docs/pages/tutorials/explore_components.md index c398185d0..091f3277d 100644 --- a/vizro-core/docs/pages/tutorials/explore_components.md +++ b/vizro-core/docs/pages/tutorials/explore_components.md @@ -710,8 +710,8 @@ and how to bring them together. For future dashboard creations, you can explore more about the available dashboard `components` by going through the [user guide](../user_guides/components.md). To gain more in-depth knowledge about the usage and configuration details of `controls`, check out the user guides dedicated to [Filters](../user_guides/filters.md), [Parameters](../user_guides/parameters.md) -and [Selectors](../user_guides/selectors.md). This guide will provide you with valuable insights on utilizing and -customizing controls for interactive functionality in your dashboards. +and [Selectors](../user_guides/selectors.md). If you'd like to understand more about different ways to configure the navigation of your dashboard, head +to [Navigation](../user_guides/navigation.md). Vizro doesn't end here, and we only covered the key features, but there is still much more to explore! You can learn: diff --git a/vizro-core/docs/pages/user_guides/components.md b/vizro-core/docs/pages/user_guides/components.md index 0018964bd..7aea43d8a 100755 --- a/vizro-core/docs/pages/user_guides/components.md +++ b/vizro-core/docs/pages/user_guides/components.md @@ -400,6 +400,13 @@ and provide an attribute selector to select images with that matching URL hash. ### Creating navigation +!!! note + + This section describes how to use the [`Card`][vizro.models.Card] component to create a navigation + card. To configure the navigation panel on the left hand side of the screen, refer to the + [guide on navigation](navigation.md). + + A navigation card allows you to navigate to a different page via a click on the card area. To create a navigation card, do the following: diff --git a/vizro-core/docs/pages/user_guides/navigation.md b/vizro-core/docs/pages/user_guides/navigation.md index 441238a91..fd9a00166 100644 --- a/vizro-core/docs/pages/user_guides/navigation.md +++ b/vizro-core/docs/pages/user_guides/navigation.md @@ -1,12 +1,12 @@ -# How to use the navigation panel +# How to use navigation -This guide shows you how to use and customize the left navigation panel in your dashboard. +This guide shows you how to use and customize the navigation that appears on the left of your dashboard. -The [`Dashboard`][vizro.models.Dashboard] model also accepts a `navigation` argument, where you can enter the [`Navigation`][vizro.models.Navigation] model. A [`Navigation`][vizro.models.Navigation] in your dashboard facilitates grouping and navigating through your pages. +The [`Dashboard`][vizro.models.Dashboard] model accepts a `navigation` argument, where you can enter a [`Navigation`][vizro.models.Navigation] model. This enables you to group pages together and customize how they appear in your navigation. ## Using the default navigation -By default, a navigation panel with an accordion item per page and a default title of `SELECT PAGE` is added to your dashboard. To leverage the navigation panel, you do not need to configure anything on top. +By default, if the `navigation` argument is not specified, Vizro creates a navigation panel which lists all the pages in your dashboard into a collapsible accordion menu with title "SELECT PAGE". !!! example "Default navigation" === "app.py" @@ -18,22 +18,28 @@ By default, a navigation panel with an accordion item per page and a default tit iris = px.data.iris() page_1 = vm.Page( - title="My first page", - components=[ - vm.Graph(id="scatter_chart", figure=px.scatter(iris, x="sepal_length", y="petal_width", color="species")), - ], - ) + title="My first page", + components=[ + vm.Graph(figure=px.scatter(iris, x="sepal_length", y="petal_width", color="species")), + ], + ) page_2 = vm.Page( - title="My second page", - components=[ - vm.Graph(id="line_chart", figure=px.line(iris, x="sepal_length", y="petal_width", color="species")), - ], - ) - - dashboard = vm.Dashboard(pages=[page_1, page_2]) + title="My second page", + components=[ + vm.Card(text="My text here"), + ], + ) + page_3 = vm.Page( + title="My third page", + components=[ + vm.Graph(figure=px.scatter(iris, x="sepal_length", y="sepal_width", color="species")), + ], + ) + dashboard = vm.Dashboard(pages=[page_1, page_2, page_3]) Vizro().build(dashboard).run() ``` + === "app.yaml" ```yaml # Still requires a .py to register data connector in Data Manager and parse yaml configuration @@ -46,75 +52,155 @@ By default, a navigation panel with an accordion item per page and a default tit x: sepal_length y: petal_width color: species - id: scatter_chart type: graph title: My first page - - components: - - figure: - _target_: line + - components: + - text: My text here + type: card + title: My second page + - components: + - figure: + _target_: scatter data_frame: iris x: sepal_length - y: petal_width + y: sepal_width color: species - id: line_chart type: graph - title: My second page + title: My third page ``` === "Result" [![DefaultNavigation]][DefaultNavigation] [DefaultNavigation]: ../../assets/user_guides/navigation/default_navigation.png -## Customizing your navigation panel +## Including only some pages -If you want to deviate from the default title `SELECT PAGE` and instead provide a title for a group of selected pages, do the following steps: +If you wish to include only some of your dashboard pages in your navigation then list them in the `pages` argument of the `Navigation` model. To refer to a page inside the `Navigation` model, you should always use the page's `id`, which [defaults to the page `title`](pages.md#customizing-the-page-url), e.g. we specify `pages = ["My first page", "My second page"]` rather than `pages=[page_1, page_2]`. -1. Provide a `dict` mapping of the page group title and a list of page IDs to the `pages` argument of the [`Navigation`][vizro.models.Navigation] model +!!! example "Navigation with only some pages" + === "app.py" + ```py + # page_1, page_2, page_3 defined as in default example + dashboard = vm.Dashboard( + pages=[page_1, page_2, page_3], navigation=vm.Navigation(pages=["My first page", "My second page"]) + ) + Vizro().build(dashboard).run() + ``` + + === "app.yaml" + ```yaml + # Still requires a .py to register data connector in Data Manager and parse yaml configuration + # See from_yaml example + # pages defined as in default example + navigation: + pages: + - My first page + - My second page + ``` + === "Result" + [![OnlySomePages]][OnlySomePages] - ``` - Navigation(pages={ - "First title": ["My first page"], - "Second title": ["My second page"]}) - ``` + [OnlySomePages]: ../../assets/user_guides/navigation/only_some_pages.png -2. Insert the [Navigation][vizro.models.Navigation] model into the `navigation` argument of the [Dashboard][vizro.models.Dashboard] model +## Grouping your pages - ``` - Dashboard( - pages=[page_1, page_2], - navigation=Navigation(pages={ - "First title": ["My first page"], - "Second title": ["My second page"]}) - ) - ``` +You can also group your pages together by specifying `pages` as a dictionary: -!!! example "Customizing the navigation panel" +!!! example "Grouping pages" === "app.py" ```py - from vizro import Vizro - import vizro.plotly.express as px - import vizro.models as vm + # page_1, page_2, page_3 defined as in default example + dashboard = vm.Dashboard( + pages=[page_1, page_2, page_3], + navigation=vm.Navigation(pages={"Group A": ["My first page", "My second page"], "Group B": ["My third page"]}), + ) + Vizro().build(dashboard).run() + ``` - iris = px.data.iris() + === "app.yaml" + ```yaml + # Still requires a .py to register data connector in Data Manager and parse yaml configuration + # See from_yaml example + # pages defined as in default example + navigation: + pages: + Group A: + - My first page + - My second page + Group B: + - My third page + ``` + === "Result" + [![GroupedNavigation]][GroupedNavigation] + + [GroupedNavigation]: ../../assets/user_guides/navigation/grouped_navigation.png - page_1 = vm.Page( - title="My first page", - components=[ - vm.Graph(id="scatter_chart", figure=px.scatter(iris, x="sepal_length", y="petal_width", color="species")), - ], - ) - page_2 = vm.Page( - title="My second page", - components=[ - vm.Graph(id="line_chart", figure=px.line(iris, x="sepal_length", y="petal_width", color="species")), - ], - ) +## Navigation bar with icons + +Another way to group together pages in the navigation is to use a [`NavBar`][vizro.models.NavBar] with icons. The simplest way to use this is to change the `nav_selector` specified in [`Navigation`][vizro.models.Navigation]: + +!!! example "Using `NavBar`" + === "app.py" + ```py + # page_1, page_2, page_3 defined as in default example dashboard = vm.Dashboard( - pages=[page_1, page_2], - navigation=vm.Navigation(pages={"First title": ["My first page"], "Second title": ["My second page"]}) - ) + pages=[page_1, page_2, page_3], + navigation=vm.Navigation( + pages={"Group A": ["My first page", "My second page"], "Group B": ["My third page"]}, nav_selector=vm.NavBar() + ), + ) + Vizro().build(dashboard).run() + ``` + + === "app.yaml" + ```yaml + # Still requires a .py to register data connector in Data Manager and parse yaml configuration + # See from_yaml example + # pages defined as in default example + navigation: + pages: + Group A: + - My first page + - My second page + Group B: + - My third page + nav_selector: + type: nav_bar + ``` + === "Result" + [![NavBar]][NavBar] + + [NavBar]: ../../assets/user_guides/navigation/nav_bar.png + + +Here, the first level of the navigation hierarchy ("Group A" and "Group B") is represented by an icon in a navigation bar, and the second level of the navigation (the pages) is represented by an accordion. By default, the icons are the [`filter` icons from the Google Material icons library](https://fonts.google.com/icons?icon.query=filter). + +## Customizing the navigation bar + +Under the hood, [`NavBar`][vizro.models.NavBar] uses [`NavLink`][vizro.models.NavLink] to build the icons in the navigation bar. It is possible to customize the navigation further by providing the `NavLink`s yourself. +### `NavLink` examples + +The same configuration for [grouping pages](#grouping-your-pages) applies inside a `NavLink`: + +!!! example "Accordions inside a `Navlink`" + === "app.py" + ```py + # page_1, page_2, page_3 defined as in default example + dashboard = vm.Dashboard( + pages=[page_1, page_2, page_3], + navigation=vm.Navigation( + nav_selector=vm.NavBar( + items=[ + vm.NavLink( + label="Section 1", + pages={"Group A": ["My first page", "My second page"], "Group B": ["My third page"]}, + ) + ] + ) + ), + ) Vizro().build(dashboard).run() ``` @@ -122,35 +208,67 @@ If you want to deviate from the default title `SELECT PAGE` and instead provide ```yaml # Still requires a .py to register data connector in Data Manager and parse yaml configuration # See from_yaml example - pages: - - components: - - figure: - _target_: scatter - data_frame: iris - x: sepal_length - y: petal_width - color: species - id: scatter_chart - type: graph - title: My first page - - components: - - figure: - _target_: line - data_frame: iris - x: sepal_length - y: petal_width - color: species - id: line_chart - type: graph - title: My second page + # pages defined as in default example + navigation: + nav_selector: + type: nav_bar + items: + - label: Section 1 + pages: + Group A: + - My first page + - My second page + Group B: + - My third page + ``` + === "Result" + [![AccordionInsideNavBar]][AccordionInsideNavBar] + + [AccordionInsideNavBar]: ../../assets/user_guides/navigation/accordion_inside_nav_bar.png + +You can alter the icons used by specifying the name of the icon in the [Google Material icons library](https://fonts.google.com/icons): + +!!! example "Custom icon" + === "app.py" + ```py + # page_1, page_2, page_3 defined as in default example + dashboard = vm.Dashboard( + pages=[page_1, page_2, page_3], + navigation=vm.Navigation( + nav_selector=vm.NavBar( + items=[ + vm.NavLink( + label="Section 1", + icon="bar_chart", + pages=["My first page", "My second page"], + ), + vm.NavLink(label="Section 2", icon="pie_chart", pages=["My third page"]), + ] + ) + ), + ) + ``` + + === "app.yaml" + ```yaml + # Still requires a .py to register data connector in Data Manager and parse yaml configuration + # See from_yaml example + # pages defined as in default example navigation: - pages: - First title: - - My first page - Second title: - - My second page + nav_selector: + type: nav_bar + items: + - label: Section 1 + icon: bar_chart + pages: + - My first page + - My second page + - label: Section 1 + icon: pie_chart + pages: + - My third page ``` === "Result" - [![CustomNavigation]][CustomNavigation] + [![CustomIcons]][CustomIcons] - [CustomNavigation]: ../../assets/user_guides/navigation/custom_navigation.png + [CustomIcons]: ../../assets/user_guides/navigation/custom_icons.png diff --git a/vizro-core/hatch.toml b/vizro-core/hatch.toml index b5b37f96c..707b62da8 100644 --- a/vizro-core/hatch.toml +++ b/vizro-core/hatch.toml @@ -54,15 +54,16 @@ pypath = "python -c 'import sys; print(sys.executable)'" schema = ["python schemas/generate.py {args}", '- hatch run lint --files="schemas/$(hatch version).json" > /dev/null'] secrets = "pre-commit run gitleaks --all-files" test = [ - "test-unit", + "- test-unit", "test-integration" ] test-cov = "coverage run -m pytest tests/unit {args}" test-integration = [ - "pytest tests/integration --headless -k default {args}", - "pytest tests/integration --headless -k dict {args}", - "pytest tests/integration --headless -k json {args}", - "pytest tests/integration --headless -k yaml {args}" + "- pytest tests/integration/test_examples.py::test_default_dashboard --headless", + "- pytest tests/integration/test_examples.py::test_dict_dashboard --headless", + "- pytest tests/integration/test_examples.py::test_json_dashboard --headless", + "- pytest tests/integration/test_examples.py::test_yaml_dashboard --headless", + "pytest tests/integration/test_navigation.py" ] test-js = "./tools/run_jest.sh {args}" test-unit = "pytest tests/unit {args}" diff --git a/vizro-core/mkdocs.yml b/vizro-core/mkdocs.yml index 65a9ba483..affa09d2c 100644 --- a/vizro-core/mkdocs.yml +++ b/vizro-core/mkdocs.yml @@ -21,7 +21,7 @@ nav: - Parameters: pages/user_guides/parameters.md - Selectors: pages/user_guides/selectors.md - Navigation: - - Accordion: pages/user_guides/navigation.md + - Navigation: pages/user_guides/navigation.md - Visual Formatting: - Layouts: pages/user_guides/layouts.md - Themes: pages/user_guides/themes.md diff --git a/vizro-core/pyproject.toml b/vizro-core/pyproject.toml index 11618bb04..b65a2586f 100644 --- a/vizro-core/pyproject.toml +++ b/vizro-core/pyproject.toml @@ -65,3 +65,11 @@ skip_covered = true branch = true parallel = true source_pkgs = ["vizro"] + +[tool.pytest.ini_options] +addopts = [ + # Allow test files to have the same name in different directories. + "--import-mode=importlib" +] +norecursedirs = ["tests/tests_utils", "tests/js"] +pythonpath = ["tests/tests_utils"] diff --git a/vizro-core/schemas/0.1.6.json b/vizro-core/schemas/0.1.6.json index 95b345bcb..0d3a79128 100644 --- a/vizro-core/schemas/0.1.6.json +++ b/vizro-core/schemas/0.1.6.json @@ -895,9 +895,135 @@ "required": ["components", "title"], "additionalProperties": false }, + "Accordion": { + "title": "Accordion", + "description": "Accordion to be used as selector in [`Navigation`][vizro.models.Navigation].\n\nArgs:\n pages (Dict[str, List[str]]): A dictionary with a page group title as key and a list of page IDs as values.", + "type": "object", + "properties": { + "id": { + "title": "Id", + "description": "ID to identify model. Must be unique throughout the whole dashboard.When no ID is chosen, ID will be automatically generated.", + "type": "string" + }, + "pages": { + "title": "Pages", + "description": "A dictionary with a page group title as key and a list of page IDs as values.", + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": ["pages"], + "additionalProperties": false + }, + "NavLink": { + "title": "NavLink", + "description": "Icon to be used in Navigation Panel of Dashboard.\n\nArgs:\n pages (NavPagesType): See [NavPagesType][vizro.models.types.NavPagesType].\n icon (str): URI (relative or absolute) of the embeddable content. Defaults to \"home\".\n max_text_length (int): Character limit for `text` argument. Defaults to 8.\n text (Optional[str]): Text to be displayed below the icon. Defaults to `None`.\n tooltip (Optional[str]): Text to be displayed in the icon tooltip on hover.\n selector (Optional[Accordion]): See [`Accordion`][vizro.models.Accordion]. Defaults to `None`.", + "type": "object", + "properties": { + "id": { + "title": "Id", + "description": "ID to identify model. Must be unique throughout the whole dashboard.When no ID is chosen, ID will be automatically generated.", + "type": "string" + }, + "pages": { + "title": "Pages", + "description": "List of Page IDs or dict mapping of Page IDs and titles (for hierarchical sub-navigation)", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + ] + }, + "icon": { + "title": "Icon", + "description": "URI (relative or absolute) of the embeddable content.", + "default": "home", + "type": "string" + }, + "max_text_length": { + "title": "Max Text Length", + "description": "Character limit for `text` argument.", + "default": 8, + "type": "integer" + }, + "text": { + "title": "Text", + "description": "Text to be displayed below the icon.", + "type": "string" + }, + "tooltip": { + "title": "Tooltip", + "description": "Text to be displayed in the icon tooltip on hover.", + "type": "string" + }, + "selector": { + "$ref": "#/definitions/Accordion" + } + }, + "required": ["pages"], + "additionalProperties": false + }, + "NavBar": { + "title": "NavBar", + "description": "Navigation bar to be used as a selector for `Navigation`.\n\nArgs:\n pages (Optional[NavPagesType]): See [`NavPagesType`][vizro.models.types.NavPagesType].\n Defaults to `None`.\n items (List[NavLink]): See [`NavLink`][vizro.models.NavLink]. Defaults to `[]`.", + "type": "object", + "properties": { + "id": { + "title": "Id", + "description": "ID to identify model. Must be unique throughout the whole dashboard.When no ID is chosen, ID will be automatically generated.", + "type": "string" + }, + "pages": { + "title": "Pages", + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + ] + }, + "items": { + "title": "Items", + "default": [], + "type": "array", + "items": { + "$ref": "#/definitions/NavLink" + } + } + }, + "additionalProperties": false + }, "Navigation": { "title": "Navigation", - "description": "Navigation in [`Dashboard`][vizro.models.Dashboard] to structure [`Pages`][vizro.models.Page].\n\nArgs:\n pages (Optional[NavigationPagesType]): See [`NavigationPagesType`][vizro.models.types.NavigationPagesType].\n Defaults to `None`.", + "description": "Navigation in [`Dashboard`][vizro.models.Dashboard] to structure [`Pages`][vizro.models.Page].\n\nArgs:\n pages (Optional[NavPagesType]): See [`NavPagesType`][vizro.models.types.NavPagesType].\n Defaults to `None`.\n selector (Optional[NavSelectorType]): See [`NavSelectorType`][vizro.models.types.NavSelectorType].\n Defaults to `None`.)", "type": "object", "properties": { "id": { @@ -924,6 +1050,17 @@ } } ] + }, + "selector": { + "title": "Selector", + "anyOf": [ + { + "$ref": "#/definitions/Accordion" + }, + { + "$ref": "#/definitions/NavBar" + } + ] } }, "additionalProperties": false diff --git a/vizro-core/schemas/0.1.7.dev0.json b/vizro-core/schemas/0.1.7.dev0.json index 95b345bcb..d5bf77366 100644 --- a/vizro-core/schemas/0.1.7.dev0.json +++ b/vizro-core/schemas/0.1.7.dev0.json @@ -895,9 +895,124 @@ "required": ["components", "title"], "additionalProperties": false }, + "Accordion": { + "title": "Accordion", + "description": "Accordion to be used as nav_selector in [`Navigation`][vizro.models.Navigation].\n\nArgs:\n type (Literal[\"accordion\"]): Defaults to `\"accordion\"`.\n pages (Dict[str, List[str]]): Mapping from name of a pages group to a list of page IDs. Defaults to `{}`.", + "type": "object", + "properties": { + "id": { + "title": "Id", + "description": "ID to identify model. Must be unique throughout the whole dashboard.When no ID is chosen, ID will be automatically generated.", + "type": "string" + }, + "type": { + "title": "Type", + "default": "accordion", + "enum": ["accordion"], + "type": "string" + }, + "pages": { + "title": "Pages", + "description": "Mapping from name of a pages group to a list of page IDs.", + "default": {}, + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "additionalProperties": false + }, + "NavLink": { + "title": "NavLink", + "description": "Icon to be used in Navigation Panel of Dashboard.\n\nArgs:\n ages (Optional[NavPagesType]): See [`NavPagesType`][vizro.models.types.NavPagesType].\n Defaults to `[]`.\n label (str): Text description of the icon for use in tooltip.\n icon (Optional[str]): Icon name from [Google Material icons library](https://fonts.google.com/icons).\n Defaults to `None`.", + "type": "object", + "properties": { + "id": { + "title": "Id", + "description": "ID to identify model. Must be unique throughout the whole dashboard.When no ID is chosen, ID will be automatically generated.", + "type": "string" + }, + "pages": { + "title": "Pages", + "default": [], + "anyOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + } + ] + }, + "label": { + "title": "Label", + "description": "Text description of the icon for use in tooltip.", + "type": "string" + }, + "icon": { + "title": "Icon", + "description": "Icon name from Google Material icons library.", + "type": "string" + } + }, + "required": ["label"], + "additionalProperties": false + }, + "NavBar": { + "title": "NavBar", + "description": "Navigation bar to be used as a nav_selector for `Navigation`.\n\nArgs:\n type (Literal[\"nav_bar\"]): Defaults to `\"nav_bar\"`.\n pages (Dict[str, List[str]]): Mapping from name of a pages group to a list of page IDs. Defaults to `{}`.\n items (List[NavLink]): See [`NavLink`][vizro.models.NavLink]. Defaults to `[]`.", + "type": "object", + "properties": { + "id": { + "title": "Id", + "description": "ID to identify model. Must be unique throughout the whole dashboard.When no ID is chosen, ID will be automatically generated.", + "type": "string" + }, + "type": { + "title": "Type", + "default": "nav_bar", + "enum": ["nav_bar"], + "type": "string" + }, + "pages": { + "title": "Pages", + "description": "Mapping from name of a pages group to a list of page IDs.", + "default": {}, + "type": "object", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "items": { + "title": "Items", + "default": [], + "type": "array", + "items": { + "$ref": "#/definitions/NavLink" + } + } + }, + "additionalProperties": false + }, "Navigation": { "title": "Navigation", - "description": "Navigation in [`Dashboard`][vizro.models.Dashboard] to structure [`Pages`][vizro.models.Page].\n\nArgs:\n pages (Optional[NavigationPagesType]): See [`NavigationPagesType`][vizro.models.types.NavigationPagesType].\n Defaults to `None`.", + "description": "Navigation in [`Dashboard`][vizro.models.Dashboard] to structure [`Pages`][vizro.models.Page].\n\nArgs:\n pages (Optional[NavPagesType]): See [`NavPagesType`][vizro.models.types.NavPagesType].\n Defaults to [].\n nav_selector (Optional[NavSelectorType]): See [`NavSelectorType`][vizro.models.types.NavSelectorType].\n Defaults to `None`.", "type": "object", "properties": { "id": { @@ -907,6 +1022,7 @@ }, "pages": { "title": "Pages", + "default": [], "anyOf": [ { "type": "array", @@ -924,6 +1040,25 @@ } } ] + }, + "nav_selector": { + "title": "Nav Selector", + "description": "Component for rendering navigation.", + "discriminator": { + "propertyName": "type", + "mapping": { + "accordion": "#/definitions/Accordion", + "nav_bar": "#/definitions/NavBar" + } + }, + "oneOf": [ + { + "$ref": "#/definitions/Accordion" + }, + { + "$ref": "#/definitions/NavBar" + } + ] } }, "additionalProperties": false diff --git a/vizro-core/src/vizro/_vizro.py b/vizro-core/src/vizro/_vizro.py index f0f075f3c..3295b8d94 100644 --- a/vizro-core/src/vizro/_vizro.py +++ b/vizro-core/src/vizro/_vizro.py @@ -23,6 +23,9 @@ def __init__(self, **kwargs): [Dash documentation](https://dash.plotly.com/reference#dash.dash) for possible arguments. """ self.dash = dash.Dash(**kwargs, use_pages=True, pages_folder="") + self.dash.config.external_stylesheets.append( + "https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined" + ) # Include Vizro assets (in the static folder) as external scripts and stylesheets. We extend self.dash.config # objects so the user can specify additional external_scripts and external_stylesheets via kwargs. diff --git a/vizro-core/src/vizro/models/__init__.py b/vizro-core/src/vizro/models/__init__.py index e7a517220..e167468e0 100644 --- a/vizro-core/src/vizro/models/__init__.py +++ b/vizro-core/src/vizro/models/__init__.py @@ -4,13 +4,21 @@ from ._components import Card, Graph, Table from ._components.form import Button, Checklist, Dropdown, RadioItems, RangeSlider, Slider from ._controls import Filter, Parameter +from ._navigation.accordion import Accordion from ._navigation.navigation import Navigation +from ._navigation.nav_bar import NavBar +from ._navigation.nav_link import NavLink from ._dashboard import Dashboard from ._layout import Layout from ._page import Page -Page.update_forward_refs(Button=Button, Card=Card, Filter=Filter, Graph=Graph, Parameter=Parameter, Table=Table) +Page.update_forward_refs( + Button=Button, Card=Card, Filter=Filter, Graph=Graph, Parameter=Parameter, Table=Table, Accordion=Accordion +) +Navigation.update_forward_refs(Accordion=Accordion, NavBar=NavBar, NavLink=NavLink) Dashboard.update_forward_refs(Page=Page, Navigation=Navigation) +NavBar.update_forward_refs(NavLink=NavLink) +NavLink.update_forward_refs(Accordion=Accordion) # Please keep alphabetically ordered __all__ = [ @@ -23,6 +31,8 @@ "Filter", "Graph", "Layout", + "NavBar", + "NavLink", "Navigation", "Page", "Parameter", diff --git a/vizro-core/src/vizro/models/_controls/filter.py b/vizro-core/src/vizro/models/_controls/filter.py index 565a575d1..f3d90c284 100644 --- a/vizro-core/src/vizro/models/_controls/filter.py +++ b/vizro-core/src/vizro/models/_controls/filter.py @@ -70,7 +70,7 @@ class Filter(VizroBaseModel): description="Target component to be affected by filter. " "If none are given then target all components on the page that use `column`.", ) - selector: Optional[SelectorType] + selector: Optional[SelectorType] = None _column_type: Optional[Literal["numerical", "categorical"]] = PrivateAttr() @validator("targets", each_item=True) @@ -110,10 +110,8 @@ def _set_column_type(self): self._column_type = "categorical" def _set_selector(self): - if self.selector is None: - self.selector = SELECTOR_DEFAULTS[self._column_type](title=self.column.title()) # type: ignore[index] - elif not self.selector.title: - self.selector.title = self.column.title() + self.selector = self.selector or SELECTOR_DEFAULTS[self._column_type]() # type: ignore[index] + self.selector.title = self.selector.title or self.column.title() def _set_slider_values(self): self.selector: SelectorType diff --git a/vizro-core/src/vizro/models/_dashboard.py b/vizro-core/src/vizro/models/_dashboard.py index a1631288a..0287add5a 100644 --- a/vizro-core/src/vizro/models/_dashboard.py +++ b/vizro-core/src/vizro/models/_dashboard.py @@ -15,9 +15,11 @@ from vizro.actions._action_loop._action_loop import ActionLoop from vizro.models import Navigation, VizroBaseModel from vizro.models._models_utils import _log_call +from vizro.models._navigation._navigation_utils import _NavBuildType if TYPE_CHECKING: from vizro.models import Page + from vizro.models._page import _PageBuildType logger = logging.getLogger(__name__) @@ -47,12 +49,12 @@ def validate_pages(cls, pages): return pages @validator("navigation", always=True) - def validate_navigation(cls, navigation, values): + def set_navigation_pages(cls, navigation, values): if "pages" not in values: return navigation - if navigation is None or not navigation.pages: - return Navigation(pages=[page.id for page in values["pages"]]) + navigation = navigation or Navigation() + navigation.pages = navigation.pages or [page.id for page in values["pages"]] return navigation @_log_call @@ -100,23 +102,28 @@ def _make_page_layout(self, page: Page): id="theme_selector", on=self.theme == "vizro_dark", persistence=True, persistence_type="session" ) - # Shared across pages but slightly differ in content + # Shared across pages but slightly differ in content. These could possibly be done by a clientside + # callback instead. page_title = html.H2(children=page.title, id="page_title") - navigation = cast(Navigation, self.navigation).build(active_page_id=page.id) + navigation: _NavBuildType = cast(Navigation, self.navigation).build(active_page_id=page.id) + nav_bar = navigation["nav_bar_outer"] + nav_panel = navigation["nav_panel_outer"] # Different across pages - page_content = page.build() + page_content: _PageBuildType = page.build() control_panel = page_content["control_panel_outer"] component_container = page_content["component_container_outer"] # Arrangement header = html.Div(children=[page_title, theme_switch], className="header", id="header_outer") - left_side_elements = [dashboard_title, navigation, control_panel] - left_side = ( - html.Div(children=left_side_elements, className="left_side", id="left_side_outer") - if any(left_side_elements) - else html.Div(hidden=True, id="left_side_outer") + nav_control_elements = [dashboard_title, nav_panel, control_panel] + nav_control_panel = ( + html.Div(nav_control_elements, className="nav_control_panel") + if any(not getattr(element, "hidden", False) for element in nav_control_elements) + else html.Div(hidden=True) ) + + left_side = html.Div(children=[nav_bar, nav_control_panel], className="left_side", id="left_side_outer") right_side = html.Div(children=[header, component_container], className="right_side", id="right_side_outer") return html.Div([left_side, right_side], className="page_container", id="page_container_outer") diff --git a/vizro-core/src/vizro/models/_navigation/_navigation_utils.py b/vizro-core/src/vizro/models/_navigation/_navigation_utils.py index 6f60979d8..7bac806cd 100644 --- a/vizro-core/src/vizro/models/_navigation/_navigation_utils.py +++ b/vizro-core/src/vizro/models/_navigation/_navigation_utils.py @@ -1,4 +1,9 @@ +from __future__ import annotations + import itertools +from typing import TypedDict + +from dash import html from vizro.managers import model_manager @@ -8,14 +13,23 @@ def _validate_pages(pages): from vizro.models import Page pages_as_list = list(itertools.chain(*pages.values())) if isinstance(pages, dict) else pages - - if not pages_as_list: - raise ValueError("Ensure this value has at least 1 item.") - # Ideally we would use dash.page_registry or maybe dashboard.pages here, but we only register pages in # dashboard.pre_build and model manager cannot find a Dashboard at validation time. # page[0] gives the page model ID. registered_pages = [page[0] for page in model_manager._items_with_type(Page)] + + if not pages_as_list: + raise ValueError("Ensure this value has at least 1 item.") + if unknown_pages := [page for page in pages_as_list if page not in registered_pages]: raise ValueError(f"Unknown page ID {unknown_pages} provided to argument 'pages'.") return pages + + +# This is just used for type checking. Ideally it would inherit from some dash.development.base_component.Component +# (e.g. html.Div) as well as TypedDict, but that's not possible, and Dash does not have typing support anyway. When +# this type is used, the object is actually still a dash.development.base_component.Component, but this makes it easier +# to see what contract the component fulfills by making the expected keys explicit. +class _NavBuildType(TypedDict): + nav_bar_outer: html.Div + nav_panel_outer: html.Div diff --git a/vizro-core/src/vizro/models/_navigation/_accordion.py b/vizro-core/src/vizro/models/_navigation/accordion.py similarity index 77% rename from vizro-core/src/vizro/models/_navigation/_accordion.py rename to vizro-core/src/vizro/models/_navigation/accordion.py index 5dabc70f1..4bd374444 100644 --- a/vizro-core/src/vizro/models/_navigation/_accordion.py +++ b/vizro-core/src/vizro/models/_navigation/accordion.py @@ -1,6 +1,6 @@ import itertools from collections.abc import Mapping -from typing import Dict, List +from typing import Dict, List, Literal import dash import dash_bootstrap_components as dbc @@ -13,16 +13,18 @@ from vizro.models._navigation._navigation_utils import _validate_pages +# TODO: if and when made public, consider naming as NavAccordion to be consistent with other +# navigation models. class Accordion(VizroBaseModel): - """Accordion to be used as selector in [`Navigation`][vizro.models.Navigation]. + """Accordion to be used as nav_selector in [`Navigation`][vizro.models.Navigation]. Args: - pages (Dict[str, List[str]]): A dictionary with a page group title as key and a list of page IDs as values. + type (Literal["accordion"]): Defaults to `"accordion"`. + pages (Dict[str, List[str]]): Mapping from name of a pages group to a list of page IDs. Defaults to `{}`. """ - pages: Dict[str, List[str]] = Field( - ..., description="A dictionary with a page group title as key and a list of page IDs as values." - ) + type: Literal["accordion"] = "accordion" + pages: Dict[str, List[str]] = Field({}, description="Mapping from name of a pages group to a list of page IDs.") _validate_pages = validator("pages", allow_reuse=True)(_validate_pages) @@ -34,9 +36,10 @@ def coerce_pages_type(cls, pages): @_log_call def build(self, *, active_page_id=None): + # Note build does not return _NavBuildType but just a single html.Div with id="nav_panel_outer". # Hide navigation panel if there is only one page if len(list(itertools.chain(*self.pages.values()))) == 1: - return html.Div(hidden=True) + return html.Div(hidden=True, id="nav_panel_outer") accordion_items = [] for page_group, page_members in self.pages.items(): diff --git a/vizro-core/src/vizro/models/_navigation/nav_bar.py b/vizro-core/src/vizro/models/_navigation/nav_bar.py new file mode 100644 index 000000000..270fe0f1e --- /dev/null +++ b/vizro-core/src/vizro/models/_navigation/nav_bar.py @@ -0,0 +1,71 @@ +from __future__ import annotations + +from collections.abc import Mapping +from typing import Dict, List, Literal + +from dash import html +from pydantic import Field, validator + +from vizro.models import VizroBaseModel +from vizro.models._models_utils import _log_call +from vizro.models._navigation._navigation_utils import _NavBuildType, _validate_pages +from vizro.models._navigation.nav_link import NavLink + + +class NavBar(VizroBaseModel): + """Navigation bar to be used as a nav_selector for `Navigation`. + + Args: + type (Literal["nav_bar"]): Defaults to `"nav_bar"`. + pages (Dict[str, List[str]]): Mapping from name of a pages group to a list of page IDs. Defaults to `{}`. + items (List[NavLink]): See [`NavLink`][vizro.models.NavLink]. Defaults to `[]`. + """ + + type: Literal["nav_bar"] = "nav_bar" + pages: Dict[str, List[str]] = Field({}, description="Mapping from name of a pages group to a list of page IDs.") + items: List[NavLink] = [] + + # validators + _validate_pages = validator("pages", allow_reuse=True)(_validate_pages) + + @validator("pages", pre=True) + def coerce_pages_type(cls, pages): + if isinstance(pages, Mapping): + return pages + return {page: [page] for page in pages} + + @_log_call + def pre_build(self): + self.items = self.items or [ + NavLink(label=group_title, pages=pages) for group_title, pages in self.pages.items() + ] + + for position, item in enumerate(self.items, 1): + # The filter icons are named filter_1, filter_2, etc. up to filter_9. If there are more than 9 items, then + # the 10th and all subsequent items are named filter_9+. + item.icon = item.icon or f"filter_{position}" if position <= 9 else "filter_9+" # noqa: PLR2004 + + # Since models instantiated in pre_build do not themselves have pre_build called on them, we call it manually + # here. + for item in self.items: + item.pre_build() + + return self.items + + @_log_call + def build(self, *, active_page_id=None) -> _NavBuildType: + # We always show all the nav_link buttons, but only show the accordion for the active page. This works because + # item.build only returns the nav_panel_outer Div when the item is active. + # In future maybe we should do this by showing all navigation panels and then setting hidden=True for all but + # one using a clientside callback? + # Wrapping built_items into html.Div here is not for rendering purposes but so that we can look up the + # components by id easily instead of needing to iterate through a nested list. + built_items = html.Div([item.build(active_page_id=active_page_id) for item in self.items]) + buttons = [built_items[item.id] for item in self.items] + if "nav_panel_outer" in built_items: + nav_panel_outer = built_items["nav_panel_outer"] + else: + # Active page is not in navigation at all, so hide navigation panel. + nav_panel_outer = html.Div(hidden=True, id="nav_panel_outer") + + return html.Div([html.Div(buttons, className="nav-bar", id="nav_bar_outer"), nav_panel_outer]) diff --git a/vizro-core/src/vizro/models/_navigation/nav_link.py b/vizro-core/src/vizro/models/_navigation/nav_link.py new file mode 100644 index 000000000..cf64eab34 --- /dev/null +++ b/vizro-core/src/vizro/models/_navigation/nav_link.py @@ -0,0 +1,76 @@ +from __future__ import annotations + +import itertools +from typing import Optional + +import dash +import dash_bootstrap_components as dbc +from dash import html +from pydantic import Field, PrivateAttr, validator + +from vizro.models import VizroBaseModel +from vizro.models._models_utils import _log_call +from vizro.models._navigation._navigation_utils import _validate_pages +from vizro.models._navigation.accordion import Accordion +from vizro.models.types import NavPagesType + + +class NavLink(VizroBaseModel): + """Icon to be used in Navigation Panel of Dashboard. + + Args: + ages (Optional[NavPagesType]): See [`NavPagesType`][vizro.models.types.NavPagesType]. + Defaults to `[]`. + label (str): Text description of the icon for use in tooltip. + icon (Optional[str]): Icon name from [Google Material icons library](https://fonts.google.com/icons). + Defaults to `None`. + + """ + + pages: NavPagesType = [] + label: str = Field(..., description="Text description of the icon for use in tooltip.") + icon: Optional[str] = Field(None, description="Icon name from Google Material icons library.") + + _nav_selector: Accordion = PrivateAttr() + + # Re-used validators + _validate_pages = validator("pages", allow_reuse=True)(_validate_pages) + + @_log_call + def pre_build(self): + from vizro.models._navigation.accordion import Accordion + + self._nav_selector = Accordion(pages=self.pages) # type: ignore[arg-type] + + @_log_call + def build(self, *, active_page_id=None): + # _nav_selector is an Accordion, so _nav_selector._pages is guaranteed to be Dict[str, List[str]]. + all_page_ids = list(itertools.chain(*self._nav_selector.pages.values())) + first_page_id = all_page_ids[0] + item_active = active_page_id in all_page_ids + + try: + first_page = dash.page_registry[first_page_id] + except KeyError as exc: + raise KeyError( + f"Page with ID {first_page_id} cannot be found. Please add the page to `Dashboard.pages`" + ) from exc + + button = dbc.Button( + [ + html.Span(self.icon, className="material-symbols-outlined"), + # TODO: commented out until we insert styling for the tooltip or find a better way to display it (e.g. + # try dbc.Popover or Dash mantine components tooltip?). + # dbc.Tooltip(html.P(self.label), target=self.id, placement="bottom", className="custom-tooltip"), + ], + id=self.id, + className="icon-button", + href=first_page["relative_path"], + active=item_active, + ) + + # Only build the nav_selector (id="nav_panel_outer") if the item is active. + if item_active: + return html.Div([button, self._nav_selector.build(active_page_id=active_page_id)]) + + return html.Div(button) diff --git a/vizro-core/src/vizro/models/_navigation/navigation.py b/vizro-core/src/vizro/models/_navigation/navigation.py index 9e9878ce1..a243862f4 100644 --- a/vizro-core/src/vizro/models/_navigation/navigation.py +++ b/vizro-core/src/vizro/models/_navigation/navigation.py @@ -1,38 +1,47 @@ from __future__ import annotations -from typing import TYPE_CHECKING, Optional - -from pydantic import PrivateAttr, validator +from dash import html +from pydantic import validator from vizro.models import VizroBaseModel from vizro.models._models_utils import _log_call -from vizro.models._navigation._navigation_utils import _validate_pages -from vizro.models.types import NavigationPagesType - -if TYPE_CHECKING: - from vizro.models._navigation._accordion import Accordion +from vizro.models._navigation._navigation_utils import _NavBuildType, _validate_pages +from vizro.models._navigation.accordion import Accordion +from vizro.models.types import NavPagesType, NavSelectorType class Navigation(VizroBaseModel): """Navigation in [`Dashboard`][vizro.models.Dashboard] to structure [`Pages`][vizro.models.Page]. Args: - pages (Optional[NavigationPagesType]): See [`NavigationPagesType`][vizro.models.types.NavigationPagesType]. + pages (Optional[NavPagesType]): See [`NavPagesType`][vizro.models.types.NavPagesType]. + Defaults to []. + nav_selector (Optional[NavSelectorType]): See [`NavSelectorType`][vizro.models.types.NavSelectorType]. Defaults to `None`. """ - pages: Optional[NavigationPagesType] = None - _selector: Accordion = PrivateAttr() + pages: NavPagesType = [] + nav_selector: NavSelectorType = None # validators _validate_pages = validator("pages", allow_reuse=True)(_validate_pages) @_log_call def pre_build(self): - from vizro.models._navigation._accordion import Accordion - - self._selector = Accordion(pages=self.pages) # type: ignore[arg-type] + # Since models instantiated in pre_build do not themselves have pre_build called on them, we call it manually + # here. Note that not all nav_selectors have pre_build (Accordion does not). + self.nav_selector = self.nav_selector or Accordion() + self.nav_selector.pages = self.nav_selector.pages or self.pages + if hasattr(self.nav_selector, "pre_build"): + self.nav_selector.pre_build() @_log_call - def build(self, *, active_page_id=None): - return self._selector.build(active_page_id=active_page_id) + def build(self, *, active_page_id=None) -> _NavBuildType: + nav_selector = self.nav_selector.build(active_page_id=active_page_id) + if "nav_bar_outer" not in nav_selector: + # e.g. nav_selector is Accordion and nav_selector.build returns single html.Div with id="nav_panel_outer". + # This will make it match the case e.g. nav_selector is NavBar and nav_selector.build returns html.Div + # containing children with id="nav_bar_outer" and id="nav_panel_outer" + nav_selector = html.Div([html.Div(className="hidden", id="nav_bar_outer"), nav_selector]) + + return nav_selector diff --git a/vizro-core/src/vizro/models/_page.py b/vizro-core/src/vizro/models/_page.py index 641ddfb18..06f36ddbd 100644 --- a/vizro-core/src/vizro/models/_page.py +++ b/vizro-core/src/vizro/models/_page.py @@ -1,6 +1,6 @@ from __future__ import annotations -from typing import List, Optional +from typing import List, Optional, TypedDict from dash import Input, Output, Patch, callback, dcc, html from pydantic import Field, root_validator, validator @@ -15,6 +15,15 @@ from .types import ComponentType, ControlType +# This is just used for type checking. Ideally it would inherit from some dash.development.base_component.Component +# (e.g. html.Div) as well as TypedDict, but that's not possible, and Dash does not have typing support anyway. When +# this type is used, the object is actually still a dash.development.base_component.Component, but this makes it easier +# to see what contract the component fulfills by making the expected keys explicit. +class _PageBuildType(TypedDict): + control_panel_outer: html.Div + component_container_outer: html.Div + + class Page(VizroBaseModel): """A page in [`Dashboard`][vizro.models.Dashboard] with its own URL path and place in the `Navigation`. @@ -32,7 +41,7 @@ class Page(VizroBaseModel): components: List[ComponentType] title: str = Field(..., description="Title to be displayed.") - layout: Optional[Layout] + layout: Optional[Layout] = None controls: List[ControlType] = [] path: Optional[str] = Field(None, description="Path to navigate to page.") @@ -111,7 +120,7 @@ def pre_build(self): ] @_log_call - def build(self): + def build(self) -> _PageBuildType: self._update_graph_theme() controls_content = [control.build() for control in self.controls] control_panel = ( diff --git a/vizro-core/src/vizro/models/types.py b/vizro-core/src/vizro/models/types.py index 140d5d040..f33684057 100644 --- a/vizro-core/src/vizro/models/types.py +++ b/vizro-core/src/vizro/models/types.py @@ -308,7 +308,7 @@ class OptionsDictType(TypedDict): Union[SelectorType, "Button", "UserInput"], Field( discriminator="type", - description="Components that can be used to receive user input within a form'.", + description="Components that can be used to receive user input within a form.", ), ] @@ -333,12 +333,12 @@ class OptionsDictType(TypedDict): [`Button`][vizro.models.Button], [`Card`][vizro.models.Card], [`Table`][vizro.models.Table] or [`Graph`][vizro.models.Graph].""" -# Types used for pages values in the Navigation model. -NavigationPagesType = Annotated[ - Union[List[str], Dict[str, List[str]]], - Field( - None, - description="List of Page IDs or dict mapping of Page IDs and titles (for hierarchical sub-navigation)", - ), +NavPagesType = Union[List[str], Dict[str, List[str]]] +"List of page IDs or a mapping from name of a group to a list of page IDs (for hierarchical sub-navigation)." + +NavSelectorType = Annotated[ + Union["Accordion", "NavBar"], + Field(discriminator="type", description="Component for rendering navigation."), ] -"""Permissible value types for page attribute. Values are displayed as default.""" +"""Discriminated union. Type of component for rendering navigation: +[`Accordion`][vizro.models.Accordion] or [`NavBar`][vizro.models.NavBar].""" diff --git a/vizro-core/src/vizro/static/css/accordion.css b/vizro-core/src/vizro/static/css/accordion.css index ef03bcf91..0993c5cb6 100644 --- a/vizro-core/src/vizro/static/css/accordion.css +++ b/vizro-core/src/vizro/static/css/accordion.css @@ -82,15 +82,16 @@ margin-top: -10px; } -.accordion_item { +.accordion-item-header { display: flex; flex-direction: column; background-color: inherit; width: 100%; border-bottom: 1px solid var(--border-subtle-alpha-01); + gap: var(--spacing-01); } -.accordion_item:last-child { +.accordion-item-header:last-child { border-bottom: none; } diff --git a/vizro-core/src/vizro/static/css/layout.css b/vizro-core/src/vizro/static/css/layout.css index dd3b67d86..7b9a0e29d 100644 --- a/vizro-core/src/vizro/static/css/layout.css +++ b/vizro-core/src/vizro/static/css/layout.css @@ -5,7 +5,7 @@ width: 100vw; } -.left_side { +.nav_control_panel { align-items: flex-start; background: var(--surfaces-bg-02); display: flex; @@ -17,6 +17,11 @@ gap: var(--spacing-08); } +.left_side { + display: flex; + flex-direction: row; +} + .right_side { background: var(--main-container-bg-color); display: flex; @@ -100,6 +105,57 @@ width: 100%; } +.nav-bar { + display: inline-flex; + flex-direction: column; + width: 64px; + padding-top: 26px; + align-items: center; + background-color: var(--surfaces-bg-02); + border-right: 1px solid var(--border-subtle-alpha-01); +} + +.icon-button { + background-color: var(--surfaces-bg-02); + width: 64px; + height: 64px; + display: flex; + align-items: center; + justify-content: center; +} + +div.dashboard_container .tooltip-inner { + color: var(--text-primary); +} + +div.dashboard_container .custom-tooltip { + color: var(--text-primary); +} +.icon-text { + font-size: var(--text-size-02); + letter-spacing: var(--letter-spacing-body-edit-01); + color: var(--text-secondary); + padding: 4px; +} + +.nav-icon { + filter: var(--fill-accordion-button); + width: 24px; + height: 24px; +} + +.nav-icon-text { + display: flex; + flex-direction: column; + align-items: center; + gap: 6px; + justify-content: center; +} + +.icon-button.btn.btn-primary.active { + background-color: var(--state-overlays-selected); +} + .loading-container { height: 100%; width: 100%; diff --git a/vizro-core/tests/conftest.py b/vizro-core/tests/conftest.py index ea4665d72..3b71a917f 100644 --- a/vizro-core/tests/conftest.py +++ b/vizro-core/tests/conftest.py @@ -2,6 +2,10 @@ from vizro import Vizro +# Allow our custom assert functions in tests_utils/asserts.py to do introspection nicely still. +# See https://pytest.org/en/7.4.x/how-to/assert.html#assertion-introspection-details +pytest.register_assert_rewrite("asserts") + @pytest.fixture(autouse=True) def reset_managers(): @@ -11,9 +15,3 @@ def reset_managers(): Vizro._reset() yield Vizro._reset() - - -@pytest.fixture() -def vizro_app(): - """Fixture to instantiate Vizro/Dash app. Required when needing to register pages.""" - yield Vizro() diff --git a/vizro-core/tests/integration/test_navigation.py b/vizro-core/tests/integration/test_navigation.py new file mode 100644 index 000000000..1910fd6e2 --- /dev/null +++ b/vizro-core/tests/integration/test_navigation.py @@ -0,0 +1,154 @@ +import pytest +from asserts import assert_component_equal + +import vizro.models as vm +from vizro import Vizro +from vizro.managers import model_manager + + +@pytest.fixture +def dashboard_result(request): + # Inject the navigation into the dashboard. Note we need to call request.param since they are all lambda functions. + dashboard = vm.Dashboard( + pages=[ + vm.Page(title="Page 1", components=[vm.Button()]), + vm.Page(title="Page 2", components=[vm.Button()]), + ], + navigation=request.param(), + ) + Vizro()._pre_build() + # Ideally we would do Vizro._reset after yield dashboard, but that won't work since the fixture is used + # indirectly and needs to be reset immediately after it's used rather than after running the test. + # We can't do Vizro._reset since current implementation of navigation uses dash.page_registry to look up a page, + # so that must remain populated. + model_manager._clear() + return dashboard + + +# Looks hacky but this is the easiest way to use the fixture twice in the same test. +dashboard_expected = dashboard_result + +# All the cases need to built lazily - instantiating them directly would not raise validation errors that the +# specified page cannot be found in the page registry. +# In all test cases, the first lambda should be thought of as the "input" configuration, and the second is the +# configuration that results after we've filled in default values etc. +# fmt: off +accordion_cases = [ + ( + lambda: None, + lambda: vm.Navigation(nav_selector=vm.Accordion(pages=["Page 1", "Page 2"])), + ), + ( + lambda: vm.Navigation(), + lambda: vm.Navigation(nav_selector=vm.Accordion(pages=["Page 1", "Page 2"])), + ), + ( + lambda: vm.Navigation(nav_selector=vm.Accordion()), + lambda: vm.Navigation(nav_selector=vm.Accordion(pages=["Page 1", "Page 2"])), + ), + ( + lambda: vm.Navigation(pages=["Page 1"]), + lambda: vm.Navigation(nav_selector=vm.Accordion(pages=["Page 1"]))), + ( + lambda: vm.Navigation(pages=["Page 1"], nav_selector=vm.Accordion(pages=["Page 2"])), + lambda: vm.Navigation(nav_selector=vm.Accordion(pages=["Page 2"])), + ), + ( + lambda: vm.Navigation(pages={"Group 1": ["Page 1"], "Group 2": ["Page 2"]}), + lambda: vm.Navigation(nav_selector=vm.Accordion(pages={"Group 1": ["Page 1"], "Group 2": ["Page 2"]})), + ), +] +# fmt: on + +navbar_flat_cases = [ + ( + lambda: vm.Navigation(nav_selector=vm.NavBar()), + lambda: vm.Navigation(nav_selector=vm.NavBar(pages=["Page 1", "Page 2"])), + ), + ( + lambda: vm.Navigation(nav_selector=vm.NavBar()), + lambda: vm.Navigation( + nav_selector=vm.NavBar( + items=[ + vm.NavLink(label="Page 1", pages=["Page 1"], icon="filter_1"), + vm.NavLink(label="Page 2", pages=["Page 2"], icon="filter_2"), + ] + ) + ), + ), + ( + lambda: vm.Navigation(pages=["Page 1"], nav_selector=vm.NavBar()), + lambda: vm.Navigation(nav_selector=vm.NavBar(pages=["Page 1"])), + ), + ( + lambda: vm.Navigation(pages=["Page 1"], nav_selector=vm.NavBar(pages=["Page 2"])), + lambda: vm.Navigation(nav_selector=vm.NavBar(pages=["Page 2"])), + ), + ( + lambda: vm.Navigation(pages=["Page 1"], nav_selector=vm.NavBar()), + lambda: vm.Navigation( + nav_selector=vm.NavBar( + items=[ + vm.NavLink(label="Page 1", pages=["Page 1"], icon="filter_1"), + ] + ) + ), + ), +] + +navbar_grouped_cases = [ + ( + lambda: vm.Navigation(pages={"Group 1": ["Page 1"], "Group 2": ["Page 2"]}, nav_selector=vm.NavBar()), + lambda: vm.Navigation(nav_selector=vm.NavBar(pages={"Group 1": ["Page 1"], "Group 2": ["Page 2"]})), + ), + ( + lambda: vm.Navigation(pages={"Group 1": ["Page 1"], "Group 2": ["Page 2"]}, nav_selector=vm.NavBar()), + lambda: vm.Navigation( + nav_selector=vm.NavBar( + items=[ + vm.NavLink(label="Group 1", pages=["Page 1"], icon="filter_1"), + vm.NavLink(label="Group 2", pages=["Page 2"], icon="filter_2"), + ] + ) + ), + ), + ( + lambda: vm.Navigation( + nav_selector=vm.NavBar( + items=[ + vm.NavLink(label="Group 1", pages={"Subgroup 1": ["Page 1"]}, icon="dashboard"), + vm.NavLink(label="Group 2", pages={"Subgroup 2": ["Page 2"]}), + ] + ) + ), + lambda: vm.Navigation( + nav_selector=vm.NavBar( + items=[ + vm.NavLink(label="Group 1", pages={"Subgroup 1": ["Page 1"]}, icon="dashboard"), + vm.NavLink(label="Group 2", pages={"Subgroup 2": ["Page 2"]}, icon="filter_2"), + ] + ) + ), + ), +] + + +# Label the test cases to make it easier to see which one failed. +def label_cases(cases, label): + return [pytest.param(*case, id=f"{label}-{case_id}") for case_id, case in enumerate(cases)] + + +accordion_cases = label_cases(accordion_cases, "accordion") +navbar_flat_cases = label_cases(navbar_flat_cases, "navbar_flat") +navbar_grouped_cases = label_cases(navbar_grouped_cases, "navbar_grouped") + + +@pytest.mark.parametrize( + "dashboard_result, dashboard_expected", + accordion_cases + navbar_flat_cases + navbar_grouped_cases, + indirect=True, +) +def test_navigation_build(dashboard_result, dashboard_expected): + result = dashboard_result.navigation.build() + expected = dashboard_expected.navigation.build() + assert_component_equal(result, expected) diff --git a/vizro-core/tests/tests_utils/__init__.py b/vizro-core/tests/tests_utils/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/vizro-core/tests/tests_utils/asserts.py b/vizro-core/tests/tests_utils/asserts.py new file mode 100644 index 000000000..1a32c93dd --- /dev/null +++ b/vizro-core/tests/tests_utils/asserts.py @@ -0,0 +1,30 @@ +import json + +import dash.development +import plotly + + +def strip_keys(object, keys): + """Strips all entries with key "id" from a dictionary, regardless of how deeply it's nested. + + This makes it easy to compare dictionaries generated from Dash components we've created that contain random IDs. + """ + if isinstance(object, dict): + object = {key: strip_keys(value, keys) for key, value in object.items() if key not in keys} + elif isinstance(object, list): + object = [strip_keys(item, keys) for item in object] + return object + + +def component_to_dict(component: dash.development.base_component.Component) -> dict: + return json.loads(json.dumps(component, cls=plotly.utils.PlotlyJSONEncoder)) + + +# TODO: implement some sort of depth limit to comparison so can use in high level tests, roll out more widely across +# tests +def assert_component_equal(left, right, keys_to_strip=None): + # Note we check for None explicitly because {} is a valid value for keys_to_strip. + keys_to_strip = keys_to_strip if keys_to_strip is not None else {"id", "class_name", "className"} + left = strip_keys(component_to_dict(left), keys_to_strip) + right = strip_keys(component_to_dict(right), keys_to_strip) + assert left == right diff --git a/vizro-core/tests/unit/vizro/actions/_action_loop/test_get_action_loop_components.py b/vizro-core/tests/unit/vizro/actions/_action_loop/test_get_action_loop_components.py index d7698380f..9db0d3e4b 100644 --- a/vizro-core/tests/unit/vizro/actions/_action_loop/test_get_action_loop_components.py +++ b/vizro-core/tests/unit/vizro/actions/_action_loop/test_get_action_loop_components.py @@ -68,7 +68,7 @@ def trigger_to_actions_chain_mapper_component(request): @pytest.fixture -def managers_one_page_two_components_two_controls(dash_data_table_with_id): +def managers_one_page_two_components_two_controls(vizro_app, dash_data_table_with_id): """Instantiates managers with one page that contains two controls and two components.""" vm.Dashboard( pages=[ @@ -116,7 +116,7 @@ def managers_one_page_two_components_two_controls(dash_data_table_with_id): @pytest.fixture -def managers_one_page_no_actions(): +def managers_one_page_no_actions(vizro_app): """Instantiates managers with one "empty" page.""" vm.Dashboard( pages=[ @@ -134,7 +134,7 @@ def managers_one_page_no_actions(): class TestGetActionLoopComponents: """Tests getting required components for the action loop.""" - @pytest.mark.usefixtures("vizro_app", "managers_one_page_no_actions") + @pytest.mark.usefixtures("managers_one_page_no_actions") def test_no_components(self): result = _get_action_loop_components() result = json.loads(json.dumps(result, cls=plotly.utils.PlotlyJSONEncoder)) @@ -143,7 +143,7 @@ def test_no_components(self): assert result == expected - @pytest.mark.usefixtures("vizro_app", "managers_one_page_two_components_two_controls") + @pytest.mark.usefixtures("managers_one_page_two_components_two_controls") @pytest.mark.parametrize( "gateway_components, " "action_trigger_components, " diff --git a/vizro-core/tests/unit/vizro/actions/test_export_data_action.py b/vizro-core/tests/unit/vizro/actions/test_export_data_action.py index 7f9440976..ead84198a 100644 --- a/vizro-core/tests/unit/vizro/actions/test_export_data_action.py +++ b/vizro-core/tests/unit/vizro/actions/test_export_data_action.py @@ -222,7 +222,7 @@ def test_invalid_target( @pytest.mark.usefixtures("managers_one_page_two_graphs_one_button") @pytest.mark.parametrize( - "callback_context_export_data, " "target_scatter_filter_and_filter_interaction, " "target_box_filtered_pop", + "callback_context_export_data, target_scatter_filter_and_filter_interaction, target_box_filtered_pop", [ ( [["scatter_chart", "box_chart"], [10**6, 10**7], None, None], @@ -273,7 +273,7 @@ def test_multiple_targets_with_filter_and_filter_interaction( @pytest.mark.usefixtures("managers_one_page_two_graphs_one_table_one_button") @pytest.mark.parametrize( - "callback_context_export_data, " "target_scatter_filter_and_filter_interaction, " "target_box_filtered_pop", + "callback_context_export_data, target_scatter_filter_and_filter_interaction, target_box_filtered_pop", [ ( [["scatter_chart", "box_chart"], [10**6, 10**7], None, "Algeria"], diff --git a/vizro-core/tests/unit/vizro/actions/test_filter_interaction_action.py b/vizro-core/tests/unit/vizro/actions/test_filter_interaction_action.py index 8e3fa5462..c16950bfa 100644 --- a/vizro-core/tests/unit/vizro/actions/test_filter_interaction_action.py +++ b/vizro-core/tests/unit/vizro/actions/test_filter_interaction_action.py @@ -127,7 +127,7 @@ def test_filter_interaction_without_targets_temporary_behavior( # temporary fix @pytest.mark.xfail # This is the desired behavior, ie when no target is provided, then all charts filtered @pytest.mark.parametrize( - "callback_context_filter_interaction," "target_scatter_filtered_continent," "target_box_filtered_continent", + "callback_context_filter_interaction,target_scatter_filtered_continent,target_box_filtered_continent", [ (("Africa", None), ("Africa", None), ("Africa", None)), (("Europe", None), ("Europe", None), ("Europe", None)), diff --git a/vizro-core/tests/unit/vizro/conftest.py b/vizro-core/tests/unit/vizro/conftest.py index 85a80464c..4d6914e6b 100644 --- a/vizro-core/tests/unit/vizro/conftest.py +++ b/vizro-core/tests/unit/vizro/conftest.py @@ -5,6 +5,7 @@ import vizro.models as vm import vizro.plotly.express as px +from vizro import Vizro from vizro.tables import dash_data_table @@ -42,21 +43,28 @@ def standard_go_chart(gapminder): @pytest.fixture() -def page1(): - return vm.Page(title="Page 1", components=[vm.Button(), vm.Button()]) +def page_1(): + return vm.Page(title="Page 1", components=[vm.Button()]) @pytest.fixture() -def page2(): - return vm.Page(title="Page 2", components=[vm.Button(), vm.Button()]) +def page_2(): + return vm.Page(title="Page 2", components=[vm.Button()]) @pytest.fixture() -def dashboard(page1, page2): - dashboard = vm.Dashboard(pages=[page1, page2]) - return dashboard +def vizro_app(): + """Fixture to instantiate Vizro/Dash app. + + Required if Vizro._pre_build or dashboard.pre_build is called since dash.register_page can only be called after + app instantiation.pages. + """ + return Vizro() @pytest.fixture() -def dashboard_prebuild(dashboard): +def prebuilt_two_page_dashboard(vizro_app, page_1, page_2): + """Minimal two page dashboard, used mainly for testing navigation.""" + dashboard = vm.Dashboard(pages=[page_1, page_2]) dashboard.pre_build() + return dashboard diff --git a/vizro-core/tests/unit/vizro/models/_navigation/conftest.py b/vizro-core/tests/unit/vizro/models/_navigation/conftest.py index ce060e231..200ada86e 100644 --- a/vizro-core/tests/unit/vizro/models/_navigation/conftest.py +++ b/vizro-core/tests/unit/vizro/models/_navigation/conftest.py @@ -1,10 +1,6 @@ """Fixtures to be shared across several tests.""" -import dash_bootstrap_components as dbc import pytest -from dash import html - -from vizro._constants import ACCORDION_DEFAULT_TITLE @pytest.fixture() @@ -14,83 +10,4 @@ def pages_as_list(): @pytest.fixture def pages_as_dict(): - return {"Page 1": ["Page 1"], "Page 2": ["Page 2"]} - - -@pytest.fixture -def accordion_from_page_as_list(): - accordion_buttons = [ - dbc.Button( - children=["Page 1"], - className="accordion-item-button", - active=True, - key="/", - href="/", - ), - dbc.Button( - children=["Page 2"], - className="accordion-item-button", - active=False, - key="/page-2", - href="/page-2", - ), - ] - accordion_items = [ - dbc.AccordionItem( - children=[*accordion_buttons], - title=ACCORDION_DEFAULT_TITLE, - class_name="accordion_item", - ) - ] - accordion = html.Div( - children=[ - dbc.Accordion( - id="accordion_list", - children=accordion_items, - class_name="accordion", - persistence=True, - persistence_type="session", - always_open=True, - ), - ], - className="nav_panel", - id="nav_panel_outer", - ) - return accordion - - -@pytest.fixture -def accordion_from_pages_as_dict(): - accordion_items = [ - dbc.AccordionItem( - children=[ - dbc.Button(children=["Page 1"], className="accordion-item-button", active=True, key="/", href="/") - ], - title="PAGE 1", - class_name="accordion_item", - ), - dbc.AccordionItem( - children=[ - dbc.Button( - children=["Page 2"], className="accordion-item-button", active=False, key="/page-2", href="/page-2" - ) - ], - title="PAGE 2", - class_name="accordion_item", - ), - ] - accordion = html.Div( - children=[ - dbc.Accordion( - id="accordion_dict", - children=accordion_items, - class_name="accordion", - persistence=True, - persistence_type="session", - always_open=True, - ), - ], - className="nav_panel", - id="nav_panel_outer", - ) - return accordion + return {"Group": ["Page 1", "Page 2"]} diff --git a/vizro-core/tests/unit/vizro/models/_navigation/test_accordion.py b/vizro-core/tests/unit/vizro/models/_navigation/test_accordion.py index c96a782cf..894275c73 100644 --- a/vizro-core/tests/unit/vizro/models/_navigation/test_accordion.py +++ b/vizro-core/tests/unit/vizro/models/_navigation/test_accordion.py @@ -1,66 +1,117 @@ """Unit tests for vizro.models.Accordion.""" -import json +import re -import plotly +import dash_bootstrap_components as dbc import pytest +from asserts import assert_component_equal from dash import html from pydantic import ValidationError import vizro.models as vm -from vizro.models._navigation._accordion import Accordion +from vizro._constants import ACCORDION_DEFAULT_TITLE + +pytestmark = pytest.mark.usefixtures("prebuilt_two_page_dashboard") -@pytest.mark.usefixtures("vizro_app", "dashboard_prebuild") class TestAccordionInstantiation: """Tests accordion model instantiation.""" - def test_accordion_valid_pages_as_list(self, pages_as_list): - accordion = Accordion(pages=pages_as_list, id="accordion_id") - assert accordion.id == "accordion_id" - assert accordion.pages == {"SELECT PAGE": pages_as_list} + def test_mandatory_only(self): + accordion = vm.Accordion() - def test_accordion_valid_pages_as_dict(self, pages_as_dict): - accordion = Accordion(pages=pages_as_dict, id="accordion_id") - assert accordion.id == "accordion_id" - assert accordion.pages == pages_as_dict + assert hasattr(accordion, "id") + assert accordion.pages == {} - def test_navigation_valid_pages_not_all_included(self): - accordion = Accordion(pages=["Page 1"], id="accordion_id") - assert accordion.id == "accordion_id" - assert accordion.pages == {"SELECT PAGE": ["Page 1"]} + def test_mandatory_and_optional(self, pages_as_dict): + accordion = vm.Accordion(id="accordion", pages=pages_as_dict) + assert hasattr(accordion, "id") + assert accordion.pages == pages_as_dict - def test_invalid_field_pages_required(self): - with pytest.raises(ValidationError, match="field required"): - Accordion() + def test_valid_pages_as_list(self, pages_as_list): + accordion = vm.Accordion(pages=pages_as_list) + assert accordion.pages == {ACCORDION_DEFAULT_TITLE: pages_as_list} - @pytest.mark.parametrize("pages", [{"SELECT PAGE": []}, []]) + @pytest.mark.parametrize("pages", [{"Group": []}, []]) def test_invalid_field_pages_no_ids_provided(self, pages): with pytest.raises(ValidationError, match="Ensure this value has at least 1 item."): - Accordion(pages=pages) + vm.Accordion(pages=pages) def test_invalid_field_pages_wrong_input_type(self): with pytest.raises(ValidationError, match="str type expected"): - Accordion(pages=[vm.Page(title="Page 3", components=[vm.Button()])]) + vm.Accordion(pages=[vm.Page(title="Page 3", components=[vm.Button()])]) + + @pytest.mark.parametrize("pages", [["non existent page"], {"Group": ["non existent page"]}]) + def test_invalid_page(self, pages): + with pytest.raises( + ValidationError, match=re.escape("Unknown page ID ['non existent page'] provided to argument 'pages'.") + ): + vm.Accordion(pages=pages) -@pytest.mark.usefixtures("vizro_app", "dashboard_prebuild") class TestAccordionBuild: """Tests accordion build method.""" - def test_accordion_build_pages_as_list(self, pages_as_list, accordion_from_page_as_list): - accordion = Accordion(pages=pages_as_list, id="accordion_list").build(active_page_id="Page 1") - result = json.loads(json.dumps(accordion, cls=plotly.utils.PlotlyJSONEncoder)) - expected = json.loads(json.dumps(accordion_from_page_as_list, cls=plotly.utils.PlotlyJSONEncoder)) - assert result == expected - - def test_accordion_build_pages_as_dict(self, pages_as_dict, accordion_from_pages_as_dict): - accordion = Accordion(pages=pages_as_dict, id="accordion_dict").build(active_page_id="Page 1") - result = json.loads(json.dumps(accordion, cls=plotly.utils.PlotlyJSONEncoder)) - expected = json.loads(json.dumps(accordion_from_pages_as_dict, cls=plotly.utils.PlotlyJSONEncoder)) - assert result == expected - - def test_single_page_and_hidden_div(self): - accordion = Accordion(pages=["Page 1"]).build() - result = json.loads(json.dumps(accordion, cls=plotly.utils.PlotlyJSONEncoder)) - expected = json.loads(json.dumps(html.Div(hidden=True), cls=plotly.utils.PlotlyJSONEncoder)) - assert result == expected + common_args = {"always_open": True, "persistence": True, "persistence_type": "session"} + + test_cases = [ + ( + {"Group": ["Page 1", "Page 2"]}, + dbc.Accordion( + children=[ + dbc.AccordionItem( + children=[ + dbc.Button(children=["Page 1"], active=True, href="/", key="/"), + dbc.Button(children=["Page 2"], active=False, href="/page-2", key="/page-2"), + ], + title="GROUP", + ) + ], + **common_args, + ), + ), + ( + {"Group 1": ["Page 1"], "Group 2": ["Page 2"]}, + dbc.Accordion( + children=[ + dbc.AccordionItem( + children=[ + dbc.Button(children=["Page 1"], active=True, href="/", key="/"), + ], + title="GROUP 1", + ), + dbc.AccordionItem( + children=[ + dbc.Button(children=["Page 2"], active=False, href="/page-2", key="/page-2"), + ], + title="GROUP 2", + ), + ], + **common_args, + ), + ), + ( + ["Page 1", "Page 2"], + dbc.Accordion( + children=[ + dbc.AccordionItem( + children=[ + dbc.Button(children=["Page 1"], active=True, href="/", key="/"), + dbc.Button(children=["Page 2"], active=False, href="/page-2", key="/page-2"), + ], + title=ACCORDION_DEFAULT_TITLE, + ), + ], + **common_args, + ), + ), + ] + + @pytest.mark.parametrize("pages, expected", test_cases) + def test_accordion(self, pages, expected): + accordion = vm.Accordion(id="accordion", pages=pages).build(active_page_id="Page 1") + assert_component_equal(accordion, html.Div(id="nav_panel_outer"), keys_to_strip={"children", "className"}) + assert_component_equal(accordion["accordion"], expected) + + def test_accordion_one_page(self): + accordion = vm.Accordion(pages={"Group": ["Page 1"]}).build(active_page_id="Page 1") + assert_component_equal(accordion, html.Div(hidden=True, id="nav_panel_outer"), keys_to_strip={}) diff --git a/vizro-core/tests/unit/vizro/models/_navigation/test_nav_bar.py b/vizro-core/tests/unit/vizro/models/_navigation/test_nav_bar.py new file mode 100644 index 000000000..9eecf8eb4 --- /dev/null +++ b/vizro-core/tests/unit/vizro/models/_navigation/test_nav_bar.py @@ -0,0 +1,129 @@ +"""Unit tests for vizro.models.NavBar.""" +import re + +import dash_bootstrap_components as dbc +import pytest +from asserts import assert_component_equal +from dash import html +from pydantic import ValidationError + +import vizro.models as vm + +pytestmark = pytest.mark.usefixtures("prebuilt_two_page_dashboard") + + +class TestNavBarInstantiation: + """Tests NavBar model instantiation.""" + + def test_nav_bar_mandatory_only(self): + nav_bar = vm.NavBar() + + assert hasattr(nav_bar, "id") + assert nav_bar.pages == {} + assert nav_bar.items == [] + + def test_nav_bar_mandatory_and_optional(self, pages_as_dict): + nav_link = vm.NavLink(label="Label") + nav_bar = vm.NavBar(id="nav_bar", pages=pages_as_dict, items=[nav_link]) + + assert nav_bar.id == "nav_bar" + assert nav_bar.pages == pages_as_dict + assert nav_bar.items == [nav_link] + + def test_valid_pages_as_list(self, pages_as_list): + nav_bar = vm.NavBar(pages=pages_as_list) + assert nav_bar.pages == {"Page 1": ["Page 1"], "Page 2": ["Page 2"]} + + @pytest.mark.parametrize("pages", [{"Group": []}, []]) + def test_invalid_field_pages_no_ids_provided(self, pages): + with pytest.raises(ValidationError, match="Ensure this value has at least 1 item."): + vm.NavBar(pages=pages) + + def test_invalid_field_pages_wrong_input_type(self): + with pytest.raises(ValidationError, match="unhashable type: 'Page'"): + vm.NavBar(pages=[vm.Page(title="Page 3", components=[vm.Button()])]) + + @pytest.mark.parametrize("pages", [["non existent page"], {"Group": ["non existent page"]}]) + def test_invalid_page(self, pages): + with pytest.raises( + ValidationError, match=re.escape("Unknown page ID ['non existent page'] provided to argument 'pages'.") + ): + vm.NavBar(pages=pages) + + +class TestNavBarPreBuildMethod: + def test_default_items(self, pages_as_dict): + nav_bar = vm.NavBar(pages=pages_as_dict) + nav_bar.pre_build() + assert all(isinstance(item, vm.NavLink) for item in nav_bar.items) + assert all(item.icon == f"filter_{position}" for position, item in enumerate(nav_bar.items, 1)) + + def test_items_with_with_pages_icons(self, pages_as_dict): + nav_links = [ + vm.NavLink(label="Label", pages={"Group 1": ["Page 1"]}, icon="Home"), + vm.NavLink(label="Label", pages={"Group 2": ["Page 2"]}), + ] + nav_bar = vm.NavBar(pages=pages_as_dict, items=nav_links) + nav_bar.pre_build() + assert nav_bar.items == nav_links + assert nav_bar.items[0].icon == "Home" + assert nav_bar.items[1].icon == "filter_2" + + +class TestNavBarBuildMethod: + """Tests NavBar model build method.""" + + def test_nav_bar_active_pages_as_dict(self, pages_as_dict): + nav_bar = vm.NavBar(pages=pages_as_dict) + nav_bar.pre_build() + built_nav_bar = nav_bar.build(active_page_id="Page 1") + expected_button = html.Div([dbc.Button(children=[html.Span(children="filter_1")], active=True, href="/")]) + assert_component_equal(built_nav_bar["nav_bar_outer"], expected_button) + assert_component_equal( + built_nav_bar["nav_panel_outer"], html.Div(id="nav_panel_outer"), keys_to_strip={"children", "className"} + ) + assert all(isinstance(child, dbc.Accordion) for child in built_nav_bar["nav_panel_outer"].children) + + def test_nav_bar_active_pages_as_list(self, pages_as_list): + nav_bar = vm.NavBar(pages=pages_as_list) + nav_bar.pre_build() + built_nav_bar = nav_bar.build(active_page_id="Page 1") + expected_buttons = html.Div( + [ + dbc.Button(children=[html.Span(children="filter_1")], active=True, href="/"), + dbc.Button(children=[html.Span(children="filter_2")], active=False, href="/page-2"), + ] + ) + assert_component_equal(built_nav_bar["nav_bar_outer"], expected_buttons) + assert_component_equal( + built_nav_bar["nav_panel_outer"], + html.Div(id="nav_panel_outer", hidden=True), + keys_to_strip={"children", "className"}, + ) + + def test_nav_bar_not_active_pages_as_dict(self, pages_as_dict): + nav_bar = vm.NavBar(pages=pages_as_dict) + nav_bar.pre_build() + built_nav_bar = nav_bar.build(active_page_id="Page 3") + expected_button = html.Div([dbc.Button(children=[html.Span(children="filter_1")], active=False, href="/")]) + assert_component_equal(built_nav_bar["nav_bar_outer"], expected_button) + assert_component_equal( + built_nav_bar["nav_panel_outer"], html.Div(hidden=True, id="nav_panel_outer"), keys_to_strip={} + ) + + def test_nav_bar_not_active_pages_as_list(self, pages_as_list): + nav_bar = vm.NavBar(pages=pages_as_list) + nav_bar.pre_build() + built_nav_bar = nav_bar.build(active_page_id="Page 3") + expected_buttons = html.Div( + [ + dbc.Button(children=[html.Span(children="filter_1")], active=False, href="/"), + dbc.Button(children=[html.Span(children="filter_2")], active=False, href="/page-2"), + ] + ) + assert_component_equal(built_nav_bar["nav_bar_outer"], expected_buttons) + assert_component_equal( + built_nav_bar["nav_panel_outer"], + html.Div(id="nav_panel_outer", hidden=True), + keys_to_strip={"children", "className"}, + ) diff --git a/vizro-core/tests/unit/vizro/models/_navigation/test_nav_item.py b/vizro-core/tests/unit/vizro/models/_navigation/test_nav_item.py new file mode 100644 index 000000000..6e54e3bc9 --- /dev/null +++ b/vizro-core/tests/unit/vizro/models/_navigation/test_nav_item.py @@ -0,0 +1,87 @@ +"""Unit tests for vizro.models.NavLink.""" +import re + +import dash_bootstrap_components as dbc +import pytest +from asserts import assert_component_equal +from dash import html +from pydantic import ValidationError + +import vizro.models as vm + +pytestmark = pytest.mark.usefixtures("prebuilt_two_page_dashboard") + + +class TestNavLinkInstantiation: + """Tests NavLink model instantiation.""" + + def test_nav_link_mandatory_only(self): + nav_link = vm.NavLink(label="Label") + + assert hasattr(nav_link, "id") + assert nav_link.label == "Label" + assert nav_link.icon is None + assert nav_link.pages == [] + + def test_nav_link_mandatory_and_optional(self, pages_as_list): + nav_link = vm.NavLink(id="nav_link", icon="home", label="Homepage", pages=pages_as_list) + + assert nav_link.id == "nav_link" + assert nav_link.label == "Homepage" + assert nav_link.icon == "home" + assert nav_link.pages == pages_as_list + + def test_nav_link_valid_pages_as_dict(self, pages_as_dict): + nav_link = vm.NavLink(pages=pages_as_dict, label="Label") + assert nav_link.pages == pages_as_dict + + def test_mandatory_label_missing(self): + with pytest.raises(ValidationError, match="field required"): + vm.NavLink() + + @pytest.mark.parametrize("pages", [{"Group": []}, []]) + def test_invalid_field_pages_no_ids_provided(self, pages): + with pytest.raises(ValidationError, match="Ensure this value has at least 1 item."): + vm.NavLink(pages=pages) + + def test_invalid_field_pages_wrong_input_type(self): + with pytest.raises(ValidationError, match="str type expected"): + vm.NavLink(pages=[vm.Page(title="Page 3", components=[vm.Button()])]) + + @pytest.mark.parametrize("pages", [["non existent page"], {"Group": ["non existent page"]}]) + def test_invalid_page(self, pages): + with pytest.raises( + ValidationError, match=re.escape("Unknown page ID ['non existent page'] provided to argument 'pages'.") + ): + vm.NavLink(pages=pages) + + +class TestNavLinkPreBuildMethod: + def test_nav_link(self, pages_as_dict): + nav_link = vm.NavLink(label="Label", pages=pages_as_dict) + nav_link.pre_build() + assert isinstance(nav_link._nav_selector, vm.Accordion) + assert nav_link._nav_selector.pages == pages_as_dict + + +@pytest.mark.parametrize("pages", ["pages_as_dict", "pages_as_list"]) +class TestNavLinkBuildMethod: + """Tests NavLink model build method.""" + + def test_nav_link_active(self, pages, request): + pages = request.getfixturevalue(pages) + nav_link = vm.NavLink(id="nav_link", label="Label", icon="icon", pages=pages) + nav_link.pre_build() + built_nav_link = nav_link.build(active_page_id="Page 1") + expected_button = dbc.Button(id="nav_link", children=[html.Span("icon")], active=True, href="/") + assert_component_equal(built_nav_link["nav_link"], expected_button) + assert all(isinstance(child, dbc.Accordion) for child in built_nav_link["nav_panel_outer"].children) + + def test_nav_link_not_active(self, pages, request): + pages = request.getfixturevalue(pages) + nav_link = vm.NavLink(id="nav_link", label="Label", icon="icon", pages=pages) + nav_link.pre_build() + built_nav_link = nav_link.build(active_page_id="Page 3") + expected_button = dbc.Button(id="nav_link", children=[html.Span("icon")], active=False, href="/") + assert_component_equal(built_nav_link["nav_link"], expected_button) + assert "nav_panel_outer" not in built_nav_link diff --git a/vizro-core/tests/unit/vizro/models/_navigation/test_navigation.py b/vizro-core/tests/unit/vizro/models/_navigation/test_navigation.py index ad452311e..73abd6fdc 100644 --- a/vizro-core/tests/unit/vizro/models/_navigation/test_navigation.py +++ b/vizro-core/tests/unit/vizro/models/_navigation/test_navigation.py @@ -1,70 +1,122 @@ """Unit tests for vizro.models.Navigation.""" -import json import re -import plotly +import dash_bootstrap_components as dbc import pytest +from asserts import assert_component_equal +from dash import html from pydantic import ValidationError import vizro.models as vm -from vizro.models._navigation._accordion import Accordion +pytestmark = pytest.mark.usefixtures("prebuilt_two_page_dashboard") -@pytest.mark.usefixtures("vizro_app", "dashboard_prebuild") -class TestNavigationInstantiation: - """Tests navigation model instantiation .""" - @pytest.mark.parametrize("navigation", [None, vm.Navigation()]) - def test_navigation_default(self, page1, page2, navigation): - # Navigation is optional inside Dashboard and navigation.pages will always be auto-populated if not provided - dashboard = vm.Dashboard(pages=[page1, page2], navigation=navigation) - assert hasattr(dashboard.navigation, "id") - assert dashboard.navigation.pages == ["Page 1", "Page 2"] +class TestNavigationInstantiation: + def test_navigation_mandatory_only(self): + navigation = vm.Navigation() - def test_navigation_valid_pages_as_list(self, pages_as_list): - navigation = vm.Navigation(pages=pages_as_list, id="navigation") - assert navigation.id == "navigation" - assert navigation.pages == pages_as_list + assert hasattr(navigation, "id") + assert navigation.pages == [] + assert navigation.nav_selector is None - def test_navigation_valid_pages_as_dict(self, pages_as_dict): - navigation = vm.Navigation(pages=pages_as_dict, id="navigation") - assert navigation.id == "navigation" - assert navigation.pages == pages_as_dict + def test_navigation_mandatory_and_optional(self): + accordion = vm.Accordion() + navigation = vm.Navigation(id="navigation", pages=["Page 1", "Page 2"], nav_selector=accordion) - def test_navigation_valid_pages_not_all_included(self): - navigation = vm.Navigation(pages=["Page 1"], id="navigation") assert navigation.id == "navigation" - assert navigation.pages == ["Page 1"] + assert navigation.pages == ["Page 1", "Page 2"] + assert navigation.nav_selector == accordion - def test_navigation_invalid_pages_empty_list(self): + @pytest.mark.parametrize("pages", [{"Group": []}, []]) + def test_invalid_field_pages_no_ids_provided(self, pages): with pytest.raises(ValidationError, match="Ensure this value has at least 1 item."): - vm.Navigation(pages=[], id="navigation") - - def test_navigation_invalid_pages_unknown_page(self): - with pytest.raises(ValidationError, match=re.escape("Unknown page ID ['Test'] provided to argument 'pages'.")): - vm.Navigation(pages=["Test"], id="navigation") - - -@pytest.mark.usefixtures("vizro_app", "dashboard_prebuild") -@pytest.mark.parametrize("pages", [["Page 1", "Page 2"], {"SELECT PAGE": ["Page 1", "Page 2"]}]) -def test_navigation_pre_build(pages): - navigation = vm.Navigation(pages=pages, id="navigation") - navigation.pre_build() - - assert navigation.id == "navigation" - assert navigation.pages == pages - assert isinstance(navigation._selector, Accordion) - assert navigation._selector.pages == {"SELECT PAGE": ["Page 1", "Page 2"]} - - -@pytest.mark.usefixtures("vizro_app", "dashboard_prebuild") -@pytest.mark.parametrize("pages", [["Page 1", "Page 2"], {"Page 1": ["Page 1"], "Page 2": ["Page 2"]}]) -def test_navigation_build(pages): - navigation = vm.Navigation(pages=pages) - navigation.pre_build() # Required such that an Accordion is assigned as selector - accordion = Accordion(pages=pages) - navigation._selector.id = accordion.id - - result = json.loads(json.dumps(navigation.build(), cls=plotly.utils.PlotlyJSONEncoder)) - expected = json.loads(json.dumps(accordion.build(), cls=plotly.utils.PlotlyJSONEncoder)) - assert result == expected + vm.Navigation(pages=pages) + + def test_invalid_field_pages_wrong_input_type(self): + with pytest.raises(ValidationError, match="str type expected"): + vm.Navigation(pages=[vm.Page(title="Page 3", components=[vm.Button()])]) + + @pytest.mark.parametrize("pages", [["non existent page"], {"Group": ["non existent page"]}]) + def test_invalid_page(self, pages): + with pytest.raises( + ValidationError, match=re.escape("Unknown page ID ['non existent page'] provided to argument 'pages'.") + ): + vm.Navigation(pages=pages) + + +class TestNavigationPreBuildMethod: + def test_default_nav_selector(self, pages_as_dict): + navigation = vm.Navigation(pages=pages_as_dict) + navigation.pre_build() + assert isinstance(navigation.nav_selector, vm.Accordion) + assert navigation.nav_selector.pages == pages_as_dict + + def test_default_nav_selector_with_pages(self, pages_as_dict): + navigation = vm.Navigation(pages=pages_as_dict, nav_selector=vm.Accordion(pages={"Group": ["Page 1"]})) + navigation.pre_build() + assert isinstance(navigation.nav_selector, vm.Accordion) + assert navigation.nav_selector.pages == {"Group": ["Page 1"]} + + def test_non_default_nav_selector(self, pages_as_dict): + navigation = vm.Navigation(pages=pages_as_dict, nav_selector=vm.NavBar()) + navigation.pre_build() + assert isinstance(navigation.nav_selector, vm.NavBar) + assert navigation.nav_selector.pages == pages_as_dict + + def test_non_default_nav_selector_with_pages(self, pages_as_dict): + navigation = vm.Navigation(pages=pages_as_dict, nav_selector=vm.NavBar(pages={"Group": ["Page 1"]})) + navigation.pre_build() + assert isinstance(navigation.nav_selector, vm.NavBar) + assert navigation.nav_selector.pages == {"Group": ["Page 1"]} + + +class TestNavigationBuildMethod: + """Tests navigation model build method.""" + + @pytest.mark.parametrize("pages", ["pages_as_dict", "pages_as_list"]) + def test_default_nav_selector(self, pages, request): + pages = request.getfixturevalue(pages) + navigation = vm.Navigation(pages=pages) + navigation.pre_build() + built_navigation = navigation.build(active_page_id="Page 1") + assert_component_equal( + built_navigation["nav_bar_outer"], + html.Div(className="hidden", id="nav_bar_outer"), + keys_to_strip={"children"}, + ) + assert_component_equal( + built_navigation["nav_panel_outer"], html.Div(id="nav_panel_outer"), keys_to_strip={"children", "className"} + ) + assert all(isinstance(child, dbc.Accordion) for child in built_navigation["nav_panel_outer"].children) + + def test_non_default_nav_selector_pags_as_dict(self, pages_as_dict): + navigation = vm.Navigation(pages=pages_as_dict, nav_selector=vm.NavBar()) + navigation.pre_build() + built_navigation = navigation.build(active_page_id="Page 1") + assert_component_equal( + built_navigation["nav_bar_outer"], + html.Div(id="nav_bar_outer", className="nav-bar"), + keys_to_strip={"children"}, + ) + assert_component_equal( + built_navigation["nav_panel_outer"], + html.Div(id="nav_panel_outer"), + keys_to_strip={"children", "className"}, + ) + assert all(isinstance(child, dbc.Accordion) for child in built_navigation["nav_panel_outer"].children) + + def test_non_default_nav_selector_pages_as_list(self, pages_as_list): + navigation = vm.Navigation(pages=pages_as_list, nav_selector=vm.NavBar()) + navigation.pre_build() + built_navigation = navigation.build(active_page_id="Page 1") + assert_component_equal( + built_navigation["nav_bar_outer"], + html.Div(id="nav_bar_outer", className="nav-bar"), + keys_to_strip={"children"}, + ) + assert_component_equal( + built_navigation["nav_panel_outer"], + html.Div(id="nav_panel_outer", hidden=True), + keys_to_strip={"children"}, + ) diff --git a/vizro-core/tests/unit/vizro/models/test_dashboard.py b/vizro-core/tests/unit/vizro/models/test_dashboard.py index 8f2937153..1977b6419 100644 --- a/vizro-core/tests/unit/vizro/models/test_dashboard.py +++ b/vizro-core/tests/unit/vizro/models/test_dashboard.py @@ -29,7 +29,7 @@ def dashboard_container(): @pytest.fixture() -def mock_page_registry(dashboard, page1, page2): +def mock_page_registry(prebuilt_two_page_dashboard, page_1, page_2): return OrderedDict( { "Page 1": { @@ -44,12 +44,12 @@ def mock_page_registry(dashboard, page1, page2): "description": "", "order": 0, "supplied_order": 0, - "supplied_layout": partial(dashboard._make_page_layout, page1), + "supplied_layout": partial(prebuilt_two_page_dashboard._make_page_layout, page_1), "supplied_image": None, "image": None, "image_url": None, "redirect_from": None, - "layout": partial(dashboard._make_page_layout, page1), + "layout": partial(prebuilt_two_page_dashboard._make_page_layout, page_1), "relative_path": "/", }, "Page 2": { @@ -64,12 +64,12 @@ def mock_page_registry(dashboard, page1, page2): "description": "", "order": 1, "supplied_order": 1, - "supplied_layout": partial(dashboard._make_page_layout, page2), + "supplied_layout": partial(prebuilt_two_page_dashboard._make_page_layout, page_2), "supplied_image": None, "image": None, "image_url": None, "redirect_from": None, - "layout": partial(dashboard._make_page_layout, page2), + "layout": partial(prebuilt_two_page_dashboard._make_page_layout, page_2), "relative_path": "/page-2", }, "not_found_404": { @@ -84,12 +84,12 @@ def mock_page_registry(dashboard, page1, page2): "description": "", "order": None, "supplied_order": None, - "supplied_layout": dashboard._make_page_404_layout(), + "supplied_layout": prebuilt_two_page_dashboard._make_page_404_layout(), "supplied_image": None, "image": None, "image_url": None, "redirect_from": None, - "layout": dashboard._make_page_404_layout(), + "layout": prebuilt_two_page_dashboard._make_page_404_layout(), "relative_path": "/not-found-404", }, } @@ -99,19 +99,31 @@ def mock_page_registry(dashboard, page1, page2): class TestDashboardInstantiation: """Tests model instantiation and the validators run at that time.""" - def test_create_dashboard_mandatory_only(self, page1, page2): - dashboard = vm.Dashboard(pages=[page1, page2]) + def test_create_dashboard_mandatory_only(self, page_1, page_2): + dashboard = vm.Dashboard(pages=[page_1, page_2]) assert hasattr(dashboard, "id") - assert dashboard.pages == [page1, page2] + assert dashboard.pages == [page_1, page_2] assert dashboard.theme == "vizro_dark" assert dashboard.title is None + assert isinstance(dashboard.navigation, vm.Navigation) + assert dashboard.navigation.pages == ["Page 1", "Page 2"] - def test_create_dashboard_mandatory_and_optional(self, page1, page2): - dashboard = vm.Dashboard(pages=[page1, page2], theme="vizro_light", title="Vizro") + def test_create_dashboard_mandatory_and_optional(self, page_1, page_2): + dashboard = vm.Dashboard(pages=[page_1, page_2], theme="vizro_light", title="Vizro") assert hasattr(dashboard, "id") - assert dashboard.pages == [page1, page2] + assert dashboard.pages == [page_1, page_2] assert dashboard.theme == "vizro_light" assert dashboard.title == "Vizro" + assert isinstance(dashboard.navigation, vm.Navigation) + assert dashboard.navigation.pages == ["Page 1", "Page 2"] + + def test_navigation_pages_automatically_populated(self, page_1, page_2): + dashboard = vm.Dashboard(pages=[page_1, page_2]) + assert dashboard.navigation.pages == ["Page 1", "Page 2"] + + def test_navigation_with_pages(self, page_1, page_2): + dashboard = vm.Dashboard(pages=[page_1, page_2], navigation=vm.Navigation(pages=["Page 1"])) + assert dashboard.navigation.pages == ["Page 1"] def test_mandatory_pages_missing(self): with pytest.raises(ValidationError, match="field required"): @@ -125,25 +137,23 @@ def test_field_invalid_pages_input_type(self): with pytest.raises(ValidationError, match="4 validation errors for Dashboard"): vm.Dashboard(pages=[vm.Button()]) - def test_field_invalid_theme_input_type(self, page1): + def test_field_invalid_theme_input_type(self, page_1): with pytest.raises(ValidationError, match="unexpected value; permitted: 'vizro_dark', 'vizro_light'"): - vm.Dashboard(pages=[page1], theme="not_existing") + vm.Dashboard(pages=[page_1], theme="not_existing") class TestDashboardPreBuild: """Tests dashboard pre_build method.""" - @pytest.mark.usefixtures("vizro_app") - def test_dashboard_page_registry(self, dashboard, mock_page_registry): - dashboard.pre_build() + def test_dashboard_page_registry(self, prebuilt_two_page_dashboard, mock_page_registry): result = dash.page_registry expected = mock_page_registry # Str conversion required as comparison of OrderedDict values result in False otherwise assert str(result.items()) == str(expected.items()) - def test_create_layout_page_404(self, dashboard, mocker): + def test_create_layout_page_404(self, prebuilt_two_page_dashboard, mocker): mocker.patch("vizro.models._dashboard.get_relative_path") - result = dashboard._make_page_404_layout() + result = prebuilt_two_page_dashboard._make_page_404_layout() result_image = result.children[0] result_div = result.children[1] @@ -152,13 +162,10 @@ def test_create_layout_page_404(self, dashboard, mocker): assert isinstance(result_div, html.Div) -@pytest.mark.usefixtures("vizro_app") class TestDashboardBuild: """Tests dashboard build method.""" - def test_dashboard_build(self, dashboard_container, dashboard): - dashboard.pre_build() - dashboard.navigation.pre_build() - result = json.loads(json.dumps(dashboard.build(), cls=plotly.utils.PlotlyJSONEncoder)) + def test_dashboard_build(self, dashboard_container, prebuilt_two_page_dashboard): + result = json.loads(json.dumps(prebuilt_two_page_dashboard.build(), cls=plotly.utils.PlotlyJSONEncoder)) expected = json.loads(json.dumps(dashboard_container, cls=plotly.utils.PlotlyJSONEncoder)) assert result == expected diff --git a/vizro-core/tests/unit/vizro/models/test_page.py b/vizro-core/tests/unit/vizro/models/test_page.py index 0ccac6ac0..e875abc38 100644 --- a/vizro-core/tests/unit/vizro/models/test_page.py +++ b/vizro-core/tests/unit/vizro/models/test_page.py @@ -153,5 +153,4 @@ def test_page_build_left_side_removed(standard_px_chart): page = vm.Page(title="Single Page", components=[vm.Graph(id="scatter_chart", figure=standard_px_chart)]) dashboard = vm.Dashboard(pages=[page]) dashboard.pre_build() - dashboard.navigation.pre_build() - assert "className='left_side'" not in str(page.build()) + assert "className='nav_control_panel'" not in str(page.build()) diff --git a/vizro-core/tests/unit/vizro/models/test_types.py b/vizro-core/tests/unit/vizro/models/test_types.py index 3315d2654..910c30b7b 100644 --- a/vizro-core/tests/unit/vizro/models/test_types.py +++ b/vizro-core/tests/unit/vizro/models/test_types.py @@ -1,3 +1,5 @@ +import importlib + import plotly.express as plotly_express import plotly.graph_objects as go import pytest @@ -145,7 +147,7 @@ def invalid_decorated_graph_function(): class Model(VizroBaseModel): # The import_path here makes it possible to import the above function using getattr(import_path, _target_). - function: CapturedCallable = Field(..., import_path=__import__(__name__)) + function: CapturedCallable = Field(..., import_path=importlib.import_module(__name__)) class TestModelFieldPython:

    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 b^ZM@4gw+0hAE*NIKBly|yjZ!2!T0|UozS8F literal 258342 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