diff --git a/DESCRIPTION b/DESCRIPTION index f5a569933..7349d7490 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -31,16 +31,30 @@ Depends: teal.transform (>= 0.5.0.9015) Imports: checkmate (>= 2.1.0), + colourpicker, dplyr (>= 1.0.5), DT (>= 0.13), forcats (>= 1.0.0), + generics, + ggExtra, + ggpmisc (>= 0.4.3), + ggpp, + ggrepel, + goftest, grid, + gridExtra, + htmlwidgets, + jsonlite, + lattice (>= 0.18-4), + MASS, + rtables (>= 0.6.8), lifecycle (>= 0.2.0), scales, shinyjs, shinyTree (>= 0.2.8), shinyvalidate, shinyWidgets (>= 0.5.1), + sparkline, stats, stringr (>= 1.4.1), teal.code (>= 0.5.0.9012), @@ -54,50 +68,34 @@ Imports: tools, utils Suggests: - broom (>= 0.7.10), - colourpicker, - ggExtra, - ggpmisc (>= 0.4.3), - ggpp, - ggrepel, - goftest, - gridExtra, - htmlwidgets, - jsonlite, knitr (>= 1.42), - lattice (>= 0.18-4), logger (>= 0.2.0), - MASS, nestcolor (>= 0.1.0), pkgload, rlang (>= 1.0.0), rmarkdown (>= 2.23), roxy.shinylive, - rtables (>= 0.6.8), rvest, shinytest2, - sparkline, testthat (>= 3.1.9), withr (>= 2.0.0) VignetteBuilder: knitr, rmarkdown Config/Needs/verdepcheck: haleyjeppson/ggmosaic, tidyverse/ggplot2, - rstudio/shiny, insightsengineering/teal, - insightsengineering/teal.transform, mllg/checkmate, tidyverse/dplyr, - rstudio/DT, tidyverse/forcats, r-lib/lifecycle, r-lib/scales, - daattali/shinyjs, shinyTree/shinyTree, rstudio/shinyvalidate, - dreamRs/shinyWidgets, tidyverse/stringr, + rstudio/shiny, insightsengineering/teal, insightsengineering/teal.transform, + mllg/checkmate, daattali/colourpicker, tidyverse/dplyr, rstudio/DT, + tidyverse/forcats, daattali/ggExtra, aphalo/ggpmisc, aphalo/ggpp, + slowkow/ggrepel, baddstats/goftest, ramnathv/htmlwidgets, jeroen/jsonlite, + deepayan/lattice, insightsengineering/rtables, r-lib/lifecycle, + r-lib/scales, daattali/shinyjs, shinyTree/shinyTree, rstudio/shinyvalidate, + dreamRs/shinyWidgets, htmlwidgets/sparkline, tidyverse/stringr, insightsengineering/teal.code, insightsengineering/teal.data, insightsengineering/teal.logger, insightsengineering/teal.reporter, insightsengineering/teal.widgets, insightsengineering/tern, - tidyverse/tibble, tidyverse/tidyr, tidymodels/broom, - daattali/colourpicker, daattali/ggExtra, aphalo/ggpmisc, aphalo/ggpp, - slowkow/ggrepel, baddstats/goftest, ramnathv/htmlwidgets, - jeroen/jsonlite, yihui/knitr, daroczig/logger, deepayan/lattice, + tidyverse/tibble, tidyverse/tidyr, yihui/knitr, daroczig/logger, insightsengineering/nestcolor, r-lib/pkgload, r-lib/rlang, - rstudio/rmarkdown, insightsengineering/roxy.shinylive, - insightsengineering/rtables, tidyverse/rvest, htmlwidgets/sparkline, + rstudio/rmarkdown, insightsengineering/roxy.shinylive, tidyverse/rvest, rstudio/shinytest2, r-lib/testthat, r-lib/withr Config/Needs/website: insightsengineering/nesttemplate Encoding: UTF-8 diff --git a/R/tm_g_distribution.R b/R/tm_g_distribution.R index 445ce5791..29e7656d0 100644 --- a/R/tm_g_distribution.R +++ b/R/tm_g_distribution.R @@ -61,7 +61,7 @@ #' interactive <- function() TRUE #' {{ next_example }} # nolint start: line_length_linter. -#' @examplesIf require("ggpmisc", quietly = TRUE) && require("ggpp", quietly = TRUE) && require("goftest", quietly = TRUE) && require("MASS", quietly = TRUE) && require("broom", quietly = TRUE) +#' @examples # nolint end: line_length_linter. #' # general data example #' data <- teal_data() @@ -89,7 +89,7 @@ #' interactive <- function() TRUE #' {{ next_example }} # nolint start: line_length_linter. -#' @examplesIf require("ggpmisc", quietly = TRUE) && require("ggpp", quietly = TRUE) && require("goftest", quietly = TRUE) && require("MASS", quietly = TRUE) && require("broom", quietly = TRUE) +#' @examples # nolint end: line_length_linter. #' # CDISC data example #' data <- teal_data() @@ -154,16 +154,6 @@ tm_g_distribution <- function(label = "Distribution Module", decorators = NULL) { message("Initializing tm_g_distribution") - # Requires Suggested packages - extra_packages <- c("ggpmisc", "ggpp", "goftest", "MASS", "broom") - missing_packages <- Filter(function(x) !requireNamespace(x, quietly = TRUE), extra_packages) - if (length(missing_packages) > 0L) { - stop(sprintf( - "Cannot load package(s): %s.\nInstall or restart your session.", - toString(missing_packages) - )) - } - # Normalize the parameters if (inherits(dist_var, "data_extract_spec")) dist_var <- list(dist_var) if (inherits(strata_var, "data_extract_spec")) strata_var <- list(strata_var) @@ -1242,7 +1232,7 @@ srv_distribution <- function(id, expr = { test_table_data <- ANL %>% dplyr::select(dist_var) %>% - with(., broom::glance(do.call(test, args))) %>% + with(., generics::glance(do.call(test, args))) %>% dplyr::mutate_if(is.numeric, round, 3) }, env = env @@ -1256,7 +1246,7 @@ srv_distribution <- function(id, test_table_data <- ANL %>% dplyr::select(dist_var, s_var, g_var) %>% dplyr::group_by_at(dplyr::vars(dplyr::any_of(groups))) %>% - dplyr::do(tests = broom::glance(do.call(test, args))) %>% + dplyr::do(tests = generics::glance(do.call(test, args))) %>% tidyr::unnest(tests) %>% dplyr::mutate_if(is.numeric, round, 3) }, diff --git a/R/tm_g_scatterplot.R b/R/tm_g_scatterplot.R index 96d8d2b73..9eed82d2d 100644 --- a/R/tm_g_scatterplot.R +++ b/R/tm_g_scatterplot.R @@ -45,7 +45,7 @@ #' interactive <- function() TRUE #' {{ next_example }} # nolint start: line_length_linter. -#' @examplesIf require("ggpmisc", quietly = TRUE) && require("ggExtra", quietly = TRUE) && require("colourpicker", quietly = TRUE) +#' @examples # nolint end: line_length_linter. #' # general data example #' data <- teal_data() @@ -134,7 +134,7 @@ #' interactive <- function() TRUE #' {{ next_example }} # nolint start: line_length_linter. -#' @examplesIf require("ggpmisc", quietly = TRUE) && require("ggExtra", quietly = TRUE) && require("colourpicker", quietly = TRUE) +#' @examples # nolint end: line_length_linter. #' # CDISC data example #' data <- teal_data() @@ -243,16 +243,6 @@ tm_g_scatterplot <- function(label = "Scatterplot", decorators = NULL) { message("Initializing tm_g_scatterplot") - # Requires Suggested packages - extra_packages <- c("ggpmisc", "ggExtra", "colourpicker") - missing_packages <- Filter(function(x) !requireNamespace(x, quietly = TRUE), extra_packages) - if (length(missing_packages) > 0L) { - stop(sprintf( - "Cannot load package(s): %s.\nInstall or restart your session.", - toString(missing_packages) - )) - } - # Normalize the parameters if (inherits(x, "data_extract_spec")) x <- list(x) if (inherits(y, "data_extract_spec")) y <- list(y) diff --git a/R/tm_g_scatterplotmatrix.R b/R/tm_g_scatterplotmatrix.R index ec7d4c2b2..073c7700f 100644 --- a/R/tm_g_scatterplotmatrix.R +++ b/R/tm_g_scatterplotmatrix.R @@ -31,7 +31,7 @@ #' library(teal.modules.general) #' interactive <- function() TRUE #' {{ next_example }} -#' @examplesIf require("lattice", quietly = TRUE) +#' @examples #' # general data example #' data <- teal_data() #' data <- within(data, { @@ -118,7 +118,7 @@ #' library(teal.modules.general) #' interactive <- function() TRUE #' {{ next_example }} -#' @examplesIf require("lattice", quietly = TRUE) +#' @examples #' # CDISC data example #' data <- teal_data() #' data <- within(data, { @@ -181,11 +181,6 @@ tm_g_scatterplotmatrix <- function(label = "Scatterplot Matrix", decorators = NULL) { message("Initializing tm_g_scatterplotmatrix") - # Requires Suggested packages - if (!requireNamespace("lattice", quietly = TRUE)) { - stop("Cannot load lattice - please install the package or restart your session.") - } - # Normalize the parameters if (inherits(variables, "data_extract_spec")) variables <- list(variables) diff --git a/R/tm_missing_data.R b/R/tm_missing_data.R index 97469e39e..480878fa0 100644 --- a/R/tm_missing_data.R +++ b/R/tm_missing_data.R @@ -51,7 +51,7 @@ #' library(teal.modules.general) #' interactive <- function() TRUE #' {{ next_example }} -#' @examplesIf require("gridExtra", quietly = TRUE) && require("rlang", quietly = TRUE) +#' @examples #' # general example data #' data <- teal_data() #' data <- within(data, { @@ -85,7 +85,7 @@ #' library(teal.modules.general) #' interactive <- function() TRUE #' {{ next_example }} -#' @examplesIf require("gridExtra", quietly = TRUE) && require("rlang", quietly = TRUE) +#' @examples #' # CDISC example data #' data <- teal_data() #' data <- within(data, { @@ -121,14 +121,6 @@ tm_missing_data <- function(label = "Missing data", decorators = NULL) { message("Initializing tm_missing_data") - # Requires Suggested packages - if (!requireNamespace("gridExtra", quietly = TRUE)) { - stop("Cannot load gridExtra - please install the package or restart your session.") - } - if (!requireNamespace("rlang", quietly = TRUE)) { - stop("Cannot load rlang - please install the package or restart your session.") - } - # Normalize the parameters if (inherits(ggplot2_args, "ggplot2_args")) ggplot2_args <- list(default = ggplot2_args) @@ -1174,6 +1166,13 @@ srv_missing_data <- function(id, ggtheme = input$ggtheme ) + # Unlikely that `rlang` is not available, new hashing may be expensive + hashing_function <- if (requireNamespace("rlang", quietly = TRUE)) { + quote(rlang::hash) + } else { + function(x) paste(as.integer(x), collapse = "") + } + teal.code::eval_code( common_code_q(), substitute( @@ -1188,41 +1187,44 @@ srv_missing_data <- function(id, ) ) %>% teal.code::eval_code( - quote({ - summary_plot_patients <- ANL[, c(parent_keys, analysis_vars)] %>% - dplyr::group_by_at(parent_keys) %>% - dplyr::mutate(id = dplyr::cur_group_id()) %>% - dplyr::ungroup() %>% - dplyr::group_by_at(c(parent_keys, "id")) %>% - dplyr::summarise_all(anyNA) %>% - dplyr::ungroup() - - # order subjects by decreasing number of missing and then by - # missingness pattern (defined using sha1) - order_subjects <- summary_plot_patients %>% - dplyr::select(-"id", -dplyr::all_of(parent_keys)) %>% - dplyr::transmute( - id = dplyr::row_number(), - number_NA = apply(., 1, sum), - sha = apply(., 1, rlang::hash) - ) %>% - dplyr::arrange(dplyr::desc(number_NA), sha) %>% - getElement(name = "id") - - # order columns by decreasing percent of missing values - ordered_columns <- summary_plot_patients %>% - dplyr::select(-"id", -dplyr::all_of(parent_keys)) %>% - dplyr::summarise( - column = create_cols_labels(colnames(.)), - na_count = apply(., MARGIN = 2, FUN = sum), - na_percent = na_count / nrow(.) * 100 - ) %>% - dplyr::arrange(na_percent, dplyr::desc(column)) - - summary_plot_patients <- summary_plot_patients %>% - tidyr::gather("col", "isna", -"id", -dplyr::all_of(parent_keys)) %>% - dplyr::mutate(col = create_cols_labels(col)) - }) + substitute( + expr = { + summary_plot_patients <- ANL[, c(parent_keys, analysis_vars)] %>% + dplyr::group_by_at(parent_keys) %>% + dplyr::mutate(id = dplyr::cur_group_id()) %>% + dplyr::ungroup() %>% + dplyr::group_by_at(c(parent_keys, "id")) %>% + dplyr::summarise_all(anyNA) %>% + dplyr::ungroup() + + # order subjects by decreasing number of missing and then by + # missingness pattern (defined using sha1) + order_subjects <- summary_plot_patients %>% + dplyr::select(-"id", -dplyr::all_of(parent_keys)) %>% + dplyr::transmute( + id = dplyr::row_number(), + number_NA = apply(., 1, sum), + sha = apply(., 1, hashing_function) + ) %>% + dplyr::arrange(dplyr::desc(number_NA), sha) %>% + getElement(name = "id") + + # order columns by decreasing percent of missing values + ordered_columns <- summary_plot_patients %>% + dplyr::select(-"id", -dplyr::all_of(parent_keys)) %>% + dplyr::summarise( + column = create_cols_labels(colnames(.)), + na_count = apply(., MARGIN = 2, FUN = sum), + na_percent = na_count / nrow(.) * 100 + ) %>% + dplyr::arrange(na_percent, dplyr::desc(column)) + + summary_plot_patients <- summary_plot_patients %>% + tidyr::gather("col", "isna", -"id", -dplyr::all_of(parent_keys)) %>% + dplyr::mutate(col = create_cols_labels(col)) + }, + env = list(hashing_function = hashing_function) + ) ) %>% teal.code::eval_code( substitute( diff --git a/R/tm_t_crosstable.R b/R/tm_t_crosstable.R index de65386f2..5783eeb10 100644 --- a/R/tm_t_crosstable.R +++ b/R/tm_t_crosstable.R @@ -38,7 +38,7 @@ #' library(teal.modules.general) #' interactive <- function() TRUE #' {{ next_example }} -#' @examplesIf require("rtables", quietly = TRUE) +#' @examples #' # general data example #' data <- teal_data() #' data <- within(data, { @@ -87,7 +87,7 @@ #' library(teal.modules.general) #' interactive <- function() TRUE #' {{ next_example }} -#' @examplesIf require("rtables", quietly = TRUE) +#' @examples #' # CDISC data example #' data <- teal_data() #' data <- within(data, { @@ -147,11 +147,6 @@ tm_t_crosstable <- function(label = "Cross Table", decorators = NULL) { message("Initializing tm_t_crosstable") - # Requires Suggested packages - if (!requireNamespace("rtables", quietly = TRUE)) { - stop("Cannot load rtables - please install the package or restart your session.") - } - # Normalize the parameters if (inherits(x, "data_extract_spec")) x <- list(x) if (inherits(y, "data_extract_spec")) y <- list(y) diff --git a/R/tm_variable_browser.R b/R/tm_variable_browser.R index 96c58718d..66d116f88 100644 --- a/R/tm_variable_browser.R +++ b/R/tm_variable_browser.R @@ -26,7 +26,7 @@ #' interactive <- function() TRUE #' {{ next_example }} # nolint start: line_length_linter. -#' @examplesIf require("sparkline", quietly = TRUE) && require("htmlwidgets", quietly = TRUE) && require("jsonlite", quietly = TRUE) +#' @examples # nolint end: line_length_linter. #' # general data example #' data <- teal_data() @@ -55,7 +55,7 @@ #' interactive <- function() TRUE #' {{ next_example }} # nolint start: line_length_linter. -#' @examplesIf require("sparkline", quietly = TRUE) && require("htmlwidgets", quietly = TRUE) && require("jsonlite", quietly = TRUE) +#' @examples # nolint end: line_length_linter. #' # CDISC example data #' library(sparkline) @@ -88,17 +88,6 @@ tm_variable_browser <- function(label = "Variable Browser", ggplot2_args = teal.widgets::ggplot2_args()) { message("Initializing tm_variable_browser") - # Requires Suggested packages - if (!requireNamespace("sparkline", quietly = TRUE)) { - stop("Cannot load sparkline - please install the package or restart your session.") - } - if (!requireNamespace("htmlwidgets", quietly = TRUE)) { - stop("Cannot load htmlwidgets - please install the package or restart your session.") - } - if (!requireNamespace("jsonlite", quietly = TRUE)) { - stop("Cannot load jsonlite - please install the package or restart your session.") - } - # Start of assertions checkmate::assert_string(label) checkmate::assert_character(datasets_selected) @@ -1290,7 +1279,6 @@ create_sparklines.default <- function(arr, width = 150, ...) { as.character(tags$code("unsupported variable type", class = "text-blue")) } - custom_sparkline_formatter <- function(labels, counts) { htmlwidgets::JS( sprintf( diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index 8931ba7b6..103a31627 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -111,7 +111,6 @@ For additional details and examples of decorators, refer to the vignette } \examples{ -\dontshow{if (require("ggpmisc", quietly = TRUE) && require("ggpp", quietly = TRUE) && require("goftest", quietly = TRUE) && require("MASS", quietly = TRUE) && require("broom", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} # general data example data <- teal_data() data <- within(data, { @@ -132,8 +131,7 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} -\dontshow{if (require("ggpmisc", quietly = TRUE) && require("ggpp", quietly = TRUE) && require("goftest", quietly = TRUE) && require("MASS", quietly = TRUE) && require("broom", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} + # CDISC data example data <- teal_data() data <- within(data, { @@ -179,18 +177,18 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} + } \section{Examples in Shinylive}{ \describe{ \item{example-1}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsBISqDC0ogT+uLpetHCk1Ky6ALz2Ts62AGTpuu7Rvv6B6BFR3rHxSSkuGVk53nkBRCbkoqRF0aUJyQ6VupnZnrVwfmAAsgCCAMrjrSVxHRVpPdX9PoP+TEREMNMxs+VdaUoAxLpSEGrUuvxQpFC6cAAesKgiSlc3BsZc1AD6b1A2r2utyMugA7rRSAALFTsP6REBKXS6HyhD7IxihJQAX0UECUaFQaJUEL8ECRf3KcMRuj4QhEonKdGapKRSNIMG+El+oVIGPogk01mprMuPO+WhYlKB3wevPUpG+olQcAILJFrL+0Hg5X8KNEEWF6tEcBEGnKxtNCqVKvYEoxUHoIm+BEhRFoBDEQz1-jkkX8AAVYtwMAAZCgSKE+w1I3Ei2O6XG42gmXTsFTkZiWHQ2WwIsm6UTQiCsUbodgEgAk3kileNjB0jFxWKUYCxAF0gA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6urSMtKJxVTWiSgC+ihBKaKj1KnnsFf4ZugC8A0G4-XxCInUjdKKkfRCVlaQwiRLJtaQ19IKa1v3L-luJWizDo1CJYdvqpImiqHAEi0dHKdDwFwpg1bU-4yWb0qojgIg0F1B4Puj2e7DONSg9BEiQI+SItAIYj6v0aPzkpR+AAU4EEeAAZCgSAr4w7LNpHBm6NptWgmXTsFTkZiWHQ2WzlIGiQoQVgAQXQ7E6ABJBLRSjLQYwdIw2s0lGBmgBdIA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } \item{example-2}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsBISqDC0ogT+uLpetHCk1Ky6ALz2Ts62AGTpuu7Rvv6B6BFR3rHxSSkuGVk53nkBRCbkoqRF0aUJyQ6VupnZnrVwfmAAsgCCAMrjrSVxHRVpPdX9PoP+TEREMNMxs+VdaUoAxLoAwgAiAJLjJ7r8UKRQunAAHrCoIkp3DwbGXNQA+l8oDZPvdHkZdAB3WikAAWKnYQMiICUul0ozO4wAMj9dH8MEDEIhGBjsUoAL6KCAAKyIKn+AGs4KxRIiwbYIfw4CYoMJSP8CPxQgR-rT6UyWcBoPBWUC5ABdJRKLQsUQARlxBFhdIIYn+ojgIg0cH4fggaJVjFoUHoIgF2toutlYOAwH8pKx-nl8siBCGoywwyK-hOAHlHAA5BwATWDYHGzgAGv45HJcKjdAajeR+OUI44sZ6IFSlGhULiVDCzWigeUkRm+EIRKJyo3hGJq2i8TB-hJAaFSFb6IJNNYM13bgP-pa62D-i9B+p+aJUHA-eOJ7cwdK9Ml3ZjPXgNxOs2vSOVTxp9av1+bNxOtTqxOVLdbbXB7U-nQ9XfuyWBvV9f0AHFXDwXR-AAIWGLAAGksDVFM02PTdLxzcooJg+DEKPO97zRGA+Vod5d10AAxUYsQTdM8PwkxaGeE1ygoqjXFoicqXvZD2MzRcHmnFhZ34hdmCvFc107e8gR3DCwA9CIULRejqHIRhymU1TrwkxSu0tFtkj0tUaPwrtCJU4iRD2VIdM4zduPvCRGCIQRUAEtTkiBednkXMSb0kzdpNgUi-0PYy6NoFSZHUiLNPE28TItVUX1VIydIIoiSKslwbJQ2y0VsqkqVoExdHYFRVKXbRBlTXQUTvUR4QgVhRnQdgywAEm8SIOoNRgdEYKlySUMByXlIA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXQBBHwCAGWTdVIxMxERGRpalAF9FCAArIhU0gGs4VlEK3Nt8-jgTKGFSNIJ+WlECNLGJ6dngaHg5zLkAXTcILRZRAEY2ghLxgjE00TgRDTh+dlqujujFoUHoIk2r1o73OuWAwAUYD6zURl0uVQIAKRWAAsoiqoivAB5RwAOQcAE18bpEQFnAANRFyOS4QFfH7kfi6AC8ulJjmaKIgwyUaFQbRUxQBEDqmR5IVyrJluj4QhEonlquEYmldTqpBgaQkGR2pBB9EEmmsgL1IVNaWB8syaWiZvUG1EqDgmJttoV4VOel5iOR+N9tvZ3tI8sjGk+Xp9yr9epebzE8uBoPBcEhadh4XhIaaKLAaIxWPqAHFXHgaWAAEI4rAAaSwDyZLPDftjnPliMbLbbYaTyZV61ocSDugAYvVmnSlaO9SZaFE-vLZ-PXCPbcNk52d7pRG7wg6WE7ci6om6457vbrR5lA32kcXh0uV9RyIx5Z-v-H7y7W1gQ1XkQIeRclzHL8JxEeUHBcIDdD3P0D2TCRGCIQRUDPH9eWdV1mFvBMH2TJ9YCnIt+jwJC-xkX9aC-GQAMTKCgXuDN7ggpC6hgcdJ3gpxtyXFDd19FDhmGWgTF0dgVG-d1tDgGxbBqZVRDKCBWHqdB2DFAASQRaCqAyvkYHRGGGAYlDAAZLiAA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } } diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index 3e961928c..ed2968016 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -127,7 +127,6 @@ For additional details and examples of decorators, refer to the vignette } \examples{ -\dontshow{if (require("ggpmisc", quietly = TRUE) && require("ggExtra", quietly = TRUE) && require("colourpicker", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} # general data example data <- teal_data() data <- within(data, { @@ -209,8 +208,7 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} -\dontshow{if (require("ggpmisc", quietly = TRUE) && require("ggExtra", quietly = TRUE) && require("colourpicker", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} + # CDISC data example data <- teal_data() data <- within(data, { @@ -293,18 +291,18 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} + } \section{Examples in Shinylive}{ \describe{ \item{example-1}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsBISqDC0ogT+uLpetHCk1Ky6ALz2Ts62AGTpuu7Rvv6BzgAepMwRUd6x8UkpLhlZOd55hETURIKMqLQEANYyZdGVCckOtUoAxLpSEGrUuvxQpFC6cIWwqCJK84sGxlzUAPpbUDabC0tGugDutKQAFirsR5EgSrrZno1w7NOipMStjEUEDeAGEAPIAJh2unBEKUAF8gUo0KhoSobn5gXMztUnq9dHwhCJRNVCcIxJi3m9SDB9hJ9mEFuQOq1SJSqW9qFB6HBZsl-ABlAhMmTrIikGG3IhdMQRfEcwq4s77FYldSkBmoOAEdkct5HaDwar+WFyrF63SiXnaiXJK0iDSa7W6i26Lk8vm6QXWjS6LQsWjckSIM2uqkEKUyknJf2MQP0ET7CPSggUo7AYAmyH+AC6OciOv8xAsZX8glQi16-jkclw8td9ptcH4xuaJbw9YtMGEmnWemSADEAIIAGQFzjr5tdJlohWb1WHY9cU45QIttc7uiG2MWKuKzEdoi1hZXVINsH7XrApo7p7ejd9dp9GqPzs3HPdvNbAuffoDQbgENbzDN5kyjapY3jRMwNTURHjODMszhMA8wLPw23CPAr3LSs4GrDc7ypB9yBbfkwBwqAq2AkDu2oXsRAXUdx0nEDTFnedByY5cwzXPUCItf4iEYfZ6G3I49zVQ9jxdDlzyNMibxYhtfyfB0X2k98qU-T1vTUv84wAoClLDGCxAg-8EzgJNI1gmTXXTTNr2zFD800jlCzAAAFLkyFLMA7FYLU-LsdwFngXysKLEhMMiMsK0ovCwF4njjOUtSON0AA5RwRxHVKux7Wg+0Ypd8r1Gc51I3RF3HTTkqpfi9VEWgAC8rNEpVd1VA91LfQi5MvJDQzSm1qmIp0T1Y7Tv1-SDDOGkybLMmMLOgpa4IcoaXLQqL21i8j4qomsyo5YiMri3CFtdWj6MvGqJzctjKpK2rCPqt5Go5RgiEufYTHUWJOqgCSeomuz9TOQ1Bqc5CTstFT4bUsHHumsifz0ubLKMx7TOjfSoKs3H4MWRCYdzfNdA87yoAi-aAqCyL-NCmkKFIfC4fvZ8Muy3KOYJQris40rHoqjL7rqzdPvDFo-oB20d2B7r1WR-rIYvVtFM04ixufFWpu5L80dm1bAKugT1vMgzLOslM0wQxyb1Qyn0Op2mr3pxK6eZ8K2aSqWLTOqqebyx6bqKhiheYkX2Kq8W3sl+teKBIFaBMXR2BUZl1W0L4a10F4sVEe4IFYId0HYFEABJvEiKurUYHRAQRJQwHhHMgA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlQDCAPIATHG6-QNKAL5dSmiowyp57BX+GboAvMtBuEt8QiKia7o7wmKL3ZW6pDCJEomiBIHkjJFEpKfn59RQ9HB+6wpgAGV7qRHs9SCN8kRaAQxP8tmd3qEDilEmFSMwNLdUHACG93ucUtB4Ad-qM4Ut8bpRD8ceD1tSRJjRNjcRTKbpPt9frp-gCaRpdFoWLQviJEOSEeyCJDoWIDkLGCL6CJEtKoTDRMUMsBgKTBv8ALoG0qswgkAhwnlgQSoIIAazg-zkcnh7PODNpcH4JLNFglbsqMGEmkienWADEAIIAGQBzldAZMtFCXoOUdjrkl7y6lJdbMqrGRGVRoXR6lIWJxeMphNgYatZLw+fd-LpVNbldZWfxnJ+Pr5jPBCqVYv9AbVsv262HorgqplGq1QR1erGYCNJsWvoteCtNvtjrAzoTbo9GlTf2ttqgDrHbqD1BDIjTMbjJ-ZSZT3ojr8zbpz+J5t2bQdIk9CFusKJohiFbMlWzaVLWxKXo277vGebYYZ21bsr23K8q2grCrO4pNt27wThq8rEcqc6UScCH4ikK5gI2G6MRRW4AAqfGQlr-HYrDYvxYB2NUgTwHxu7-MQfrSVeB5OhxuhAQG7aDheugAHKONG0ZofiD5PvW6Zvspn6aaZf7sgB2YGaItAAF5zuBRZBCWZZMiyOHvEh9arne+IYQcWFwV2al4f2hEzrRpEGRRC5ytONEqvRmrMbqrH6uuxq6Kask7qU-z7jeh7HspGGacV163mRalGbQoYvhm8XnBZ366FZjG2ecqn4owRDZIkJjqHAbZQaWMHYYxfk+qhjHBfSHZhT5PZfH2l4DrSRGKiRgWUml1G7bR87qicGUBTlm7-DxUBSUVolCYeD1iXAEkUKQTp9aeraaTpemtYGwaNc+P4teZyaWb+3XNt95xtMNo3jcW0HltN5EbHddZzdlrWLeptLoxF634YC0UpXAcXKYdyXHaliXpdqmVsblpq3fdVqCcJ8mve9UnlRjlSVR1-36cpDVNWDZmC6YkMdV1GM9ZUPUAV0XS0CYujsCojzltocA2LY5RnKIhQQKwkboOwMwACT1KUtvUowOidBMShgOMBpAA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } \item{example-2}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsBISqDC0ogT+uLpetHCk1Ky6ALz2Ts62AGTpuu7Rvv6BzgAepMwRUd6x8UkpLhlZOd55hETURIKMqLQEANYyZdGVCckOtUoAxLoAwgAiAJIAypO6-FCkULpwhbCoIkorawbGXNQA+vtQNnur60a6AO60pAAWKuznkSBKutmejXDsEDEpGIrUYigg3wAgtN5gAZQ66Y4Yc6IRCMaFwpQAX3BACsiCoTr1WKI3tdbLd+HATFBhKQTgR+KECCd8YTiaJgNB4KTznIALpKJRoVAIlSPPwQ5bXarvL66PhCESiaqK4RiSXfb6kGAnCQnMKrcgdVqkTVa77UKD0ODUar+eYEI0yHZEUhTJ4EghiCLyi2FWXXE6bErqemiVBwAjmi3fc7cvTJfwY2G+qWx3SiW1R93JLMiDQGyPRv0Z3RWm12pNgebZjS6LQsWjWkSINNlrUET1dMTVRuMZv0EQM7ve3nXYDAZMw1Ngfn8yIlsCQgDirjwun8ACEALJYADSWAAjGVt3vDwAmfxyOS4UsZ-M5uD8e3LtftjsKum0HaJ3QAMUhWF5mcO90zLExaEKZ9qkA4DXHAi1wQzW9710IZpTWYNimYQsIyjGNY3jWA-2nTE8DQ75H3rPM63DYtCIzCtbVfWsC3dftB1bD8Oy7L1e2STiWzgEd+PHNZJzI2d50XPw33XSIzwPY9TzAXdlKvMAbzAz9MzomDq3Uw8TwoxDYxgb9f1goCQJ0z9IOgl9kjgkDKN0ZDY1QsyQSIRgTnoDDzmw0M8IYtziPgV8Ux42NqNzPT2KLAi3Mta0WOrNicwbJthLbUzdL4nsVUEnKhxEwqx0Ystzkk5cZ38GSUs7OTVwUzc1PPFSNyUy9VKwSFJja-wsGcFdZgAeQAORMjyOy83S4oM3RJscWFYTsjsLOoTQrOcmzQKahylpchC5rQ+bYtoAAvESAsDLCQ1w+jkrMuNrgTKL6vyss4uqOKkpLV6tWYqt2sy+shLKvKNrLCqBOygdhNEoqyQkqc6vImTdCXVrVKMrrtKaxanPa3Hvs2yyRGs+CYYzI6SZOtzZq1C6LUYIg7hOGlvXioLHrDAGqretYPuraLydiui-rowWmpB1ipch7iJYzOHioRrjytHDUavR8WsaXfHNMUsB+sGvrRom6br1Zn79JJla1tp8zKb-E7nYtenqdcoHme+W3vhBLn1Fie6oGCp7ZaBiLSIx2cPYSrLaMS-DAd0+WMsV0rlYTwPtfVpWtbE1GoFq-WF2xuSjb6gahtNy2ppmgPJfYpbHfWpqtp2qm9ppw6oOO-amfO0sPPBcFaBMXR2BUY0w20f4b10T4pVEF4IFYSF0HYEUABJvEiPes0YHQwWxJQwCxfkgA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjA0hI0ncwuRGHEiKR0ZjMdQoPQ4NQkQowAECASZMTSN4ShsCGJ6TCMeSokjMmloqRmBo8ag4AQyeTMZk3npIfSFqMeSDZbpRDSpWzIVqROLRJLpeqNbpKdTaUqGdqNLotCxaFSRIg1XyzQQObQuYjIQ7GE76CIrl6fQdwsBgMqRqqwF8vlUTWBBgBxVx4XT0gBCAFksABpLAARh5mbAuYLWAATPS5HJeWbMfqdXB+HTk2m3Y26jALrQ4ordAAxQajALOBvdky0KKtpEjseud3k-oa+umuqsQW5YVRUXqS5GqUyjXy2CD6OLPAbpu23Wau8S4838kWmntgJ3+2O51wV3X5dZU9TkxCRf1A2DYDvTRTJI0vWN40TYEO3TKpszzQsSwzdDKxrMA60nRtmw0OdrQrTCu27XtqE0Ad51HcdCLNadZzbSEF3HF9dFXWV10A7pejSegt0hIURTFQ9jRPWUz3gdsVUojViPvZSnxNQDXypd9rU-A02XA39-yYjUoJ9MCfyDOAQxA-YuPJWCo2TGN6UQuzMSTVNULLcji1LHDCzwtCwCwQYvC8+ksGcFM-AAeQAOSwnjGz47sHz00jdDixxRlGYzZWo2iRHoxc8vJFiMo4pdkpvFLZVEWgAC8rOE7dwl3fdDSkrjZIvJyr1KtKdSRVSj3U1K3ytMtdKGgzLKMtzTNAv0LMg0MYNyOC+oQhNdA8ztsPLDDfPw2qiLvDLlX2gaez7Oj2IYic3PKtjhweriksxU7MUYIgCjSM4uXvMS9wktTpPs3IFXk5yALOvThsfUbwdlCaPy-WaXUUj01t9b8A1-azoI+DbHIUuMdqTHzArLEKwr84KotihLay+pTzperKcuu5FbqK+6SqemcKrejTuJqvLun+9Q4CBndxIPMHush89of6rjlIRvTFdFupUZ09GVr-LGTJx8z8cswmwwc+CXIp5Cqfp2nwoZ6L4sS1m6vZpFOdytyCv7PnXoFnXTCFl7KvemrTR4-p+loExdHYFRCQPbQ4BsWwagxUQyggVhBnQdg0FQAASFoqmLkutUYHQ+mWJQwCWL4gA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } } diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index 582d08917..b9385c235 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -67,7 +67,6 @@ For additional details and examples of decorators, refer to the vignette } \examples{ -\dontshow{if (require("lattice", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} # general data example data <- teal_data() data <- within(data, { @@ -149,8 +148,7 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} -\dontshow{if (require("lattice", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} + # CDISC data example data <- teal_data() data <- within(data, { @@ -201,18 +199,18 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} + } \section{Examples in Shinylive}{ \describe{ \item{example-1}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CmlCkmgRw-ri6XrRwpNSsugC89k7OihAAxLpSEGrUuvyBULpwAB6wqCJK+aSFRrpc1AD6VVA2lQUGxgDutKQAFirszeEgSrq6xOakjFGiHXkFGCbM8H4QY2O0-AnjfmAAIq54uv4AYlhhx2AAknYX-s4AyndgAAq3R-4A4ucfYAByABlngAhQ7hfwAxzPACC7zkuFG6wkRB0jAg8DI2xM6lIREYq3W6wI7AATOEyboKQBGcm03Q0+nhBkk+GIwnUKD0ODUWaJYn+ACyJBYBF6rGeWDgqEE9DoBH8qUJrLW6w5EAkgigUga2JgtFiWJxeIJhJ2DIAzOFLbprdbqUyrUzlabdByuTztvywJ8ZDAoMp5b8ABLckQBiVEP0WUJgRXrZ3rVBEaUczQkT3sAAc1oAbAB2cI5gAM4QALAX6SX6QyqRWqQyixgc+EAJwJsYsOCFPnsc0AVgrfb7FqLDL7Rb7rep5oppZH5Kb4Wz7cy-FQGfNGFLC4rJIwNa34Ub1sbFMbFcbk90jYbW5X-Dg9FIGb3zIwdsPlMXX4-25-C7-PdfzjONRG4MQ5maRZljgE0Ni2RIqUQccERVMYJjINgGk2bYwJgcpYLZIldgOZ4zmeG5nkeZ43meb5nkBEEwUuSEYThVCXVEWgAC89ESFCiLGdxynUPikhcIiV1YLtGFwvFSHYPCCNJUci0QEkiw08IUN0YSORCbYHBcOQVx0CBBDEpSRHYL1RD9ahqGeeB+FoQQYGeDlGCkZ4SDobIFW0qs9NEwzkhXAh-RCBy4AQ3QrNg4kjOccITmhAEHhSQLwmCgzEiSlcvH9TRSDiRI0TxGB2B0qkiyrDTwqIURSF5XSIAqqqq0zOqixXVBGCIEwem2crGEqnStMrEClAAX1SAArIgVAaABrOBWFEQYClsWoFqW1b1pNXaIBWtbdgwqYZmec7pjEZ5NgCxEjpOjh-DAkRRGeN7bt+e7Yw43Qnv2s6iEmG6Pt+L7wfCL1fu2fxrtYbD+AVVJUiUNB11qFQehNZptiGRE+CEd7tiJ4QxDguoYAaCQGlECKghkcoiFIP0LuKSmxjdbk4bAB4GfIRhmefNnpmKMJBN0LQWFoTkScSOgms59ZmgaEophxOnUDgfk0JdeZqmgeBeeuy68ElwlRG5HXn0SK2RA0LWdeVl1udyRJ-Aea2NClmW5bERAJb1-Xxl6RaQha6Xpn9hpRXDinmmAYB4ZBzCzYAXXTlcQ-tm2YozfxOygZ4JDXZ4HyfB7g-1mBhE0AjQpcf6Q7GPEH3cWKkublvBuKfPElS9LXGrpULd0bOVYKNXig1x3RG13WW4N-1YDE17wKhsexkG6hBaxfVBadxel9dTkeY9vnvefKPZdlOBA-NkfTSjlqU9BxHfu7kO49oCPtml6gFlY5h1-gnAoSd17vX8JncEhBU5TA-sjP6W91i5w0P3HY-hSK-HIr8SivxqK-For8eivxGK-FBM8VivxYRVxProWuu9aANzyskFBE9LZX1wlfI+LtTRu15l7B218-Z31EA-L++sf5-0SDfGO0iwHVAgWASG0D07Q12IVMgPRxS-GIE1KGlw+oDR6CjSRnEr4YK9Fo4qujYH6Oas8Yxg1SB0JPow+uIhG7JRQa3Rg7cMFd18aYWgfdYqDwyuwsecZR56ymhAVItATC6HYCoQWOJtCwRMroEYKpRD9AgKwaE6B2AYwACTeHCOUq2jBUSpGmkoMA0105AA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6usTmpIy0YnH+GRgmzPDsFZW6tPy6ALxVHWAAIq54ugpgAGJYk6WTAJJ2cxNgzgDKK5MACsvjkwDis-tgAHIAMltgAEJj82DnjlcAgntyuJ2VEkQ6jBDwZH6pnUpCIjA6EC6XQI7AATKV4bpEQBGBFo3SojGlTGw96fLrUKD0ODUURAmGTACyJBYBHyrCuWDgqEE9DoBEmikhXTx3MqhIgEkEUCkiRMsFo1FYQPFGjBEKhlRhmIAzKU1boNRqUdj1djeYrdITiaTyUMDjIYFBlByTgAJEkiG2MohWixwTn4g1dVBEFmEzQkM0ADg1ADYAOylMMABlKABYoxi4xjMcik8jMTGMGHSgBOb2VFhwYIDGEqgCsSYrFdVMcxFZjFfzKJViPjdYROdKocLXn4qDNKow8a7SdhGDTI9K2Y12cR2aT2ebumzWZHff4cHopDNE5xGG106R3ZPR9HZ67F4n565lTvulE3AaWRSLTacAVXR6QORiEbHx8lURA1GwiQ-gMT4wJEn74kqQyjFcMxXEsVwbFcuxXEcVwXFctxXI8LxvIBhqiLQABeegDABcG6IwzKEgQVH2E4rhAX2rAlowQKiGCpDsFBMFwvWMaILCMbiaUAF0Qx6jMQ4LhyH2OgQIIzGCSI7AUmAohWtQ1BXPA-C0IIMBXISjBSFcJB0D4nJSSm9GRHJQIKc4fYENaTH6XAvSQREmkwm5pRTM85zrO5DmlE5jHyaxfYAI7CmQeTSgMfxgjA7DSciMYpuJHlEKIpBkulECZdlKbBvlMZ9qgjBECYeRAhljBZdJknJg+XIAL5cgAVkQKiJAA1nArCiMUGS2Fkg3DWNE1fnNECjeNQzVGQdRiFcG21PUohXD09mdMtq0cJMT4iAdJyXdtJxHWA3qnQt60gZt+1XLd12lNpD1ApMu1gQ9SlKFyShoIOWQqHkX4pECJSdHwQhXUCSPCGIX6VKQMCJBIiSiJ5pDkIwkRENjgR1KEmMEkSJL-WA6yE8TpO7lae2hHMtFaCwtBEijAx0MV1NQikiRhLUIL46gcAUkBhopNA8D04DH14LRUKiCSMu7pBWsaFLMvC4aRq034AyTOseu7tzdR82IiCc3Lxt0kNTGlboNu82ycCJC7tBu1NQTAMAANvXtd0ALoR32xuPlbvlmpMxZQFcEgDlcW47sdTuGjAwiaDBrmsSRsddGCW70X5LEuCXpemLQoQJwMoXhWxdcPoaMddKL4vMProjS7LdcK7AzEXc+33q10TXUMTMqSsTBtD3XJsmvTlsiBoHs83bDtqznio2+7oegaw4H8I7K9VPkrsNAM3PUGpvs3-7GMpMH49XZMUf3IDZ-A7XUumtN7kCrtpRCJxkInFQicdCJxMInGwicXCJx8InEIicV42cr551nrQQuAw3JT3vIA0iVseJWyXkbQ0xo6bmwZuQz2dtRB71Ic7F+bsgRMO9s-W+k134hx0hPb+EcfpDCStaTQpAGQnGIMVb6qx6qNTyJyLuZCQFN0GJMCRKVpE7SKiVK4SimqkGwSvXBBcRBFxrsQsujAK6aOCrYyoTVG5VxbhFWxHdFTePvF6ToXIuS0BMLodgKhiYgm0J+JSZROiiEKBAVgzx0DsAhgAEkELQUo6TNaMF+L1JQYAeoRyAA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } \item{example-2}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CmlCkmgRw-ri6XrRwpNSsugC89k7OihAAxLoAwgAiAJIAypm6-IFQunAAHrCoIkolpGVGulzUAPr1UDZ1pQbGAO60pAAWKuwd4SBKuroAgtn5ADK9zXDcGB2IiIxzi1Oz2Vj5yy3rpZvbB-lKAL6pAFZEKq0A1nCsomOltk38cCZQwlIrQI-FoogIrQeT1e72A0HgHw6cgAukolGhUMsVIM-BBph0EsVSrg9nwhCJRISycIxLjptNSDBWhJWuDAuRGDUiIzAoxaBU6fTptQoPQ4NRCf58gR2TIuaRdDBefywnshVoWLRRRTCXRRKRBUL8aVWpVSMwNKzUHACIajcaGvC9Il-DsFqq8fb6aJxTaFYkfSJLaJrba1V7haLxZKwPlfRpdBq+dqxIgPRGhQQho8QpTEkmtfQRMDs7Rc58GsBgK75u6wMjkXISZ6M7pA364PxCWGwDMAOKuPC6fxYGaZQfhKXOAAa-ib4YjMEBtBqzqSLmbremREYv3cXcSDg3C69Jn5ncJADEZgt8q4W17UhH5w+hR1TRVzeogSGbXb7R0ToxnMhzphmZ7UByhIQRyVp-ie9oimKEourG8YKhQ-CoI8ZCiGmeAIUaSZ5roPYAAozKOACyORhMOvYAGoFLkdhzpuW5ZjmYiEhq1CCHAJZcYipRVjWoH1si4TkZRMw0dkdGukx+QsWxpF+GAFHUQpjHMaxYByC+W5tuhF6obkAByDHOHYujGM45nZLoADyl66BZ2SOJkdi5E55lga2S6QSuIiEke96toZGbtgmAboXBYavl6SHRqhcZBgqBYpnh-kZpxZbcfmmopoJ+XCZW1a9pc-gNpFrbReQB5qa6A7aTMDE3q12QAJpsYRQqBZoq6hck7Gtjue6meuzijeB56Ndet7hRmT6PieK3TCtqSpLQJi6OwKgct+2hwDYtiTJ6ogjBArAzOg7AYgAJN44SPT6jA6IwqTXEoYDXMiQA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXQBBHwCAGWTdVIxMxERGRpbahp8sALaOrp7G4aUAX0UIACsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI0xeW1jeBoeE3MuQBdN2h0NpVi9gHM3QAvCFcrgBnwhCJRIDdODhGJfhA6nVSDA0hI0hcwuRGHEiCiwoxaFEEUikdQoPQ4NRoQowAECFiZLjSDCCUTaaDEaTdFoWLQKZDoXRRKQSdy6pk0tFSMwNBjUHACGLxRLcg89EDaX1mhyBirdKIqYqWUDDSI5aIFUq9frdOTKdTNXSjRoeXyBWJELqubbdAQSksCGJobzCR6TgHaEGnrlgMAtU0dWAXi85JzfXUzca4PxodawPUAOKuPC6WlYepeEtVWkBZwADVpaZt+pgR1ocQ19icznTGaIjD2jBz0IcLj7vpMRJHQIAYvVmnWW9y5vrmz7uZLpbLjpbFcqVZl1TSC0MAt7J7RqNjoVPrzJ5fvl+L7VSTwEXSyKPxUEsyKIvTwZ9uVDKEgXzAAFeoKwAWV8DkywLAA1QI-DsJsJ1tf1A2DIFeWoQQ4AjHCY3COMEymZMXiqSDoPqOCfAQrUUICNCML9X4wCg2CmOQ1D0LAOR1wzA1PxnRC-AAOSQ5w7F0YxnEknxdAAeVnXQpJ8RwvDsPwVMki8Mzba8OxEUce2AuphNtLNXVNT9H2tDd9VfR1EI-c0WVDfl6EhQDMP1bCo1wt0w18oigujLYyPjU9KJTazfVs8hc3Azii2rRD6iQhdeMaABNDDLKRYzNE7czx2KuoByHcSx17KrTGnVLdHnRdXGcldgNXLqNx6uY5loExdHYFRsXUTQdBsWwai5UQyggVh6nQdg0FQAASQRaCqNb1sNRgdEYOZpiUMBpheIA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } } diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index 86517c88c..01c51466f 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -95,7 +95,6 @@ For additional details and examples of decorators, refer to the vignette } \examples{ -\dontshow{if (require("gridExtra", quietly = TRUE) && require("rlang", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} # general example data data <- teal_data() data <- within(data, { @@ -124,8 +123,7 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} -\dontshow{if (require("gridExtra", quietly = TRUE) && require("rlang", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} + # CDISC example data data <- teal_data() data <- within(data, { @@ -144,18 +142,18 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} + } \section{Examples in Shinylive}{ \describe{ \item{example-1}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsBKMtPzOAB6kzP64ul60cKTUrLoAvPZOzrYAZJm67rG+-ozUUBASUTHe8YkpaS6KEADEulIQatS6cKGwqCK6-FCkUEr9gwbGXNQA+iNQNsMDUGO6AO60pAAWKuwz0SBKurme3r6toqTE1ESM9fu6UPz8k9CiS2YWmtahtnsQBwehwFE3RE7FEnkm3BIEnYX2iJkuV3YIlKGxhtgAVLlzLQTOwAIzRDAABgArIS8QB2OTUgC6SwAcgBBW7-W4AXyUtx8tBeRl03NEtxg5xYvOMwoIos5v35QVEwDpfOK6ES7AF0Xuj2e9QOEtFCqWyp6HD1jFEGoeTygoh1ulN8uA-gIrGo-hpiuM1owJnUpER9uAjsILrdNNtAaDUhYoaWXp9Gn9IrNgf8UcYofqbJu0HQSxUaz8MpmNR2QoEwjENT4QhEokLf10pBgkxgPNEKgk0wWcxl9XqON0atUzEsOhs31uok2EFYjPQ7DQqAAJN4Negl2DGDprkoORAwGyaUA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrquuAAesKgiuvxQpFBK4ZEGxlzUAPoxUDbREVBxugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQFbpQ-PyJ0KJZZhaa1gG25RCVlQHAosEi7KK1idwkEuyTpSbtHewiEBIF27YAVFXmtCbsAIylGAAMAKyPdwDsct8AulkAcgBBHpzHoAXzcM10DVowyM0MYsJ6MFaLDhxhRBDRkMqMNEwD+8OoaBCHDxpT6AyGXUqmLRBKyxPQ1A4dMYogp-UGUFENN0bPxwAUhFY1GFP0Jxh5GBM6lIBwFwCFIrFYAlfMVyqkLHFkt64llGgVqPZSuF2sYuq6YK6ShJWRUeXYPRSugAvGEMrhkQJhGJ3fzfSJRM6oZVSDBEjBYaIVBJkhk0lCul0brp2CpyMxLDobFMeqJChBWID0OwSQASeoU9AV1aMHSdJQQiBgME-IA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } \item{example-2}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsBKMtPzOAB6kzP64ul60cKTUrLoAvPZOzrYAZJm67rG+-ozUUBASUTHe8YkpaS6KEADEugDCACIAkgDKzbpwobCoIrr8UKRQSiNjBsZc1AD6k1A2E6NQ07oA7rSkABYq7IvRIEq6uZ7evhBipMTURIz1pwCCrZ0AMuuzGIuIiIwv7xOuheWE663+rVBSgAvvUAFZEFRzADWcFYogOq1sRmGcBMUGEpDmBH4tFEBDmCKRqPRwGg8AxizkAF0lEo0Kh1iptn4IKdFjVDkC+EIRKIaiLhGJeadTqQYHMYGTRCoJAtVss+bp6vVaCZdOwVORmJYdDZbMctaI9hBWE90OwOQASbzRZ2iGQ6B4wpRgaHMoA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dOAAPWFQRXX4oUiglGLiDYy5qAH1EqBsE2Khk3QB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGXzUjEzEREZhsdrdYawA-LmfFaUAX36AKyIVNIBrOFZRCtzbI2i4EyhhUjSCflpRAjT9w5Oz4Gh4c8ycgAum5oOh8ipiuxFpldABeaK5XCLPhCESieG6VHCMTQgZ1XSkGBpGCvUQqCQZXLZfH9fq0Ey6dgqcjMSw6Gy2Gr40RlCCsQbodhoVAAEhaVRFotEMh0fW2SjAWyBQA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } } diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index b44c4ec94..e45c5938e 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -81,7 +81,6 @@ For additional details and examples of decorators, refer to the vignette } \examples{ -\dontshow{if (require("rtables", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} # general data example data <- teal_data() data <- within(data, { @@ -125,8 +124,7 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} -\dontshow{if (require("rtables", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} + # CDISC data example data <- teal_data() data <- within(data, { @@ -172,18 +170,18 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} + } \section{Examples in Shinylive}{ \describe{ \item{example-1}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsIykUPQiov64ul60cKTUrLoAvPZOzooQAMS6UhBq1Lr8UEG6cAAesKgiSgVFRrpc1AD61VA2VYVQBsYA7rSkABYq7M0RIEq6ujCkBCyinRNTM2OmRIy67Fq6KroEfoSs1OG6-lpheEcoMIf+Uiz+crajEOPjk9OMosDAWgC633NQ4hM6lIK3Yrxmnx+3zS4wAvktwe9Pv5UIxaDAWKwGgBrOCsfy-OaiTwNEQQdgQRhELpghbve5KWFpABWRBUOLxoiG7VstVZ7NxrC5-IgHI4-kRpwiErpUvOqPRmLFdzSSjQqDmKl6fie+XaiT1QVwCIEwjEBr4QlCOuedRgDVIDQIVNEoiCITgNttumowTgeSS-gAwi7ZnZgpU8EtbSUDc0GqVSMwNA1RKg4Dto97mtB4AaZW8pVnbcSRBoDaWM460xmvd7nr76P782AAMr+qu6LQsWgRuCIcLF70EPpsgjmpLdtF9p2j2jjrnNZFgSUE74RTN7A5nY5y-ywK5gG6MFXG3X18aVjRwfgGzcEfaH493M8X54wYSaCp6JIOFyvt9dBWfgZBvA0-2cAC3xMWgSjApIADEAEEABlW1cc9vRhLCoOeeIknjRNk2rdNM0w20c1gH9zlXKNyOeK9SArDsUxrMjAJ9P0A3OdsyyYqdew9Ac6I4kcxwnLsexnMT5zEbkgmXWjfg3XYH23aUwBOQ8Dx3I84FuMB7lw+tGPg84tJEwCP2oL8RANZC0MgodbRguDb0Q1D0Oc3RsNtXyfKWNI0loEw1hUchiO0T17l0R5LwGCBWCQ9B2HVAASbwInS4lGB0Rg0nhCAwFhb4gA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6ujCkBCyicVU1dRWmRIy67Fq6KroE7AqErNQDpQNaoiO6A7CTA1IsA3K25RCVldW1jKLAwFoAunsNUOIm6qRt7Bt1O-t7iqu6AL4tV1s7A6iMtDAsrIkA1nBWAMDg1RHAAI6JEQQdgQRhEbKXJpbJZKR73ABWRBUAKBomKGVsWWxuMBrAJpIgeI4A1eEzwUzA9NmYE+31+NMW9yUaFQDRUeX6DxSugAvP4MrgXgJhGJxVVZSICS1KqQYIlSIkCAjRKIgvQRMK1mtqFB6HA-BKBgBhXX1OzmqJ4VVrUIKlKJMKkZgaRKiVBwPquk0paDwBV0lEM6UPE2VcEiDQKxNBrUBoPG+Mms0Wq1MgDKlrTui0LFoTrgiBGIfjBHyOII8olZa+le1DdoTYJKXezOjIL2pWDg2GjLGMaZM3HYHmjG5sezJtTGjg-AVI4IQ1Zc8Wi6X62EmkieglDhc+4PbX4MjXCvPzkvS5MtFCd4lADEAIIAGQLrjjeN7mzOQn0qVgPQyL1Qh9M5-UDYNANDDJw1PJkWRdJC1hXUgU2LP0M0Qg9KlzS1IzAIsk1w1sK0NKsaywk160bZtS3LdtmK7MRCSCPsMIOYd+lHVlxlZadRlnOAFjAJYwPjHD3yZUTMOIqoj1oE8FW-P9H1rE0XzfddP1-f89N0YCgNdCz7nuWgTA6FRyF9TQdBsZYWlEQoIFYL90HYPkABJBFoUpAvBRgdEYe5nggMBHj2IA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } \item{example-2}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsIykUPQiov64ul60cKTUrLoAvPZOzooQAMS6AMIAIgCSAMpZuvxQQbpwAB6wqCJKpeVGulzUAPoNUDb1ZVAGxgDutKQAFirsHREgSrq6AII5BQAyfc1w3BgdiIiM80tKAL5pAFZEKq0A1nCsouM9tk38cCZQwqStBPy0ogStJ2eX12A0HgNw6cgAukolGhUCsVEM-BAZh1EiUerhpro+EJQqjscIxIiZjNSDBWm8CIwiKJREEQnAicSZtRgnBqKj-FkqTT7ME6nhMUzKqiOq0qqRmBpWqJUHACIymciesC9El-LtFuFBYrRGy5aRUbqRFKZXKFYrmaz2WqwAU9RpdFoWLQ+XBEFqkRbiQRhqcCGJUU7GC76e9fbR-aCesBgOqFpqwODwRFRIJ6LqDUkzBZNNYwbopp6vcTaPxhU0AIRO9BxW5BCIqYYyIaiCLUIgSCPcdgARjkEXl-hyZTg4V0-gACgB5Ap5AAaGjHk5n8+opH8cjSxaZ7lIgkYEHYKqjQTkwFLlXBW+3hwxRa9Rv1cH4HLAWSnjgAcg4AJoe7dYq8tC1KqyQuHeAFEIwjzuC+SQOOB2oWiYtCVM+qIAGKzIsBSuPeTLXgREGKvESSiuKkpvKag74cSHQqq+Gr-g+9qZroj4mrKNEASy9Bsq+drGgaQYhiI7oCrRTI+n6AZJCJrphjJJ5QDGcZ7ImybsWmGaotmlh5ncBZIV6F4rNWtQcBMuhfBgzwaFBbYdl21C9puxkWru+6HsedZQGeF5Xu5xK3kFMwceQcHjrazhzsxxYwEBIGYdhuHEcWKFoZFWE4XhxaEcS+XXmkaS0CYujsCo5CUdoDKbkZnqiKMECsLM6DsDCAAk3gRJ1uqMDojBpPsShgPs4JAA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXQBBHwCAGWTdVIxMxERGRpalAF9FCAArIhU0gGs4VlEK3Nt8-jgTKGFSNIJ+WlECNLGJ6dngaHg5zLkAXTdodDaVYvZakNzdAF4X8NxnviERUXeul+wjETwgdTqpBgaQ2BEYRFEonC9BEYIhEOoUHocGogIUYC88MR9ix8Twz3RUUBmTS0VIzA0aVEqDgBDR6IhmVOeg++L6zXx33BHLqohxrNIgLFIkZzNZ7JFdUx2NxvLAAXFGl0WhYtFJcEQgopioIJXGBDEgJ1jD1KLgmzNtAt51ywGAfKaArAl0uVVEgnoYslHzMFk01gu1WNit0tH4VPyAEIdehqBxKrGICUZMVRFVqEQJE7uOwAIxyKps-E+MJwQW6fEABQA8gE-AANDT1putjvUUj4uTDGPoxhwUiCRgQdjcl3hOTAONRS7DkdDIUj3TSiVwfh4gnNxwAOQcAE0jcKYzB1rQ4jz7E5nBuR0RGMsx3uPg4XM+YyZaFEu6AgAYvUzQBK4l4cqu6IVtGuisNSuS0lE9LqBscpVlB6JcrA94ev05LYRC25ah8pEYSyWGbsqOL7hqMqStatoiIaRGbqa5qWh8zH6g6XFzlAboEV6Pp+gGQaAqGlgRgsUbESKS5tCmcTprkVQ7BgqwaK++aFsW1BlkO8EimOE5TjOeGCQuS4riZELrvZoqauQn4Nuqzjthem7Xv2t4iCBYEQb+ir-oBbmgeBkExjBEKxauwzDLQJi6OwKjkAymg6DYtg1MKohlBArD1Og7BoKgAAkgi0FU5UVWKjA6IwwwDEoYADJcQA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } } diff --git a/man/tm_variable_browser.Rd b/man/tm_variable_browser.Rd index 460f1a9b2..211c84bb4 100644 --- a/man/tm_variable_browser.Rd +++ b/man/tm_variable_browser.Rd @@ -54,7 +54,6 @@ or continuous with a checkbox allowing users to switch how they are treated(if < then the default is discrete, otherwise it is continuous). } \examples{ -\dontshow{if (require("sparkline", quietly = TRUE) && require("htmlwidgets", quietly = TRUE) && require("jsonlite", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} # general data example data <- teal_data() data <- within(data, { @@ -76,8 +75,7 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} -\dontshow{if (require("sparkline", quietly = TRUE) && require("htmlwidgets", quietly = TRUE) && require("jsonlite", quietly = TRUE)) (if (getRversion() >= "3.4") withAutoprint else force)(\{ # examplesIf} + # CDISC example data library(sparkline) data <- teal_data() @@ -98,18 +96,18 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } -\dontshow{\}) # examplesIf} + } \section{Examples in Shinylive}{ \describe{ \item{example-1}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsKKoLADWdBBw-ri6XrRwpNSsugC89k7OtgBkGbruMb7+ABakMNQA7rT8UqSikdHecQnJqS6Z2bne+WAAVqIkdOS1MQ2JKQ4tSgDEulLhsrr8UKRQunAAHrCoIkoLSwbGXNQA+jtQNtuLy0a65aQFKuwnUSBKuro+tKJ7b4wfL7owpAILE+VwBQMYNQgr1KRHgUKuMLhfxMUFotzM1C+KLRBQxfwAwgB5ABMXyJxKUAF9FBAlGhUF8VGi-FD5hcmo8-nwhCJPilucIxCzXq9ioctCxaFB6CJDkwiKVRDJhSLXtRpXBMSl-AA1SXSkS6eWKmT+P6vGkWpQ02gmXTsFTkZiWHQ2WzPVmiO4QVgAQXQ7HpABJvFFg0rGDpGDTKUowJSALpAA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6urSMtKJxVTWiFbowpAQsdVmt7YxNEJXZRPD9WYPDzSZQeflmflmT07PNAMIA8gBM9WvrSgC+ihBKaKj1KnnszSm6ALz+GbjNfEIidbdPwmIX-ZW6pDCJWhYtCg9BEiSYRGyohkXx+P2oILgfluCjAADUgSCRLoIVCZKjmpUDkSlAdaCZdOwVORmJYdDZbOVvqJChBWABBdDsY4AEkEtFKvOhjB0jAOuyUYF2AF0gA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } \item{example-2}{ - \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAoksZwAjoNrv2CsKKoLADWdBBw-ri6XrRwpNSsugC89k7OtgBkGbruMb7+ABakMNQA7rT8UqSikdHecQnJqS6Z2bne+WAAVqIkdOS1MQ2JKQ4tSgDEugDCACIAkgDK07pwAB6wqCK6-FCkUEp0TCwcgSFhcIoQu-sGxlzUAPo3UDZKL3e65aQFKuwvURASl0ugAgrNFgAZT4PDAvRCIRjgqHAsGzOx2ZwwuDcOF7KAIpHozFKAC+Vy6RBUj2CcFYon++NsRh2cBMUGEpEeBH4tFEBEelOptPpwGg8AZLzkAF0lEo0KhPipaKQ-BAQR8UgDUXwhCJRE1dcIxGqQSDio8tCxaFB6CJHkwiKVRDJTWaQdRbXBqE1-AA1a227aO50yfyokFXSNKK60Ey6dgqcjMSw6Gy2IHq3SiX4QVig9DsBUAEm8URLLsYOkYV1JSjApOlQA}{Open in Shinylive} - \if{html}{\out{}} + \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dOAAPWFQRXX4oUiglOiYWDlFUFgBrOgg4RQgYuINjLmoAfXyoGyVywt0Ad1pSAAsVdnLcXRAlXV0AQR8AgBka4oxyxERGPsGu3p87O2dhuG5R2KhxybmFpQBfXIArIhUS9LhWUVa12yNouBMoYVISgn5aUQISw+PT8+BoeAu5TkAF03NB0DUVA12DNqgBeaJrXAzPhCESiXQI1HCMQwiDdbqkGAlLQsWhQegiEpMIi1UQyPEEgnUClwaiY3QKMAANTJFKiNLpMi5M26uTFSlytBMunYKnIzEsOhstk6+N0omaEFYPXQ7DQqAAJIJaO0DYb6YwdIxcjslGAdsCgA}{Open in Shinylive} + \if{html}{\out{}} \if{html}{\out{}} } } diff --git a/tests/testthat/setup-logger.R b/tests/testthat/setup-logger.R index f6401f548..69c1394c7 100644 --- a/tests/testthat/setup-logger.R +++ b/tests/testthat/setup-logger.R @@ -1 +1,3 @@ -logger::log_appender(function(...) NULL, namespace = "teal.modules.general") +if (requireNamespace("logger", quietly = TRUE)) { + logger::log_appender(function(...) NULL, namespace = "teal.modules.general") +} diff --git a/tests/testthat/test-examples.R b/tests/testthat/test-examples.R index 89251573d..09f0b9e1c 100644 --- a/tests/testthat/test-examples.R +++ b/tests/testthat/test-examples.R @@ -153,6 +153,7 @@ for (i in rd_files()) { { testthat::skip_on_cran() skip_if_too_deep(5) + testthat::skip_if_not_installed("pkgload") if (basename(i) %in% strict_exceptions) { op <- options() withr::local_options(opts_partial_match_old)