From 1613386096bb9657d1912f6ef03feca5b41f5d0c Mon Sep 17 00:00:00 2001 From: Andreas Gammelgaard Damsbo Date: Thu, 8 May 2025 11:38:02 +0200 Subject: [PATCH] loading animation --- .Rbuildignore | 2 +- .gitignore | 3 +- CITATION.cff | 13 +++++++ DESCRIPTION | 3 +- NEWS.md | 2 + R/sysdata.rda | Bin 2003 -> 2120 bytes SESSION.md | 13 +++++++ inst/apps/FreesearchR/app.R | 73 +++++++++++++++++++++++------------- renv.lock | 34 +++++++++++++++++ 9 files changed, 113 insertions(+), 30 deletions(-) diff --git a/.Rbuildignore b/.Rbuildignore index 4ffec2b..9492747 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -14,6 +14,6 @@ ^data-raw$ ^CITATION\.cff$ ^app_hosted$ -^app$ +^app*$ ^page$ ^demo$ diff --git a/.gitignore b/.gitignore index c5e7bc8..96f8628 100644 --- a/.gitignore +++ b/.gitignore @@ -10,7 +10,8 @@ inst/shiny-examples/casting/functions.R functions.R docs inst/doc -app_hosted +app_dev +app_stable app page demo diff --git a/CITATION.cff b/CITATION.cff index c496e4a..29f4814 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -977,6 +977,19 @@ references: email: alboukadel.kassambara@gmail.com year: '2025' doi: 10.32614/CRAN.package.ggcorrplot +- type: software + title: shinyjs + abstract: 'shinyjs: Easily Improve the User Experience of Your Shiny Apps in Seconds' + notes: Imports + url: https://deanattali.com/shinyjs/ + repository: https://CRAN.R-project.org/package=shinyjs + authors: + - family-names: Attali + given-names: Dean + email: daattali@gmail.com + orcid: https://orcid.org/0000-0002-5645-3493 + year: '2025' + doi: 10.32614/CRAN.package.shinyjs - type: software title: styler abstract: 'styler: Non-Invasive Pretty Printing of R Code' diff --git a/DESCRIPTION b/DESCRIPTION index eea064e..87cc929 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -62,7 +62,8 @@ Imports: eulerr, ggforce, RcppArmadillo, - ggcorrplot + ggcorrplot, + shinyjs Suggests: styler, devtools, diff --git a/NEWS.md b/NEWS.md index a0957d8..0773121 100644 --- a/NEWS.md +++ b/NEWS.md @@ -2,6 +2,8 @@ - *FIX*: correct export of plots. The solution in the last version broke more than it solved. +- *NEW*: added simple loading animation. + A privately hosted version is now live on app.freesearchr.org. For now, it is hosted on Hetzner with Yunohost. # FreesearchR 25.5.1 diff --git a/R/sysdata.rda b/R/sysdata.rda index edbaddb43178806072ea17b3f33bac4cbf758414..57d54ffe4019c0943ba03653e6099750f677ab1c 100644 GIT binary patch literal 2120 zcmV-O2)Fk_T4*^jL0KkKS+Ga33jh-S|KR`sXaz!l|KNXXpTNKW|L{Nn2mlBH;0Yfs z)>*sMI4FQL4R9V*os1|nASQrlO%p~b=0sCGsP#QV(Hl_H)D0OkG?Pr!8mE&WBOt1K z(UGDPPfBejBM8DU2nGW}G!0J(MJfQu8USPf01W^D000D`^Nk1h$H3z5-29MPM z0LTCX)Bpe+WWh8t85tQgGy$N$76bxYQMT@%ws}#QwsS$ckhMg0_*G z_IsAV2%2Dl5fB%d0^>0=yX23q?}F|}@$h$0X!~sLk{3-rzUQ*q1fNKwSHEP;s9+JF z{cnYU+Nm}onVFZJlORnq4OA`#j-aL!#c*SC9||#1u3-GkHV=Fr)>Lpr1cpb5w>)T{ z)_p7cIph1*n>ibE z5IhPk%20E~8m_vbhHFCBHQ&1Y{JSR1?u#**Z9`=U`j9M$fGUM5z57u_W`V5;02x4v zgd(a$5d{=v2oO?0sR&3<;gS$Kkw9p(5>?!whF2}4KMWV^3X7MQjbD;$T=3n*Ap?&c z^xnv;B8ZS;2$4k;1qiDoSh6gNv0{jTuz9>~v!^1?*kK~@X|;sTa%qsLIIyi=R1CVB z>#K5T;6)S#HDQ&`Qr|l?G}BY20SeP6%sO_2G(`|BjnK;`X`KZlaG(x}4Fr-YX%Q2L zGU}VBR5qhK7K1~qM-a|TEQ{bVZ*=N%GU9CA&1DJ=m${tFmxKqh6|DSq6W+ER^u3i3 ztKsRA_^_?+miJ(5M+Fi<&PNFcO4#DL1(?-@g{#*fb~xBp6Q7?IMwYgZMnX(Q$`xYI zfIbt&aK|Z`f`%MS*^?1r@n+#On>xZ9fdEJl5F|IU2G)c;4bbL5(V6h^yHN`&y5gFU zl4PNQC{a?lwMI79;g#AO*%XZCaWMjvX)HikV&flDR!keo5b3f)u!w^YQaoA)`#?rn zeWdKL;>dLH;kwFEwzO(AqbRb1moVmoCT#3to%Q3}rkVkIctd~5Buh{WY7jz^r7fi- z36zy)RzXRSupn*eXEF;So<9r$gq&^gQyDf@D87%AaK-{fgCV0TO1cje=(GhF?X}+} z6xo5Q80yjHNR&Y(kP2t292UE8;SAjB#8*hf^p$}+rk<#U=}*RSF@Z5Fb*B`nzd>X~J%!2EQL z1N-XrnV9kRVD~(GU}Jc!9jkM@7;3;{O5594x#dk|^YX4scP3Mq`CmlyN(s)HM1`LF zROA#}$RFV9R?d;?*L)1Vh_CaK^>=eF{LshDwbUD`ETx0C7Mj;YY+UvAIijtFpPXA6Wfi1@bccd%y6nfG&A{`bly@A8#&m0z zG)Vz1jEu174d74AgBh;KP^9fG+zQ}?U%M@Xh-Vkw{+hO`YM6?p*p%2Vqk521L4)rT zefo0h*=;z6rov5rBZl2jnCKdcDqKYfrtG!y*`?D)(4$RAD>-tIX4B}%9V^OlZswNi zZ!r?<9P|mt^-#^*T`L+re4YyhbeK`UszP;`oJtJ0RMkhC6NbWh&?EA{9i4J!*8qkN z%!TBcXI3a~deT^Cc_fhAF~4iAAiAerD%iUxxlpzNZqvVF+gqaq1&L!=k-z+g5HcF| zrjs!V3g-he)Rl0MZ%4T;dV&%AthI5Fo|_8H$&pi5^Vf~$f8CL1~m`^+H%uFFKd zYs)=IM|v9UKH|EgsQs3_pI-Dj`BmBh*C86)Dbk zfq8Acn^;g@OC!UUEZodIVL8U#SZP&mF&fQ6{^`r82WEq7^+Bb@1+pPZt}I(X2@awe zm6>mf4dpqtRqXZ{${9ZgW8FH=+uqBdVt|Q%j_+Mp~gL&0DV*LN|*l!+kmH z6hcT^bqP^cDO10Dz;^92b(J&`ghq1flV)je?6r6FLzvm7!pmsOIQ4jUuXE@^8se-` ymX+zKM`=>lamSKxZA~oZdNqf1t0)Api=S}!f!iP^h!6xH_`8xR!i0r_J&0Iy$>ah6 literal 2003 zcmV;^2Q2tPT4*^jL0KkKS*L*KqyQ01|G@wMXaz!l|KNXXp1{BV|M)@x2m#;-e=Lz< z;N%9SAYVK@s;E?0lePe_RrOieTzXaF9d00003KmY-y zBTOLEKxhCB0000005oU-B1s~iB=b~hriOu`=z*XB05mkv(8vZ%63yh|lxP8YmX_)NTATr zl~9oZ!a9aPkgl+Zs#}#AUJ!gn^_hh*VXkvcXK1GjXjiWe<^FOsdo~GfP}gM$uFD{G z*p-q*gp`vcOP}KY-@b^*W5Wd7+Ftaqw%bK0*h^zb&)i-7@-{GwL;D1a$c%Gk;eBxR z=i6mdgnmEfUMp9qIKXSzSnp=w{b;Ahp+hZE>SXGG(kkx6$1IOnRC#}vn>t7}fE9r%JSa8&{-qDU|#Bq9nSAc0U-0sTY}H6Wsv&nU;dhz7UE zY}nL6)qta~ug}f3STgMB#Xv8=B?*!NB!ET)go7g_N>NHsP+Fl%6-8R4X=Hoe6t}I!z(8<*qik zTSUye##2f*$s;94CTAMV;`Msb%4NKb!sltOaOZnugVYk7%Ntbzp$BCP1i=C%tkxl3 z2n3P_=N^hFq|!nw+ECQmu;|1lA;p@2P?C-cjzm$b)tpUc9P^!;RuZg85NbCfw8UB3N5NEGN2nES-VWgp| z3Kpp;1gdC2F>GCO1cq7yqnfKu7aS?2JpUG3O#)JbRB0nbT|HFm$yB2K(mg7uDak0? zSJ}RN(TgQIz1e`$AdLbvh*m;Sh=oLGssadhN}vSg(v@3I6yZfUV+fQ1D6lNJDBSI) zE>4TqMIy+IP{OOf?R&jly?ydxOgTbCQMQAGeeAA|c=F(X9^l4q~8IDUbB5 zlc4IMO!ZUzH562jhgzLsM25ybXwN*_ccU^a?aXyDZ3e^h_r&TDhup8MYm6M8dM$SUW zODqk;i;F|yZMYWlCdG}vV;RpZ>u&t@L(^>aIv?54^an+fg_bH zOfr?>lD*~)x3@U9Kx7J<(cntq);OHn+a`xwa=fRMXF#{6K0d7Q*A~@avA@aGucj=4 z*A?1?#@4~6L+FaJd4|d+dyLNIBCPLPs?;!7jdeev@6iDy>C%RJXv!D28-}K63J8$X zxU_%BZRUQn;&-?cSJLYO2&%5!K3ItDF^oVlvlSTR$Zo$>&b=tF5? zCO4J*Fz9!iHdi}N;_QanQwbrKQaYVmF>?9wn;aBTx#)0=C}C@=_rU>SB!^TDcHR!> z=BnEm)qM2ro-CQ1LxJUgC0UB&6okbu({no}hFp_o{Pfn@i|MO|UAK&FTWc)><4s7I zPnKyNyesb0ENDQ@c;@XekD|oK#^9`V->_eUxN+%Bjhut7m1$UxI", "Repository": "CRAN" }, + "shinyjs": { + "Package": "shinyjs", + "Version": "2.1.0", + "Source": "Repository", + "Title": "Easily Improve the User Experience of Your Shiny Apps in Seconds", + "Authors@R": "person(\"Dean\", \"Attali\", email = \"daattali@gmail.com\", role = c(\"aut\", \"cre\"), comment= c(ORCID=\"0000-0002-5645-3493\"))", + "Description": "Perform common useful JavaScript operations in Shiny apps that will greatly improve your apps without having to know any JavaScript. Examples include: hiding an element, disabling an input, resetting an input back to its original value, delaying code execution by a few seconds, and many more useful functions for both the end user and the developer. 'shinyjs' can also be used to easily call your own custom JavaScript functions from R.", + "URL": "https://deanattali.com/shinyjs/", + "BugReports": "https://github.com/daattali/shinyjs/issues", + "Depends": [ + "R (>= 3.1.0)" + ], + "Imports": [ + "digest (>= 0.6.8)", + "jsonlite", + "shiny (>= 1.0.0)" + ], + "Suggests": [ + "htmltools (>= 0.2.9)", + "knitr (>= 1.7)", + "rmarkdown", + "shinyAce", + "shinydisconnect", + "testthat (>= 0.9.1)" + ], + "License": "MIT + file LICENSE", + "VignetteBuilder": "knitr", + "RoxygenNote": "7.1.1", + "Encoding": "UTF-8", + "NeedsCompilation": "no", + "Author": "Dean Attali [aut, cre] ()", + "Maintainer": "Dean Attali ", + "Repository": "CRAN" + }, "sodium": { "Package": "sodium", "Version": "1.4.0",