Compare commits

...

2 commits

Author SHA1 Message Date
111c0663bc
version bump - rails on data browse
Some checks failed
pkgdown.yaml / pkgdown (push) Has been cancelled
2025-06-04 15:10:35 +02:00
a51e7f2877
library ref missing 2025-06-04 14:59:45 +02:00
9 changed files with 93 additions and 89 deletions

View file

@ -9,7 +9,7 @@ type: software
license: AGPL-3.0-or-later
title: 'FreesearchR: A free and open-source browser based data analysis tool for researchers
with publication ready output'
version: 25.5.6
version: 25.6.1
doi: 10.5281/zenodo.14527429
identifiers:
- type: url

View file

@ -1,6 +1,6 @@
Package: FreesearchR
Title: A free and open-source browser based data analysis tool for researchers with publication ready output
Version: 25.5.6
Version: 25.6.1
Authors@R: c(
person("Andreas Gammelgaard", "Damsbo",email="agdamsbo@clin.au.dk", role = c("aut", "cre"),
comment = c(ORCID = "0000-0002-7559-1154")),

View file

@ -1,3 +1,9 @@
# FreesearchR 25.6.1
- *FIX* big not allowing to browse data
- *FIX* caught the last bugs when initiating the creation of new variables
# FreesearchR 25.5.6
- *FIX* note on max file size of 5 mb

View file

@ -1 +1 @@
app_version <- function()'25.5.6'
app_version <- function()'25.6.1'

View file

@ -103,7 +103,7 @@ show_data <- function(data,
title
),
tags$div(
style = css(minHeight = validateCssUnit(options$height)),
style = htmltools::css(minHeight = htmltools::validateCssUnit(options$height)),
toastui::renderDatagrid2(datatable)
),
size = "xl",
@ -118,25 +118,25 @@ show_data <- function(data,
#' @importFrom htmltools tagList tags css
describe_col_char <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("text-aa"),
"character"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Unique:"), length(unique(x))
datamods:::i18n("Unique:"), length(unique(x))
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
),
tags$div(
style = css(whiteSpace = "normal", wordBreak = "break-all"),
i18n("Most Common:"), gsub(
style = htmltools::css(whiteSpace = "normal", wordBreak = "break-all"),
datamods:::i18n("Most Common:"), gsub(
pattern = "'",
replacement = "\u07F4",
x = names(sort(table(x), decreasing = TRUE))[1]
@ -161,16 +161,16 @@ describe_col_factor <- function(x, with_summary = TRUE) {
two <- count[!is.na(names(count))][2]
missing <- count[is.na(names(count))]
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("list-bullets"),
"factor"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
names(one), ":", fmt_p(one, total)
),
@ -190,27 +190,27 @@ describe_col_factor <- function(x, with_summary = TRUE) {
describe_col_num <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("hash"),
"numeric"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Min:"), round(min(x, na.rm = TRUE), 2)
datamods:::i18n("Min:"), round(min(x, na.rm = TRUE), 2)
),
tags$div(
i18n("Mean:"), round(mean(x, na.rm = TRUE), 2)
datamods:::i18n("Mean:"), round(mean(x, na.rm = TRUE), 2)
),
tags$div(
i18n("Max:"), round(max(x, na.rm = TRUE), 2)
datamods:::i18n("Max:"), round(max(x, na.rm = TRUE), 2)
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
)
)
}
@ -220,24 +220,24 @@ describe_col_num <- function(x, with_summary = TRUE) {
describe_col_date <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("calendar"),
"date"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Min:"), min(x, na.rm = TRUE)
datamods:::i18n("Min:"), min(x, na.rm = TRUE)
),
tags$div(
i18n("Max:"), max(x, na.rm = TRUE)
datamods:::i18n("Max:"), max(x, na.rm = TRUE)
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
),
tags$div(
"\u00A0"
@ -249,24 +249,24 @@ describe_col_date <- function(x, with_summary = TRUE) {
describe_col_datetime <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("clock"),
"datetime"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Min:"), min(x, na.rm = TRUE)
datamods:::i18n("Min:"), min(x, na.rm = TRUE)
),
tags$div(
i18n("Max:"), max(x, na.rm = TRUE)
datamods:::i18n("Max:"), max(x, na.rm = TRUE)
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
),
tags$div(
"\u00A0"
@ -279,21 +279,21 @@ describe_col_datetime <- function(x, with_summary = TRUE) {
describe_col_other <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("clock"),
paste(class(x), collapse = ", ")
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Unique:"), length(unique(x))
datamods:::i18n("Unique:"), length(unique(x))
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
),
tags$div(
"\u00A0"

View file

@ -1 +1 @@
hosted_version <- function()'v25.5.6-250516'
hosted_version <- function()'v25.6.1-250604'

Binary file not shown.

View file

@ -11,11 +11,11 @@
|collate |en_US.UTF-8 |
|ctype |en_US.UTF-8 |
|tz |Europe/Copenhagen |
|date |2025-05-16 |
|date |2025-06-04 |
|rstudio |2025.05.0+496 Mariposa Orchid (desktop) |
|pandoc |3.6.4 @ /opt/homebrew/bin/ (via rmarkdown) |
|quarto |1.7.30 @ /usr/local/bin/quarto |
|FreesearchR |25.5.6.250516 |
|FreesearchR |25.6.1.250604 |
--------------------------------------------------------------------------------
@ -53,7 +53,6 @@
|colorspace |2.1-1 |2024-07-26 |CRAN (R 4.4.1) |
|commonmark |1.9.5 |2025-03-17 |CRAN (R 4.4.1) |
|crayon |1.5.3 |2024-06-20 |CRAN (R 4.4.1) |
|credentials |2.0.2 |2024-10-04 |CRAN (R 4.4.1) |
|curl |6.2.2 |2025-03-24 |CRAN (R 4.4.1) |
|data.table |1.17.0 |2025-02-22 |CRAN (R 4.4.1) |
|datamods |1.5.3 |2024-10-02 |CRAN (R 4.4.1) |
@ -85,19 +84,16 @@
|foreach |1.5.2 |2022-02-02 |CRAN (R 4.4.0) |
|foreign |0.8-90 |2025-03-31 |CRAN (R 4.4.1) |
|Formula |1.2-5 |2023-02-24 |CRAN (R 4.4.1) |
|FreesearchR |25.5.6 |NA |NA |
|FreesearchR |25.6.1 |NA |NA |
|fs |1.6.6 |2025-04-12 |CRAN (R 4.4.1) |
|gdtools |0.4.2 |2025-03-27 |CRAN (R 4.4.1) |
|generics |0.1.3 |2022-07-05 |CRAN (R 4.4.1) |
|gert |2.1.5 |2025-03-25 |CRAN (R 4.4.1) |
|ggalluvial |0.12.5 |2023-02-22 |CRAN (R 4.4.0) |
|ggcorrplot |0.1.4.1 |2023-09-05 |CRAN (R 4.4.0) |
|ggforce |0.4.2 |2024-02-19 |CRAN (R 4.4.0) |
|ggplot2 |3.5.2 |2025-04-09 |CRAN (R 4.4.1) |
|ggridges |0.5.6 |2024-01-23 |CRAN (R 4.4.0) |
|ggstats |0.9.0 |2025-03-10 |CRAN (R 4.4.1) |
|gh |1.4.1 |2024-03-28 |CRAN (R 4.4.0) |
|gitcreds |0.1.2 |2022-09-08 |CRAN (R 4.4.1) |
|glue |1.8.0 |2024-09-30 |CRAN (R 4.4.1) |
|gridExtra |2.3 |2017-09-09 |CRAN (R 4.4.1) |
|gt |1.0.0 |2025-04-05 |CRAN (R 4.4.1) |
@ -111,7 +107,6 @@
|htmltools |0.5.8.1 |2024-04-04 |CRAN (R 4.4.1) |
|htmlwidgets |1.6.4 |2023-12-06 |CRAN (R 4.4.0) |
|httpuv |1.6.16 |2025-04-16 |CRAN (R 4.4.1) |
|httr2 |1.1.2 |2025-03-26 |CRAN (R 4.4.1) |
|IDEAFilter |0.2.0 |2024-04-15 |CRAN (R 4.4.0) |
|insight |1.2.0 |2025-04-22 |CRAN (R 4.4.1) |
|iterators |1.0.14 |2022-02-05 |CRAN (R 4.4.1) |
@ -124,11 +119,9 @@
|later |1.4.2 |2025-04-08 |CRAN (R 4.4.1) |
|lattice |0.22-7 |2025-04-02 |CRAN (R 4.4.1) |
|lifecycle |1.0.4 |2023-11-07 |CRAN (R 4.4.1) |
|litedown |0.7 |2025-04-08 |CRAN (R 4.4.1) |
|lme4 |1.1-37 |2025-03-26 |CRAN (R 4.4.1) |
|lubridate |1.9.4 |2024-12-08 |CRAN (R 4.4.1) |
|magrittr |2.0.3 |2022-03-30 |CRAN (R 4.4.1) |
|markdown |2.0 |2025-03-23 |CRAN (R 4.4.1) |
|MASS |7.3-65 |2025-02-28 |CRAN (R 4.4.1) |
|Matrix |1.7-3 |2025-03-11 |CRAN (R 4.4.1) |
|memoise |2.0.1 |2021-11-26 |CRAN (R 4.4.0) |
@ -167,7 +160,6 @@
|R6 |2.6.1 |2025-02-15 |CRAN (R 4.4.1) |
|ragg |1.4.0 |2025-04-10 |CRAN (R 4.4.1) |
|rankinPlot |1.1.0 |2023-01-30 |CRAN (R 4.4.0) |
|rappdirs |0.3.3 |2021-01-31 |CRAN (R 4.4.1) |
|rbibutils |2.3 |2024-10-04 |CRAN (R 4.4.1) |
|RColorBrewer |1.1-3 |2022-04-03 |CRAN (R 4.4.1) |
|Rcpp |1.0.14 |2025-01-12 |CRAN (R 4.4.1) |
@ -204,7 +196,6 @@
|shinyWidgets |0.9.0 |2025-02-21 |CRAN (R 4.4.1) |
|stringi |1.8.7 |2025-03-27 |CRAN (R 4.4.1) |
|stringr |1.5.1 |2023-11-14 |CRAN (R 4.4.0) |
|sys |3.4.3 |2024-10-04 |CRAN (R 4.4.1) |
|systemfonts |1.2.2 |2025-04-04 |CRAN (R 4.4.1) |
|testthat |3.2.3 |2025-01-13 |CRAN (R 4.4.1) |
|textshaping |1.0.0 |2025-01-20 |CRAN (R 4.4.1) |

View file

@ -49,7 +49,7 @@ library(rlang)
#### Current file: /Users/au301842/FreesearchR/R//app_version.R
########
app_version <- function()'25.5.6'
app_version <- function()'25.6.1'
########
@ -3078,7 +3078,7 @@ show_data <- function(data,
title
),
tags$div(
style = css(minHeight = validateCssUnit(options$height)),
style = htmltools::css(minHeight = htmltools::validateCssUnit(options$height)),
toastui::renderDatagrid2(datatable)
),
size = "xl",
@ -3093,25 +3093,25 @@ show_data <- function(data,
#' @importFrom htmltools tagList tags css
describe_col_char <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("text-aa"),
"character"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Unique:"), length(unique(x))
datamods:::i18n("Unique:"), length(unique(x))
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
),
tags$div(
style = css(whiteSpace = "normal", wordBreak = "break-all"),
i18n("Most Common:"), gsub(
style = htmltools::css(whiteSpace = "normal", wordBreak = "break-all"),
datamods:::i18n("Most Common:"), gsub(
pattern = "'",
replacement = "\u07F4",
x = names(sort(table(x), decreasing = TRUE))[1]
@ -3136,16 +3136,16 @@ describe_col_factor <- function(x, with_summary = TRUE) {
two <- count[!is.na(names(count))][2]
missing <- count[is.na(names(count))]
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("list-bullets"),
"factor"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
names(one), ":", fmt_p(one, total)
),
@ -3165,27 +3165,27 @@ describe_col_factor <- function(x, with_summary = TRUE) {
describe_col_num <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("hash"),
"numeric"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Min:"), round(min(x, na.rm = TRUE), 2)
datamods:::i18n("Min:"), round(min(x, na.rm = TRUE), 2)
),
tags$div(
i18n("Mean:"), round(mean(x, na.rm = TRUE), 2)
datamods:::i18n("Mean:"), round(mean(x, na.rm = TRUE), 2)
),
tags$div(
i18n("Max:"), round(max(x, na.rm = TRUE), 2)
datamods:::i18n("Max:"), round(max(x, na.rm = TRUE), 2)
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
)
)
}
@ -3195,24 +3195,24 @@ describe_col_num <- function(x, with_summary = TRUE) {
describe_col_date <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("calendar"),
"date"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Min:"), min(x, na.rm = TRUE)
datamods:::i18n("Min:"), min(x, na.rm = TRUE)
),
tags$div(
i18n("Max:"), max(x, na.rm = TRUE)
datamods:::i18n("Max:"), max(x, na.rm = TRUE)
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
),
tags$div(
"\u00A0"
@ -3224,24 +3224,24 @@ describe_col_date <- function(x, with_summary = TRUE) {
describe_col_datetime <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("clock"),
"datetime"
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Min:"), min(x, na.rm = TRUE)
datamods:::i18n("Min:"), min(x, na.rm = TRUE)
),
tags$div(
i18n("Max:"), max(x, na.rm = TRUE)
datamods:::i18n("Max:"), max(x, na.rm = TRUE)
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
),
tags$div(
"\u00A0"
@ -3254,21 +3254,21 @@ describe_col_datetime <- function(x, with_summary = TRUE) {
describe_col_other <- function(x, with_summary = TRUE) {
tags$div(
style = css(padding = "3px 0", fontSize = "x-small"),
style = htmltools::css(padding = "3px 0", fontSize = "x-small"),
tags$div(
style = css(fontStyle = "italic"),
style = htmltools::css(fontStyle = "italic"),
get_var_icon(x),
# phosphoricons::ph("clock"),
paste(class(x), collapse = ", ")
),
if (with_summary) {
tagList(
tags$hr(style = css(margin = "3px 0")),
tags$hr(style = htmltools::css(margin = "3px 0")),
tags$div(
i18n("Unique:"), length(unique(x))
datamods:::i18n("Unique:"), length(unique(x))
),
tags$div(
i18n("Missing:"), sum(is.na(x))
datamods:::i18n("Missing:"), sum(is.na(x))
),
tags$div(
"\u00A0"
@ -3996,7 +3996,7 @@ simple_snake <- function(data){
#### Current file: /Users/au301842/FreesearchR/R//hosted_version.R
########
hosted_version <- function()'v25.5.6-250516'
hosted_version <- function()'v25.6.1-250604'
########
@ -10368,7 +10368,14 @@ server <- function(input, output, session) {
)
observeEvent(input$modal_browse, {
show_data(REDCapCAST::fct_drop(rv$data_filtered), title = "Uploaded data overview", type = "modal")
tryCatch(
{
show_data(REDCapCAST::fct_drop(rv$data_filtered), title = "Uploaded data overview", type = "modal")
},
error = function(err) {
showNotification(paste0("We encountered the following error browsing your data: ", err), type = "err")
}
)
})
output$original_str <- renderPrint({