From 0a09bf79c638d659e6d77b42592501e24d00a8ec Mon Sep 17 00:00:00 2001 From: m7pr Date: Tue, 11 Feb 2025 12:13:15 +0100 Subject: [PATCH 01/18] vignette on decorators --- R/tm_a_pca.R | 5 +- R/tm_a_regression.R | 5 +- R/tm_g_association.R | 5 +- R/tm_g_bivariate.R | 5 +- R/tm_g_distribution.R | 5 +- R/tm_g_response.R | 5 +- R/tm_g_scatterplot.R | 5 +- R/tm_g_scatterplotmatrix.R | 5 +- R/tm_missing_data.R | 5 +- R/tm_outliers.R | 5 +- R/tm_t_crosstable.R | 5 +- R/utils.R | 3 +- man/shared_params.Rd | 3 +- man/tm_a_pca.Rd | 16 +- man/tm_a_regression.Rd | 16 +- man/tm_data_table.Rd | 8 +- man/tm_file_viewer.Rd | 4 +- man/tm_front_page.Rd | 4 +- man/tm_g_association.Rd | 16 +- man/tm_g_bivariate.Rd | 16 +- man/tm_g_distribution.Rd | 16 +- man/tm_g_response.Rd | 16 +- man/tm_g_scatterplot.Rd | 16 +- man/tm_g_scatterplotmatrix.Rd | 16 +- man/tm_missing_data.Rd | 16 +- man/tm_outliers.Rd | 16 +- man/tm_t_crosstable.Rd | 16 +- man/tm_variable_browser.Rd | 8 +- vignettes/customizing-module-output.Rmd | 288 ++++++++++++++++++++++++ 29 files changed, 436 insertions(+), 113 deletions(-) create mode 100644 vignettes/customizing-module-output.Rmd diff --git a/R/tm_a_pca.R b/R/tm_a_pca.R index fe8b3d398..ca3f38864 100644 --- a/R/tm_a_pca.R +++ b/R/tm_a_pca.R @@ -43,8 +43,9 @@ #' ) #' ``` #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_a_regression.R b/R/tm_a_regression.R index 0b5246941..6ca69af60 100644 --- a/R/tm_a_regression.R +++ b/R/tm_a_regression.R @@ -48,8 +48,9 @@ #' This module generates the following objects, which can be modified in place using decorators: #' - `plot` (`ggplot2`) #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_association.R b/R/tm_g_association.R index b2f3a7141..fc5c70cdb 100644 --- a/R/tm_g_association.R +++ b/R/tm_g_association.R @@ -29,8 +29,9 @@ #' This module generates the following objects, which can be modified in place using decorators: #' - `plot` (`grob` created with [ggplot2::ggplotGrob()]) #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_bivariate.R b/R/tm_g_bivariate.R index adc4e9c0f..c7537b6cd 100644 --- a/R/tm_g_bivariate.R +++ b/R/tm_g_bivariate.R @@ -51,8 +51,9 @@ #' This module generates the following objects, which can be modified in place using decorators: #' - `plot` (`ggplot2`) #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' #' @examplesShinylive diff --git a/R/tm_g_distribution.R b/R/tm_g_distribution.R index 9e8319302..ef3efab34 100644 --- a/R/tm_g_distribution.R +++ b/R/tm_g_distribution.R @@ -52,8 +52,9 @@ #' ) #' ``` #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_response.R b/R/tm_g_response.R index 85d337653..521d820b8 100644 --- a/R/tm_g_response.R +++ b/R/tm_g_response.R @@ -44,8 +44,9 @@ #' This module generates the following objects, which can be modified in place using decorators: #' - `plot` (`ggplot2`) #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_scatterplot.R b/R/tm_g_scatterplot.R index 45b411dda..0fce4a1c1 100644 --- a/R/tm_g_scatterplot.R +++ b/R/tm_g_scatterplot.R @@ -35,8 +35,9 @@ #' This module generates the following objects, which can be modified in place using decorators: #' - `plot` (`ggplot2`) #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' #' @examplesShinylive diff --git a/R/tm_g_scatterplotmatrix.R b/R/tm_g_scatterplotmatrix.R index cd8b8c84c..592bd69ad 100644 --- a/R/tm_g_scatterplotmatrix.R +++ b/R/tm_g_scatterplotmatrix.R @@ -23,8 +23,9 @@ #' This module generates the following objects, which can be modified in place using decorators: #' - `plot` (`trellis` - output of `lattice::splom`) #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_missing_data.R b/R/tm_missing_data.R index 06ca7466a..2eea9da1e 100644 --- a/R/tm_missing_data.R +++ b/R/tm_missing_data.R @@ -43,8 +43,9 @@ #' ) #' ``` #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_outliers.R b/R/tm_outliers.R index af9f91abe..4d1fa8fcd 100644 --- a/R/tm_outliers.R +++ b/R/tm_outliers.R @@ -41,8 +41,9 @@ #' ) #' ``` #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_t_crosstable.R b/R/tm_t_crosstable.R index 2286a70f7..27380fe74 100644 --- a/R/tm_t_crosstable.R +++ b/R/tm_t_crosstable.R @@ -30,8 +30,9 @@ #' This module generates the following objects, which can be modified in place using decorators: #' - `table` (`ElementaryTable` - output of `rtables::build_table`) #' -#' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-modules-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' For additional details and examples of decorators, refer to the vignettes: +#' `vignette("customizing-module-output, package = "teal.modules.general")`, +#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/utils.R b/R/utils.R index 1166de42e..527b19399 100644 --- a/R/utils.R +++ b/R/utils.R @@ -34,9 +34,10 @@ #' - When the length of `size` is three: the plot points size are dynamically adjusted based on #' vector of `value`, `min`, and `max`. #' @param decorators `r lifecycle::badge("experimental")` -#' (`list` of `teal_transform_module`, named `list` of `teal_transform_module`) optional, +#' (`list` of `teal_transform_module`, named `list` of lists of `teal_transform_module`) optional, #' decorator for tables or plots included in the module output reported. #' When a named list of `teal_transform_module`, the decorators are applied to the respective output objects. +#' Either all named or all unnamed decorators need to be passed. #' #' Otherwise, the decorators are applied to all objects, which is equivalent as using the name `default`. #' diff --git a/man/shared_params.Rd b/man/shared_params.Rd index 18738add1..e26e2600d 100644 --- a/man/shared_params.Rd +++ b/man/shared_params.Rd @@ -49,9 +49,10 @@ vector of \code{value}, \code{min}, and \code{max}. }} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. diff --git a/man/tm_a_pca.Rd b/man/tm_a_pca.Rd index 6c6ed464c..3740dfea2 100644 --- a/man/tm_a_pca.Rd +++ b/man/tm_a_pca.Rd @@ -77,9 +77,10 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -122,8 +123,9 @@ See code snippet below: ) }\if{html}{\out{}} -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -195,13 +197,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLqkQ11XfxQpFC6cAAesKgiSoHBBsZc1AD6sVA2MUEhRroA7rSkABYq7Km4uiBKurqMcACOgrQ17L6ipMTURIyKEFWOAMoAgow1raLxuv1DI6SiSgC+3UpoqOMq+eyVAZm6ALxbwbibfEIiY3vHwmIbPVW6pDBJUEmoBGmbt7oKYAAKAMIDX0ONw+sV2+ye4VIzA0SVEqDgBGuHxBmWg8DBX0mwzEM0B72RojgIg0YMJxNIsPhiPxyN0BAKRFoBDEYK0LFoUHoIiS9MZzNESNpyNSYNSwGAmMG2NGXwAurKytSwABZQSMfgyQGfMADUSiKDCUhazGMehQCDfIioY1gLBoOBfbpC25yIHOqpkhHkfhgpWq9WavDa3X6w2Ot3umCG2hRPR7BwuGkuiO0ky0ajkRhggByjgAMnmk06XZtut1aCZdOwVJn1JodDZbBUbqIihBWAN0OxlgASBplXuExg6LrzJRgOayoA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLoDCAEQCSAMreuvxQpFC6cAAesKgiSmERBsZc1AD6SVA2ieGRRroA7rSkABYq7Fm4uiBKurqMcACOgrSN7BBipMTURIyKEPUAgr6BADIpumkYWYiIjCPjSgC+AwBWRCrpANZwrKKVebYF-HAmUMKk6QT8tKIE6Rtbu-vA0PAHWXIAuu5oqJMVCV2HVQnldABeMERXCgvhCESiSG6eHCMQgwb1KYwdJQdKoAjZUFY3QKMAABW8QzJsMxJKSyKy6RipGYGnSolQcAIGJJ9Ly7z0ULJizGNOJfNEcBEGmRUplV053N5fJJBFKmwIYmRWhYtCg9BE1w1tC1BwlqvqWUZeWAwBFozFYG+32qPLJACEALJYADSWAAjDTSWAhgBxVx4EPOADygV8AE0yQNLVi5LTU-V5dzyPxke6wN6-YHgyKI8mM5mYJdaPEhfYnK46Xz0xasSZaNRyIxkQA5RxjMXN+optOggYDWgmXTsFTd9SaHQ2Wy1TGicoQVhDdDsf4AEla1X3UsYOn6KyUYGW3yAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_a_regression.Rd b/man/tm_a_regression.Rd index 7b419ad07..4e78dd9c9 100644 --- a/man/tm_a_regression.Rd +++ b/man/tm_a_regression.Rd @@ -101,9 +101,10 @@ argument in \code{teal.widgets::optionalSliderInputValMinMax}. To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -130,8 +131,9 @@ This module generates the following objects, which can be modified in place usin \item \code{plot} (\code{ggplot2}) } -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -220,13 +222,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLqkQ11XfxQpFC6cAAesKgiSoHBBsZc1AD6sVA2MUEhRroA7rSkABYq7Km4uiBKurqMcACOgrQ17L6ipMTURIyKEFUAwgDyAEzxugODSgC+3UpoqCMq+eyVAZm6ALwrwbjLfEIiouu6u8JiSz1VuqQwSVBJNRI1oqJWEGcXF9RQ9HD+GwpgWDgDzEzxI-2253ej1QJFEeg2qSS4VIzA0SVEqDgBDe7wuqWg8EO-zG4OWuN0cJEGkOlKxpHRmOxZPJuk+31+un+AGUfnTdFoWLQviJEKTISyCAUiLQCGIiWBBKhggBrOBilkXWkaOD8eWKlVqvDM8kwYSaKLw3QAMQAggAZLnOCEaqomWhhHWHBwuY0XbrkuTO3H3R6iTqHRHI1H0jFYnHk-GwS3Eobqlla0g03lo2NM8Xktk-eU8qmZgWMIX0faio353GS6Wyg4bcuVkRJBsy06pYDAFPjMAAXUHZSZhBIBHBnLAdhqQXgZH+ckDvveGc9f3HFjTGtN1HNIi9Tidq4ubo9uo2todrjrVX9uIf9+W3W6tBMunYKnI0e0cBstgVOcohFBArA2ug7CzAAJA0ZQwXCjA6F0kxKGAEyDkAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjA0lA0g0JA1RKIrBB0ZjMdQoPQ4NQkQowFg4ASxMSSPSYRjyYTUCRRHpIZk0tFSMwNGlRKg4AQyeTMZk3vzdPSFqN2SDZbo+SINEitVLLhKpTKNXVKdTaZD6QEafrdFoWLQqSJEGrOSaCCUNgQxHSwAAhACyWAA0lgAIyuk2YvUaOD8X2BkPhyNR5EXWhxRUAMUGowCzg5qdMtCicaRDhc6tl-Q1ckLsvxhNEvSRguFooNkulVfJ8tgiuVI1VeB70ZtOshMc7RtH5LNNN91u1pDtDqdYhdI7dGo9Xp9kPtjEd9BEV09tG9H1ywGAg8WYC+Xyq3bAgwA4q48EqwPmABrs78sEGLxPzkOtZzHZcy0tV8PxTKMYHTTNyycAsILqEwS2g3QczzVxt0xGtqyrIj+n6WgTF0dgVHIDttDgGxbBqDFRDKCBWEGdB2DQVAABIWiqHjeL5RgdD6ZYlDAJYviAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_data_table.Rd b/man/tm_data_table.Rd index f013fd316..6540451fb 100644 --- a/man/tm_data_table.Rd +++ b/man/tm_data_table.Rd @@ -122,13 +122,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlQ20onG6vaJKAL5dSmioAyp57BX+GboAvAtBuPN8QiL9K5vCYnPdlbqkMMkZiUH0IofHx1ostFDXYomicCIacPzLunQttzuxyGvwIczAAGU4KhuBgADIUCQFBR4XQoqEwngAdVo-GRqJRAAU4EEeAiIEj8ijSkSSbCcXiqQTIag4ARaGIUV0gbo5Osjnc8YkWBIdn8+qR2AQ0JoSL8UQBJLAKiH2Z4iXQAYRlVggXPmlW5vKUXVoJl07BU5GYlh0Nls5SOokKEFYAEF0OxJgASeqlH3vRg6TqjJRgEYAXSAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjAMrk0uF6CJ0ZjMVoWLQoASxGlRHARBo4PwkXRRKR2AtxpCCMCwAE7I4fABNPw+BR4XSixwBRwAIQAUsLRVVRVK5Qqxcq-HZnGqlWBBgBxVzqnnOAAaorkchhGOJ-EuLAkiMhzNZBDQmhISNF7PsFJE3ndVggFpBdX6YaU-VoJl07BU5GYlh0NlsNQxojKEFYg3Q7DQqAAJC0qvmCzTGDo+sslGAll8gA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_file_viewer.Rd b/man/tm_file_viewer.Rd index a1617b9db..cf3b5cdd3 100644 --- a/man/tm_file_viewer.Rd +++ b/man/tm_file_viewer.Rd @@ -54,8 +54,8 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqX8opKAeNdqAfQ8vG3dPbyNdAHdaUgALFXYgqFxdECVdXSSfTLCME2Z4dgBGRQgAX1KlNFRslRj2dJyvXQBeJuTGviERUVbdLuExBogMjNIYfxNaEX8tWjhImWHR0ZVUQVJ-VE9YvrpRUmWV0ZMian4ZPtFWA7gYPOm4BrBRWFQZqZ6FPF1tggBrKBSPrfPy8ASDcRSCBqajfOS4RrHX4QCRXG7ke6fJ7fV4wd5wSaPUQAejxBKJIgwqFR3xSf0BwLaoLg3HB3TEkmksnhiJGyN0pAAHqR0bcsY9nuSPsSyW8ZVThaQ6b91Iy9MywGCBj0uTCeWAEUjjoJGNQQWBYqRSKhRIgSSSTB5JEQtI7ZfxGIIJKT1vR9rE4PwSQAFIiMLz+uCGAAiRAIgngZEMADFwzBPIYAMqoOAEWhTAieKwQcSofgmb7GjKlFa13SlUoF3TsFTkZiWHQ2WxpfmieIQVgAQXQ7GqABJBLQUhPRDIdIxSmUlGAygBdIA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_front_page.Rd b/man/tm_front_page.Rd index 4ea5c0bfd..26632b617 100644 --- a/man/tm_front_page.Rd +++ b/man/tm_front_page.Rd @@ -100,8 +100,8 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqX8opKAeNdqAfQ8vG3dPbyNdAHdaUgALFXYgqFxdECVdXUY4AEdBWiz2CDFSYmoiRkUIDIBBABEAZQAZH10-DCTEREY6pvTdT1JGdh7GlIUweC8k8dsIulFSdnHqwTjy8d0AXl1xgDlnertWuFhxsbAk-1EiQUYCOA3t8dFWMli4TQJdabBKgF9KgArIgqfwAazgrFEiTCs2M-DgJigwlI-gI-FoogI-mBoIhUOA0Hg0KScgAum4yFB6CJ-ABGFpJDAmZjwdgASQgJiIW10BCWYGqZx2YAAQjMUnY4AAPUi8-nLYXjcW-SpeGlwfwAJkZYWZrLg7AABgBhIjUQQwKp0o3ygUmpVgWoS3Sm82Wqpa23bfkAVgwvpSADYMEG5Ck3RarboAMzevkCoV4EUquRq6m0mO6rz62CGzncu3jVzJ8YAMRdUtlRbAAHFHQAJGaVJTq2kqVCrFrzRZ9cZ2DN6OmPVqD+m4PtgAca3RakdtzVaidVEXTkSx+djmNKFvQdAtFQxJYrpK8pLLjJ8IQiUS8q-CMTHjIZUgwfwskio1BQKRP58Zd4oARRh-HIasfT-f8MnGdkYFQcovDIXQVG5RgYE8KwIBHGC5QIKAqgkHl3iyDAzj6KCRQAeTiGRkK5cp0M0EhsLAE18N0QjdGIuBSLAcjn3DfiX0HW9tgXfwO1WC8oKAjEmOgAIvAkUTdAbOwAFlGkTfg5Mw7hVI05pyl0UR4ggVhR2UjiiJkPR9CYAA+CUhNMIgiFICB3LEGsAA0WMxVp3lMfIFlc9zPPIR0AE1kNvGiTLgYgIH4MKPK8mZ+MqDJKlsAAfJyVyvWgTFYfxAOAzgf1EAASWI6QFepYFQddqnQOg8Pk5tdHyvoipK983PIIYlJq1BEza2gOsw1KZGbSlit0dgVCG9RNB0GxbDSFdTJUVhWrGtBUGqvIUkO6rRBkHQKiUP4lDAP4ySAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_association.Rd b/man/tm_g_association.Rd index 63b819f8e..d1bd27f4c 100644 --- a/man/tm_g_association.Rd +++ b/man/tm_g_association.Rd @@ -62,9 +62,10 @@ For more details see the vignette: \code{vignette("custom-ggplot2-arguments", pa To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -90,8 +91,9 @@ This module generates the following objects, which can be modified in place usin \item \code{plot} (\code{grob} created with \code{\link[ggplot2:ggplotGrob]{ggplot2::ggplotGrob()}}) } -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -183,13 +185,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlQDCAPIATHG6-QMVpuqkHaLD0PCi7ABitNTkjOy0og4upVpokRyjpZsYJpMdpe0StATc7ACMADJyL129g8BnGtMAusPU+2ohw+XymjFEP1KUHEBHyLEmMi6AF8ukp9sMVHl2OMUroALz+DK4cZ8IQiGYE0nCMTY7qVXSkGCJCSJaGiIgEWiBKwQWn0+nVEz4wlBRJhUjMDSJUSoOAEPn8+kpOZ6AkKMCjdXEumK3SiOAiDTC-WG0jS2Xy8a6yoA+gG4XqgDKBrlpF0e0YXPoIkQWqt1thRBuYmFHq9IkSgeDCxSwGA6s1YB+kN0lrAAAUAWQtbp1XZWLKc3nqoF4NmwC9tdb6SbXXB+A6M1nSH6ddaTLRQvXhYsAIKPR2uNv8t6KuRVxUeikiqBi0ISybmuUK3XK2Cq3Mawat6u1o0EvdmmXL-26232tVgZ2m90scNiX14U+KqMEEMEsNQb1wSP5INvmMMjjBNtyTFM00zKBy1KPMCzgIswDsEtGQoFsK3HZ9+UPbtLyQuBS1Qndq10GBhE0SIN22ZwJ2rDsuwbAk+wHIdq1HEd-VHLouloIUNlUSVNB0GxbHKOlREKCBWF7dB2H2AASeooXQOT9UYHROiUJElDAJEfiAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjA0hI0lBRKIiARaGErBB0ZjMQ0TEjMmloqRmBo0qJUHACBTKZjMm89JCFGAFqMBTCMVzdKI4CINEjJdLLqz2ZzxXVqFB6FKkQKAlL2aRdFoWCT6CJECKQSrdAQShsCGIkYbGMaRFcbbQ7fsLZaoVBgMABUKBV8vqLvZiOdrnAANEW6AVYQZeVx4ONgLwAeUcADkHABNWMBrAAWQLYACDkGdkGAEZS+WE1WAEylvx2OwAMWFKYFACEi1gANJYZtgfphuSh71yvVwfhasAJpPmsUqky0KKzpHtwajAKuFeUsdcideuqOxGQukMpkKtkRg-c3K8+eBvCnzHTmWQz+3pXvylqhq1Dzjq8oGka6oImab4PpS1q2vakKOs6cCughnqwVymR+gGIxdsGk5hhGZbRqWi7JlUAoZtmealoMxZ1hWVa1t2ZZMYMI6UWArYdl2XF9oOw4CkelonphdQ-pu-JgAJQ6cf+mIwBctBxHy9hOM4hGruuUm6Nuu77qJ74iboR79P0tA0uwKjkDe2hwDYtg1BiohlBArCDOg7BoKgAAkLRVD5vmSowOh9MsShgEsXxAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_bivariate.Rd b/man/tm_g_bivariate.Rd index 8f65e787e..42a7245bf 100644 --- a/man/tm_g_bivariate.Rd +++ b/man/tm_g_bivariate.Rd @@ -107,9 +107,10 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -137,8 +138,9 @@ This module generates the following objects, which can be modified in place usin \item \code{plot} (\code{ggplot2}) } -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -254,13 +256,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlQDCAPIATHH+GRgmzPDs-QNdAL5dSmiowyp57BUjsQC8m1C4G3xCIqK6O6QwiRKJ9NostIFw692VuqGnu4lhpMwaiaKocAITxeLxS0Hg7wUYGmUP2zxBojgIg070RyNIfwBQI2IMq1Cg9CRkLAAGUkYDSLotHcCSJELCcbiCPkiLQCGJ3tTGPd6CJEszWezRMUMsBgFCYWAALpSuRw3EvNEUuD8YnECwM+G4ky0UIq94AMQAggAZEmuLWVLoguWM1jvFKfULfdQY-6A4G4sGwPQ7CWDTUKpUonbBt1Yz0K-GEvx+0nklFcnl0wMK3QCtkcnZJ2lwfkszPClJi-0DKEy22WxUJ8iquOCVBBADWcFTCpgwk0kV9umNZuc8rTOr1dd7pvNjKtjMrIMYRGyiRM6jglJ2jq+P3DHsnu3BPdLber6NRNcx26reIJRLjZOPOd5cHpeB3lQzQs5NIf+cFYhFQRL0IBtKsqDkGNb6nGdisACh4gsOEFjv2O7Wi8M4vG0i7LquHwbq6Z7YlW3oQnGkqgUeFInui+GRri0bXroUK3hR94ps+F7pgW77Zp+fJvr+xbioBZbAWhYHoghUJ2NUgTwGQsEvPBo59hOVYoVOzxdF0tAmLo7AqOQm7aI8ci2OUzyiIUECsEa6DsEsAAk9SlA5iKMDonRKLMShgLMUpAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIZMYGkJGl6NoWLQwnBgQM6rookjMmloqRmBo0qJUHACHiCQTMm89JCFGAFqM2TD8QzRHARBokXyBZdqbT6QyCdQoPR+Ui2QF+bTSLotFiZSJEFyQZLdAQShsCGIkWrGNj6CIrgbaEaPrlgMA2Ry2V8vnJubq6sLlXB+PL2QBxVx4HWSky0KK+pEAMUGowCrh5BP6DPdodYxNypKi5PUoppdNDdSZsBZuidI05IaTXqVgsh3spYsLNalMrlrLAipFqvVFrgWurnr11ttJr7lv1hrEB3CDorizArrTrdrIqjnYTAA1tavdDALrQ4mXY-HnB7PeHI37IaeE0XdCnkxe6owiAU0mcjSrISSyRT83FB8S3gf1nSHSVGx-XQoKpAsJV1aVZWof1u2VXszQ1Add2HKcbWNSFTXNSdRxnTJ53ZSsXTdF9ILrcgb3LdksAAWRwy8Iw3XQ70TXUnzqFcGW6T91DgaC-xzAC4KA1sQLLBcq1otd0IbejpJbYckI7Ji0MFIisMHJSCTwsdCInOArWnO050dSjF2XIzlI0Li2S8AB5RwADkHAATXY3Ury4niH34x8QX6fpaBMXR2BUcgAO0XE5FsGp8VEMoIFYQZ0HYNBUAAEhaKo8vyvlGB0PpliUMAli+IA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index 81c33fe0d..2a47ed6a3 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -69,9 +69,10 @@ into context. For example the \code{\link[shiny:helpText]{shiny::helpText()}} el To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -113,8 +114,9 @@ See code snippet below: ) }\if{html}{\out{}} -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -190,13 +192,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6urSMtKJxVTWiSgC+ihBKaKj1KnnsFf4ZugC8A0G4-XxCInUjdKKkfRCVlaQwiRLJtaQ19IKa1v3L-luJWizDo1CJYdvqpImiqHAEi0dHKdDwFwpg1bU-4yWb0qojgIg0F1B4Puj2e7DONSg9BEiQI+SItAIYj6v0aPzkpR+AAU4EEeAAZCgSAr4w7LNpHBm6NptWgmXTsFTkZiWHQ2WzlIGiQoQVgAQXQ7E6ABJBLRSjLQYwdIw2s0lGBmgBdIA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index cba0cb8ae..ffcca22ab 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -87,9 +87,10 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -118,8 +119,9 @@ This module generates the following objects, which can be modified in place usin \item \code{plot} (\code{ggplot2}) } -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -210,13 +212,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlTCtLKJxur0E-RWmHbrsWroqugTsCoSs1Iuli1qiq7qLsFuLUiyLcrbl3ZVDfYyiwMBaALp3g1DiJuqkHezD-Tf3d12VAF8lACuko0KhBio8gszildABefwZXBjPhCEQDRFo4RiGHnXSkGCJCSJaqiVAkURwPH43TUKD0OB+RGLLBiCkQKm6AAK7VImzwY3xZI5XMRKUSYVIzA0iXJcHmQtpKWg8AR2zAXyuqyV+KpIg06v1CtIctQCpptPO9MZzI1AGUmSbdFoWLQGSJEDqzlbKgR8kRaAQxOrXYx3fQRIl-YHg6JihkbostQKHqVFUsVngNQdGEc5Cifb7jRo4Px1YsCMtvb7zjBhJpInpEQAxACCABl7c5C7XKiZaKEy+r213XEX8f9aQXdbpQuqJVKZab5YqJ+cVbBmxqUzXi07DYiSyvzWu+3SGUyK2BHQbSC63R64F7Bev8TGgyHEWGI1GP3GEyCJNNUuVM7nTBYwA2PYUBgfNez7Y9hxZKCBQQ2t62oRsRBHTtu3Q30ByHctWzw8daynSclSnLouloExJhUchl20aljjKMZREKCBWDbdB2HBAASepSiEqlGB0TpgSUMAATuIA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjA0hI0g1RKgSKI4OjMZjqFB6HBqEiFGAsGJCRBiboAAo9UiiOkwjFk-FMlmQzJpaKkZgaNIEuAEUlkzGZN56SF0hajbkguW6YkiDRI7XSy5SmUazW6ClUmnKsABakG3RaFi0SkiRDq3mmgglDYEMRIh2MJ30ERXL20H0fXLAYAqkZqsBfL5VY1gABCAFksABpLAAJm5ujpXgA8o4AHIOACadLkch5psx+o0cH4tNTGezebwJs1MAutDiSt0ADFBqMAs46-XTLQos2kSOx653WT+pra93dFEkcLReLDahpbLNQrYIOY4su8uG7bdZDG-vDxuyebqa2bTrSPbHc64K7L1PdE9b1fUhf1A2DICwzRTIo3POMEyTYFrWcAANfM6SwQYvFcMAa0net7znK1MOwt0AN7ahNAHedR3HfDTRMGciOHWil3rVc5Q4uoOP6fpaBMXR2BUcg920Eka2qEFRDKCBWEGdB2DQVAABIWiqJTlOJRgdD6ZYlDAJYviAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index 5718948fc..334fbbed5 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -100,9 +100,10 @@ For more details see the vignette: \code{vignette("custom-ggplot2-arguments", pa To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -129,8 +130,9 @@ This module generates the following objects, which can be modified in place usin \item \code{plot} (\code{ggplot2}) } -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -304,13 +306,13 @@ if (interactive()) { \describe{ \item{example-1}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index 751a59c57..6098933ab 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -41,9 +41,10 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -69,8 +70,9 @@ This module generates the following objects, which can be modified in place usin \item \code{plot} (\code{trellis} - output of \code{lattice::splom}) } -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -212,13 +214,13 @@ if (interactive()) { \describe{ \item{example-1}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXQBBHwCAGWTdVIxMxERGRpbahp8sALaOrp7G4aUAX0UIACsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI0xeW1jeBoeE3MuQBdN2h0NpVi9gHM3QAvCFcrgBnwhCJRIDdODhGJfhA6nVSDA0hI0hcwuRGHEiCiwoxaFEEUikdQoPQ4NRoQowAECFiZLjSDCCUTaaDEaTdFoWLQKZDoXRRKQSdy6pk0tFSMwNBjUHACGLxRLcg89EDaX1mhyBirdKIqYqWUDDSI5aIFUq9frdOTKdTNXSjRoeXyBWJELqubbdAQSksCGJobzCR6TgHaEGnrlgMAtU0dWAXi85JzfXUzca4PxodawPUAOKuPC6WlYepeEtVWkBZwADVpaZt+pgR1ocQ19icznTGaIjD2jBz0IcLj7vpMRJHQIAYvVmnWW9y5vrmz7uZLpbLjpbFcqVZl1TSC0MAt7J7RqNjoVPrzJ5fvl+L7VSTwEXSyKPxUEsyKIvTwZ9uVDKEgXzAAFeoKwAWV8DkywLAA1QI-DsJsJ1tf1A2DIFeWoQQ4AjHCY3COMEymZMXiqSDoPqOCfAQrUUICNCML9X4wCg2CmOQ1D0LAOR1wzA1PxnRC-AAOSQ5w7F0YxnEknxdAAeVnXQpJ8RwvDsPwVMki8Mzba8OxEUce2AuphNtLNXVNT9H2tDd9VfR1EI-c0WVDfl6EhQDMP1bCo1wt0w18oigujLYyPjU9KJTazfVs8hc3Azii2rRD6iQhdeMaABNDDLKRYzNE7czx2KuoByHcSx17KrTGnVLdHnRdXGcldgNXLqNx6uY5loExdHYFRsXUTQdBsWwai5UQyggVh6nQdg0FQAASQRaCqNb1sNRgdEYOZpiUMBpheIA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index 4bba85c17..bcbc7f63a 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -62,9 +62,10 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -107,8 +108,9 @@ See code snippet below: ) }\if{html}{\out{}} -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -165,13 +167,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrquuAAesKgiuvxQpFBK4ZEGxlzUAPoxUDbREVBxugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQFbpQ-PyJ0KJZZhaa1gG25RCVlQHAosEi7KK1idwkEuyTpSbtHewiEBIF27YAVFXmtCbsAIylGAAMAKyPdwDsct8AulkAcgBBHpzHoAXzcM10DVowyM0MYsJ6MFaLDhxhRBDRkMqMNEwD+8OoaBCHDxpT6AyGXUqmLRBKyxPQ1A4dMYogp-UGUFENN0bPxwAUhFY1GFP0Jxh5GBM6lIBwFwCFIrFYAlfMVyqkLHFkt64llGgVqPZSuF2sYuq6YK6ShJWRUeXYPRSugAvGEMrhkQJhGJ3fzfSJRM6oZVSDBEjBYaIVBJkhl2KgWBRSAnItB4AHhQLhXyul0brp2CpyMxLDobFMeqJChBWID0OwSQASeoU9At1aMHSdJQQiBgME-IA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dOAAPWFQRXX4oUiglGLiDYy5qAH1EqBsE2Khk3QB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGXzUjEzEREZhsdrdYawA-LmfFaUAX36AKyIVNIBrOFZRCtzbI2i4EyhhUjSCflpRAjT9w5Oz4Gh4c8ycgAum5oOh8ipiuxFpldABeaK5XCLPhCESieG6VHCMTQgZ1XSkGBpGCvUQqCQZXLZfH9fq0Ey6dgqcjMSw6Gy2Gr40RlCCsQbodhoVAAEhaVRFotEMh0fW2SjAWyBQA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index 6f60a48ed..6103fe462 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -53,9 +53,10 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -97,8 +98,9 @@ See code snippet below: ) }\if{html}{\out{}} -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -199,13 +201,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLqkQ11XfxQpFC6cAAesKgiSoHBBsZc1AD6sVA2MUEhRroA7rSkABYq7Km4uiBKuroAwgDyAEzxNQ2VzfXAwApgqIy0MCysSQDWcKxdALrjTaJwAI5JIhDsEIxEOex19XKKEAC+OwBWRCrDo6IlmbbZRycjrOc3EKccXZtdZa8teLpdPX0Dzy623cWhYoiaBAKxwIYiSMxEGjg-HYoN6UHoIiSkOhYguwQ6n3qE3GZQI7C6AAVqFAyO8fmA7KxUHA6V07Iw4EF4LSwNsdko0Kgmip8uSIFVUroALwBTK4Vp8IQicEyxXCXGtKqkGBJIiCUh0GTnTVVXR6g20GRJVHS3R0USkMWm52y4JJcKkZgaOHMskml2ummwPQywnvf0u+FwDS2qPe0S+p0Bl3U+hwfyhsAAZXT0dIulRtHRIkQ4fFyed2NoMJVBZYRYxcCxUOruNSBLAbzAk1J5MIJAIrLAglQwRGQLk8vLFaqcfI-FtXRHY5ZeAjAZgwk0URDugAYgBBAAyWecU5nppMtDCSNth5PrmnyZ2FZfLsnEYIQTgEiIvS-yQ2jK9qOuugbumEnrqKQPrRkmFapNA8CLp2XznjOV7UOQjC2ph2GwX6T4VqitYkehF5VjWtqgtQghNpRbaZB2XY9nWjCiAAJHOSIfkRybcQuMo0XRzY4uc7adKhRLdiSbGcQJvEXlUm5YbQO62g4LhgVUb4Brppr6W+Ow7LQJi6OwKjYdB2hwDYtgVOWohFBArAHug7CChxgi0GUnkzIwOiMDsuxKGAuzjEAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLoDCAEQCSAMreuvxQpFC6cAAesKgiSmERBsZc1AD6SVA2ieGRRroA7rSkABYq7Fm4uiBKuroAgr6BADIpumkYWYiIjE2tSgC+ihAAVkQq6QDWcKyilXm2BfxwJlDCpOkE-LSiBOnjkzNzwNDw81lyALruaxrpWiyi6VD8otTtZ2LsAGK01ORGOxdg4XNVRGh4hwssBgAowP0WvCrldqrsMHdSERGHJcUpHoxRO0CKUJgQxOlRHARBo4Px2ATaFB6CItqTaOSLnlYfDEcjUaZ1JsCc9Xu88RB3EpIe0VCV2HVQnldABeJURXCKvhCEREtXa4TfRX1UgwdJEQSkOgyebG+q6C1W2gyB4sVW6OiiUgKiD2v3qqDpGKkZj3USoOAEH3+-1ZL7u3nNJF4O0xqk00ju9ORzbhyPRmP+6jM6kJsCBak53SM5kiRDwzW+wt+klksTumssuBsttciI8hFJ-nVKO8gDirjwunhACEALJYADSWAAjPDcY3m37s7T+GWGhOG6nCzANrR4no1T8Gi1As5N1v6iZaNE6e7r7fXE3myMf8e5A+LbhHAEjYhy3Cuow7qet6x71FkQbRCGQqUhGo7foWcawJe06DgMKYYTGz4AjI7rEYCqH5nB-oih2TyAVurYcu2aqPNQgjdkxnILP2cJ4cmKLVCKAAkO7kPwAHUdula7nR7Gcey3EwnxfJgIJ1ZPKJMniZJhEnmeF7uqCX6Pr+hZmX6Fm6GZIwjLQJi6MCqihpoOg2LYtRNqI5QQKwDToOwkLCYItDVEFVKMDoOJDEoYCDFcQA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index c4452a313..f4d3a2e5c 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -56,9 +56,10 @@ For more details see the vignette: \code{vignette("custom-basic-table-arguments" To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of \code{teal_transform_module}) optional, +(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. +Either all named or all unnamed decorators need to be passed. Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. @@ -83,8 +84,9 @@ This module generates the following objects, which can be modified in place usin \item \code{table} (\code{ElementaryTable} - output of \code{rtables::build_table}) } -For additional details and examples of decorators, refer to the vignette -\code{vignette("decorate-modules-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +For additional details and examples of decorators, refer to the vignettes: +\verb{vignette("customizing-module-output, package = "teal.modules.general")}, +\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ @@ -183,13 +185,13 @@ if (interactive()) { \describe{ \item{example-1}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_variable_browser.Rd b/man/tm_variable_browser.Rd index d2f271e60..9e66305c9 100644 --- a/man/tm_variable_browser.Rd +++ b/man/tm_variable_browser.Rd @@ -114,13 +114,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6urSMtKJxVTWiFbowpAQsdVmt7YxNEJXZRPD9WYPDzSZQeflmflmT07PNAMIA8gBM9WvrSgC+ihBKaKj1KnnszSm6ALz+GbjNfEIidbdPwmIX-ZW6pDCJWhYtCg9BEiSYRGyohkXx+P2oILgfluCjAADUgSCRLoIVCZKjmpUDkSlAdaCZdOwVORmJYdDZbOVvqJChBWABBdDsY4AEkEtFKvOhjB0jAOuyUYF2AF0gA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dOAAPWFQRXX4oUiglOiYWDlFUFgBrOgg4RQgYuINjLmoAfXyoGyVywt0Ad1pSAAsVdnLcXRAlXV0AQR8AgBka4oxyxERGPsGu3p87O2dhuG5R2KhxybmFpQBfXIArIhUS9LhWUVa12yNouBMoYVISgn5aUQISw+PT8+BoeAu5TkAF03NB0DUVA12DNqgBeaJrXAzPhCESiXQI1HCMQwiDdbqkGAlLQsWhQegiEpMIi1UQyPEEgnUClwaiY3QKMAANTJFKiNLpMi5M26uTFSlytBMunYKnIzEsOhstk6+N0omaEFYPXQ7DQqAAJIJaO0DYb6YwdIxcjslGAdsCgA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/vignettes/customizing-module-output.Rmd b/vignettes/customizing-module-output.Rmd new file mode 100644 index 000000000..cdcf21ce0 --- /dev/null +++ b/vignettes/customizing-module-output.Rmd @@ -0,0 +1,288 @@ +--- +title: "Customizing Module Output" +author: "NEST CoreDev" +output: + rmarkdown::html_vignette: + toc: true +vignette: > + %\VignetteIndexEntry{Customizing Module Output} + %\VignetteEngine{knitr::rmarkdown} + %\VignetteEncoding{UTF-8} +--- + +```{r setup, include=FALSE} +library(teal.modules.general) +library(teal.data) +``` + + +## Introduction + +The outputs produced by `teal` modules, like graphs or tables, are created by the module developer and look a certain way. +It is impossible to design an output that will satisfy every possible user, so the form of the output should be considered a default value that can be customized. +Here we describe the concept of _decoration_, enabling you to tailor outputs to your specific requirements without rewriting the original module code. + +The decoration process is build upon transformation procedures, introduced in `teal`. While transformators are meant to edit module's input, decorators are meant to adjust the module's output. To distinguish the difference, modules in +`teal.modules.general` have 2 separate parameters: `transformators` and `decorators`. + +To get a fuller understanding, read more about : +- changing the input data +[in this vignette](https://insightsengineering.github.io/teal/main/articles/data-transform-as-shiny-modulehtml), +- the concept of changing module output in [this vignette](TODO: link to vignette in teal). + +## Decorators + +Decorators are created with `teal_transform_module` and thus they are `shiny` modules. +In `teal.modules.general`, they are passed to `teal` modules through `decorators` argument (see below). +Their server logic will be used to modify objects such as plots or tables that exist in the server function of a module. +An `ui` function can provide interactivity but that is optional. An app developer is free to use decorator modules that do not require user input. + +### Requirements and Limitations + +Using decorators requires the following: + +1. **Matching Object Names**:
+Decorators will reference variables that exist in the `teal` module server function and therefore must use the appropriate variable names. The relevant object names available in each module are included in modules' documentations. +2. **Maintaining Object Classes**:
+A decorator must not alter the class of the object that it modifies. +This is because a different class may require a different rendering function and that is part of the module structure, which beyond the control of decorators. + +## Building Decorators + +### Server + +Here we create a simple decorator that does not provide user input. We will use `tm_g_bivariate` module, to illustrate +the example. Knowing that the module contains an object of class `ggplot2` named `plot`, we will modify its title and x-axis title: + +```{r static_decorator} +static_decorator <- teal_transform_module( + label = "Static decorator", + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + req(data()) + within(data(), { + plot <- plot + + ggtitle("This is a better title") + + xlab("the real x axis") + }) + }) + }) + } +) +``` + + +### UI + +If decoration requires user input, a `ui` function can be added. +Here, the x-axis title is obtained from a `textInput` widget, giving the user some flexibility. +Note how the input values are passed to the `within()` function using its `...` argument. +See `?teal.code::within.qenv` for more examples. + +```{r interactive_decorator} +interactive_decorator <- teal_transform_module( + label = "Interactive decorator", + ui = function(id) { + ns <- NS(id) + div( + textInput(ns("x_axis_title"), "X axis title", value = "the suggested x axis") + ) + }, + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + req(data()) + within(data(), + { + plot <- plot + + ggtitle("This is a better title") + + xlab(my_title) + }, + my_title = input$x_axis_title + ) + }) + }) + } +) +``` + + +### Variable Names as Arguments + +The server function of a decorating `teal_transform_module` must conform to the names of the variables that exist in the server function of the decorated `teal` module. +Writing a universal decorator that applies to any module is impossible because different modules may use different variable names for their output elements. +It is possible, however, to create a decorator that will take the relevant variable names as arguments. +Here, the `output_name` variable name is passed to a decorator, allowing it to work with multiple modules. + +```{r dynamic_decorator} +dynamic_decorator <- function(output_name) { + teal_transform_module( + label = "Dynamic decorator", + ui = function(id) { + ns <- NS(id) + div( + textInput(ns("x_axis_title"), "X axis title", value = "the syggested x axis") + ) + }, + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + req(data()) + within(data(), + { + output_name <- output_name + + xlab(x_axis_title) + }, + output_name = as.name(output_name), + x_axis_title = input$x_axis_title + ) + }) + }) + } + ) +} +``` + +Note that when the function is used, `output_name` will be passed a character string but the expression passed to `within` needs a `name`/`symbol`, a language object, hence the argument value must be converted to a `name`. + + +## Using Decorators + +### Single decoration + +Here is a minimal illustration, where decorators are passed to the module through `decorators` argument. We create a helper function `tm_g_bivariate_decorated` that works on `tm_g_bivariate` with some custom setup, so that we can illustrate multiple decorators on the same module with the same setup. + + +```{r tm_g_bivariate_decorated} +tm_g_bivariate_decorated <- function(label, decorators = list()) { + tm_g_bivariate( + label = label, + x = data_extract_spec( + dataname = "CO2", + select = select_spec( + label = "Select variable:", + choices = variable_choices(data[["CO2"]]), + selected = "conc", + fixed = FALSE + ) + ), + y = data_extract_spec( + dataname = "CO2", + select = select_spec( + label = "Select variable:", + choices = variable_choices(data[["CO2"]]), + selected = "uptake", + multiple = FALSE, + fixed = FALSE + ) + ), + row_facet = data_extract_spec( + dataname = "CO2", + select = select_spec( + label = "Select variable:", + choices = variable_choices(data[["CO2"]]), + selected = "Type", + fixed = FALSE + ) + ), + col_facet = data_extract_spec( + dataname = "CO2", + select = select_spec( + label = "Select variable:", + choices = variable_choices(data[["CO2"]]), + selected = "Treatment", + fixed = FALSE + ) + ), + decorators = decorators + ) +} +``` + +#### Application + +Note that every call to the module (`tm_g_bivariate_decorated`) takes a list containing _one_ decorator. + +```{r app_1} +data <- teal_data() +data <- within(data, { + require(nestcolor) + CO2 <- data.frame(CO2) +}) + +app <- init( + data = data, + modules = modules( + tm_g_bivariate_decorated("undecorated"), + tm_g_bivariate_decorated("static", decorators = list(static_decorator)), + tm_g_bivariate_decorated("interactive", decorators = list(interactive_decorator)), + tm_g_bivariate_decorated("dynamic", decorators = list(dynamic_decorator("plot"))) + ) +) +if (interactive()) { + shinyApp(app$ui, app$server) +} +``` + +```{r shinylive_iframe_1, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} +code <- paste0(c( + "interactive <- function() TRUE", + knitr::knit_code$get("setup"), + knitr::knit_code$get("static_decorator"), + knitr::knit_code$get("interactive_decorator"), + knitr::knit_code$get("dynamic_decorator"), + knitr::knit_code$get("tm_g_bivariate_decorated"), + knitr::knit_code$get("app_1") +), collapse = "\n") +url <- roxy.shinylive::create_shinylive_url(code) +knitr::include_url(url, height = "800px") +``` + +### Decorating Multiple Outputs + +Here we will apply decoration to two outputs in one module. We will use `tm_g_distribution` module +to illustrate the example. You can check module's documentation `?tm_g_distribution` to see that it allows +to adjust objects called: `histogram_plot`, `qq_plot`, `summary_table` and `test_table`. In this example we will modify `histogram_plot` and `qq_plot`. Those names need to be explicitly used in the decorators. Those also need to be used as names of the list passed to `decorators` argument. See `Application` section below. + +#### Application + +Pay attention to how `decorators` are passed. This is a named list (where names corresponds to the objects existing inside module) of lists of `teal_transform_module`s. We will use `dynamic_decorator` to edit both objects. + +```{r app_2} +data <- teal_data() +data <- within(data, { + iris <- iris +}) + +app <- init( + data = data, + modules = list( + tm_g_distribution( + dist_var = data_extract_spec( + dataname = "iris", + select = select_spec(variable_choices("iris"), "Petal.Length") + ), + decorators = list( + histogram_plot = list(dynamic_decorator('histogram_plot')), + qq_plot = list(dynamic_decorator('qq_plot')) + ) + ) + ) +) +if (interactive()) { + shinyApp(app$ui, app$server) +} + +``` + +```{r shinylive_iframe_2, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} +code <- paste0(c( + "interactive <- function() TRUE", + knitr::knit_code$get("setup"), + knitr::knit_code$get("dynamic_decorator"), + knitr::knit_code$get("app_2") +), collapse = "\n") +url <- roxy.shinylive::create_shinylive_url(code) +knitr::include_url(url, height = "800px") +``` From 961af62f92abe454f9c813767d8b0ff28755082c Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 11 Feb 2025 11:29:58 +0000 Subject: [PATCH 02/18] [skip style] [skip vbump] Restyle files --- vignettes/customizing-module-output.Rmd | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/vignettes/customizing-module-output.Rmd b/vignettes/customizing-module-output.Rmd index cdcf21ce0..56cb63179 100644 --- a/vignettes/customizing-module-output.Rmd +++ b/vignettes/customizing-module-output.Rmd @@ -264,8 +264,8 @@ app <- init( select = select_spec(variable_choices("iris"), "Petal.Length") ), decorators = list( - histogram_plot = list(dynamic_decorator('histogram_plot')), - qq_plot = list(dynamic_decorator('qq_plot')) + histogram_plot = list(dynamic_decorator("histogram_plot")), + qq_plot = list(dynamic_decorator("qq_plot")) ) ) ) @@ -273,7 +273,6 @@ app <- init( if (interactive()) { shinyApp(app$ui, app$server) } - ``` ```{r shinylive_iframe_2, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} From d05780e21cf5848281e1104885f398892efd8d27 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 11 Feb 2025 11:35:52 +0000 Subject: [PATCH 03/18] [skip roxygen] [skip vbump] Roxygen Man Pages Auto Update --- man/tm_a_pca.Rd | 8 ++++---- man/tm_a_regression.Rd | 8 ++++---- man/tm_data_table.Rd | 8 ++++---- man/tm_file_viewer.Rd | 4 ++-- man/tm_front_page.Rd | 4 ++-- man/tm_g_association.Rd | 8 ++++---- man/tm_g_bivariate.Rd | 8 ++++---- man/tm_g_distribution.Rd | 8 ++++---- man/tm_g_response.Rd | 8 ++++---- man/tm_g_scatterplot.Rd | 8 ++++---- man/tm_g_scatterplotmatrix.Rd | 8 ++++---- man/tm_missing_data.Rd | 8 ++++---- man/tm_outliers.Rd | 8 ++++---- man/tm_t_crosstable.Rd | 8 ++++---- man/tm_variable_browser.Rd | 8 ++++---- 15 files changed, 56 insertions(+), 56 deletions(-) diff --git a/man/tm_a_pca.Rd b/man/tm_a_pca.Rd index 3740dfea2..040c0dd8d 100644 --- a/man/tm_a_pca.Rd +++ b/man/tm_a_pca.Rd @@ -197,13 +197,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLqkQ11XfxQpFC6cAAesKgiSoHBBsZc1AD6sVA2MUEhRroA7rSkABYq7Km4uiBKurqMcACOgrQ17L6ipMTURIyKEFWOAMoAgow1raLxuv1DI6SiSgC+3UpoqOMq+eyVAZm6ALxbwbibfEIiY3vHwmIbPVW6pDBJUEmoBGmbt7oKYAAKAMIDX0ONw+sV2+ye4VIzA0SVEqDgBGuHxBmWg8DBX0mwzEM0B72RojgIg0YMJxNIsPhiPxyN0BAKRFoBDEYK0LFoUHoIiS9MZzNESNpyNSYNSwGAmMG2NGXwAurKytSwABZQSMfgyQGfMADUSiKDCUhazGMehQCDfIioY1gLBoOBfbpC25yIHOqpkhHkfhgpWq9WavDa3X6w2Ot3umCG2hRPR7BwuGkuiO0ky0ajkRhggByjgAMnmk06XZtut1aCZdOwVJn1JodDZbBUbqIihBWAN0OxlgASBplXuExg6LrzJRgOayoA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLoDCAEQCSAMreuvxQpFC6cAAesKgiSmERBsZc1AD6SVA2ieGRRroA7rSkABYq7Fm4uiBKurqMcACOgrSN7BBipMTURIyKEPUAgr6BADIpumkYWYiIjCPjSgC+AwBWRCrpANZwrKKVebYF-HAmUMKk6QT8tKIE6Rtbu-vA0PAHWXIAuu5oqJMVCV2HVQnldABeMERXCgvhCESiSG6eHCMQgwb1KYwdJQdKoAjZUFY3QKMAABW8QzJsMxJKSyKy6RipGYGnSolQcAIGJJ9Ly7z0ULJizGNOJfNEcBEGmRUplV053N5fJJBFKmwIYmRWhYtCg9BE1w1tC1BwlqvqWUZeWAwBFozFYG+32qPLJACEALJYADSWAAjDTSWAhgBxVx4EPOADygV8AE0yQNLVi5LTU-V5dzyPxke6wN6-YHgyKI8mM5mYJdaPEhfYnK46Xz0xasSZaNRyIxkQA5RxjMXN+optOggYDWgmXTsFTd9SaHQ2Wy1TGicoQVhDdDsf4AEla1X3UsYOn6KyUYGW3yAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_a_regression.Rd b/man/tm_a_regression.Rd index 4e78dd9c9..9c6b67744 100644 --- a/man/tm_a_regression.Rd +++ b/man/tm_a_regression.Rd @@ -222,13 +222,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLqkQ11XfxQpFC6cAAesKgiSoHBBsZc1AD6sVA2MUEhRroA7rSkABYq7Km4uiBKurqMcACOgrQ17L6ipMTURIyKEFUAwgDyAEzxugODSgC+3UpoqCMq+eyVAZm6ALwrwbjLfEIiouu6u8JiSz1VuqQwSVBJNRI1oqJWEGcXF9RQ9HD+GwpgWDgDzEzxI-2253ej1QJFEeg2qSS4VIzA0SVEqDgBDe7wuqWg8EO-zG4OWuN0cJEGkOlKxpHRmOxZPJuk+31+un+AGUfnTdFoWLQviJEKTISyCAUiLQCGIiWBBKhggBrOBilkXWkaOD8eWKlVqvDM8kwYSaKLw3QAMQAggAZLnOCEaqomWhhHWHBwuY0XbrkuTO3H3R6iTqHRHI1H0jFYnHk-GwS3Eobqlla0g03lo2NM8Xktk-eU8qmZgWMIX0faio353GS6Wyg4bcuVkRJBsy06pYDAFPjMAAXUHZSZhBIBHBnLAdhqQXgZH+ckDvveGc9f3HFjTGtN1HNIi9Tidq4ubo9uo2todrjrVX9uIf9+W3W6tBMunYKnI0e0cBstgVOcohFBArA2ug7CzAAJA0ZQwXCjA6F0kxKGAEyDkAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjA0lA0g0JA1RKIrBB0ZjMdQoPQ4NQkQowFg4ASxMSSPSYRjyYTUCRRHpIZk0tFSMwNGlRKg4AQyeTMZk3vzdPSFqN2SDZbo+SINEitVLLhKpTKNXVKdTaZD6QEafrdFoWLQqSJEGrOSaCCUNgQxHSwAAhACyWAA0lgAIyuk2YvUaOD8X2BkPhyNR5EXWhxRUAMUGowCzg5qdMtCicaRDhc6tl-Q1ckLsvxhNEvSRguFooNkulVfJ8tgiuVI1VeB70ZtOshMc7RtH5LNNN91u1pDtDqdYhdI7dGo9Xp9kPtjEd9BEV09tG9H1ywGAg8WYC+Xyq3bAgwA4q48EqwPmABrs78sEGLxPzkOtZzHZcy0tV8PxTKMYHTTNyycAsILqEwS2g3QczzVxt0xGtqyrIj+n6WgTF0dgVHIDttDgGxbBqDFRDKCBWEGdB2DQVAABIWiqHjeL5RgdD6ZYlDAJYviAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_data_table.Rd b/man/tm_data_table.Rd index 6540451fb..f013fd316 100644 --- a/man/tm_data_table.Rd +++ b/man/tm_data_table.Rd @@ -122,13 +122,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlQ20onG6vaJKAL5dSmioAyp57BX+GboAvAtBuPN8QiL9K5vCYnPdlbqkMMkZiUH0IofHx1ostFDXYomicCIacPzLunQttzuxyGvwIczAAGU4KhuBgADIUCQFBR4XQoqEwngAdVo-GRqJRAAU4EEeAiIEj8ijSkSSbCcXiqQTIag4ARaGIUV0gbo5Osjnc8YkWBIdn8+qR2AQ0JoSL8UQBJLAKiH2Z4iXQAYRlVggXPmlW5vKUXVoJl07BU5GYlh0Nls5SOokKEFYAEF0OxJgASeqlH3vRg6TqjJRgEYAXSAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjAMrk0uF6CJ0ZjMVoWLQoASxGlRHARBo4PwkXRRKR2AtxpCCMCwAE7I4fABNPw+BR4XSixwBRwAIQAUsLRVVRVK5Qqxcq-HZnGqlWBBgBxVzqnnOAAaorkchhGOJ-EuLAkiMhzNZBDQmhISNF7PsFJE3ndVggFpBdX6YaU-VoJl07BU5GYlh0NlsNQxojKEFYg3Q7DQqAAJC0qvmCzTGDo+sslGAll8gA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_file_viewer.Rd b/man/tm_file_viewer.Rd index cf3b5cdd3..a1617b9db 100644 --- a/man/tm_file_viewer.Rd +++ b/man/tm_file_viewer.Rd @@ -54,8 +54,8 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqX8opKAeNdqAfQ8vG3dPbyNdAHdaUgALFXYgqFxdECVdXSSfTLCME2Z4dgBGRQgAX1KlNFRslRj2dJyvXQBeJuTGviERUVbdLuExBogMjNIYfxNaEX8tWjhImWHR0ZVUQVJ-VE9YvrpRUmWV0ZMian4ZPtFWA7gYPOm4BrBRWFQZqZ6FPF1tggBrKBSPrfPy8ASDcRSCBqajfOS4RrHX4QCRXG7ke6fJ7fV4wd5wSaPUQAejxBKJIgwqFR3xSf0BwLaoLg3HB3TEkmksnhiJGyN0pAAHqR0bcsY9nuSPsSyW8ZVThaQ6b91Iy9MywGCBj0uTCeWAEUjjoJGNQQWBYqRSKhRIgSSSTB5JEQtI7ZfxGIIJKT1vR9rE4PwSQAFIiMLz+uCGAAiRAIgngZEMADFwzBPIYAMqoOAEWhTAieKwQcSofgmb7GjKlFa13SlUoF3TsFTkZiWHQ2WxpfmieIQVgAQXQ7GqABJBLQUhPRDIdIxSmUlGAygBdIA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_front_page.Rd b/man/tm_front_page.Rd index 26632b617..4ea5c0bfd 100644 --- a/man/tm_front_page.Rd +++ b/man/tm_front_page.Rd @@ -100,8 +100,8 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqX8opKAeNdqAfQ8vG3dPbyNdAHdaUgALFXYgqFxdECVdXUY4AEdBWiz2CDFSYmoiRkUIDIBBABEAZQAZH10-DCTEREY6pvTdT1JGdh7GlIUweC8k8dsIulFSdnHqwTjy8d0AXl1xgDlnertWuFhxsbAk-1EiQUYCOA3t8dFWMli4TQJdabBKgF9KgArIgqfwAazgrFEiTCs2M-DgJigwlI-gI-FoogI-mBoIhUOA0Hg0KScgAum4yFB6CJ-ABGFpJDAmZjwdgASQgJiIW10BCWYGqZx2YAAQjMUnY4AAPUi8-nLYXjcW-SpeGlwfwAJkZYWZrLg7AABgBhIjUQQwKp0o3ygUmpVgWoS3Sm82Wqpa23bfkAVgwvpSADYMEG5Ck3RarboAMzevkCoV4EUquRq6m0mO6rz62CGzncu3jVzJ8YAMRdUtlRbAAHFHQAJGaVJTq2kqVCrFrzRZ9cZ2DN6OmPVqD+m4PtgAca3RakdtzVaidVEXTkSx+djmNKFvQdAtFQxJYrpK8pLLjJ8IQiUS8q-CMTHjIZUgwfwskio1BQKRP58Zd4oARRh-HIasfT-f8MnGdkYFQcovDIXQVG5RgYE8KwIBHGC5QIKAqgkHl3iyDAzj6KCRQAeTiGRkK5cp0M0EhsLAE18N0QjdGIuBSLAcjn3DfiX0HW9tgXfwO1WC8oKAjEmOgAIvAkUTdAbOwAFlGkTfg5Mw7hVI05pyl0UR4ggVhR2UjiiJkPR9CYAA+CUhNMIgiFICB3LEGsAA0WMxVp3lMfIFlc9zPPIR0AE1kNvGiTLgYgIH4MKPK8mZ+MqDJKlsAAfJyVyvWgTFYfxAOAzgf1EAASWI6QFepYFQddqnQOg8Pk5tdHyvoipK983PIIYlJq1BEza2gOsw1KZGbSlit0dgVCG9RNB0GxbDSFdTJUVhWrGtBUGqvIUkO6rRBkHQKiUP4lDAP4ySAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_association.Rd b/man/tm_g_association.Rd index d1bd27f4c..0ad159cdc 100644 --- a/man/tm_g_association.Rd +++ b/man/tm_g_association.Rd @@ -185,13 +185,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlQDCAPIATHG6-QMVpuqkHaLD0PCi7ABitNTkjOy0og4upVpokRyjpZsYJpMdpe0StATc7ACMADJyL129g8BnGtMAusPU+2ohw+XymjFEP1KUHEBHyLEmMi6AF8ukp9sMVHl2OMUroALz+DK4cZ8IQiGYE0nCMTY7qVXSkGCJCSJaGiIgEWiBKwQWn0+nVEz4wlBRJhUjMDSJUSoOAEPn8+kpOZ6AkKMCjdXEumK3SiOAiDTC-WG0jS2Xy8a6yoA+gG4XqgDKBrlpF0e0YXPoIkQWqt1thRBuYmFHq9IkSgeDCxSwGA6s1YB+kN0lrAAAUAWQtbp1XZWLKc3nqoF4NmwC9tdb6SbXXB+A6M1nSH6ddaTLRQvXhYsAIKPR2uNv8t6KuRVxUeikiqBi0ISybmuUK3XK2Cq3Mawat6u1o0EvdmmXL-26232tVgZ2m90scNiX14U+KqMEEMEsNQb1wSP5INvmMMjjBNtyTFM00zKBy1KPMCzgIswDsEtGQoFsK3HZ9+UPbtLyQuBS1Qndq10GBhE0SIN22ZwJ2rDsuwbAk+wHIdq1HEd-VHLouloIUNlUSVNB0GxbHKOlREKCBWF7dB2H2AASeooXQOT9UYHROiUJElDAJEfiAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjA0hI0lBRKIiARaGErBB0ZjMQ0TEjMmloqRmBo0qJUHACBTKZjMm89JCFGAFqMBTCMVzdKI4CINEjJdLLqz2ZzxXVqFB6FKkQKAlL2aRdFoWCT6CJECKQSrdAQShsCGIkYbGMaRFcbbQ7fsLZaoVBgMABUKBV8vqLvZiOdrnAANEW6AVYQZeVx4ONgLwAeUcADkHABNWMBrAAWQLYACDkGdkGAEZS+WE1WAEylvx2OwAMWFKYFACEi1gANJYZtgfphuSh71yvVwfhasAJpPmsUqky0KKzpHtwajAKuFeUsdcideuqOxGQukMpkKtkRg-c3K8+eBvCnzHTmWQz+3pXvylqhq1Dzjq8oGka6oImab4PpS1q2vakKOs6cCughnqwVymR+gGIxdsGk5hhGZbRqWi7JlUAoZtmealoMxZ1hWVa1t2ZZMYMI6UWArYdl2XF9oOw4CkelonphdQ-pu-JgAJQ6cf+mIwBctBxHy9hOM4hGruuUm6Nuu77qJ74iboR79P0tA0uwKjkDe2hwDYtg1BiohlBArCDOg7BoKgAAkLRVD5vmSowOh9MsShgEsXxAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_bivariate.Rd b/man/tm_g_bivariate.Rd index 42a7245bf..7124611af 100644 --- a/man/tm_g_bivariate.Rd +++ b/man/tm_g_bivariate.Rd @@ -256,13 +256,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlQDCAPIATHH+GRgmzPDs-QNdAL5dSmiowyp57BUjsQC8m1C4G3xCIqK6O6QwiRKJ9NostIFw692VuqGnu4lhpMwaiaKocAITxeLxS0Hg7wUYGmUP2zxBojgIg070RyNIfwBQI2IMq1Cg9CRkLAAGUkYDSLotHcCSJELCcbiCPkiLQCGJ3tTGPd6CJEszWezRMUMsBgFCYWAALpSuRw3EvNEUuD8YnECwM+G4ky0UIq94AMQAggAZEmuLWVLoguWM1jvFKfULfdQY-6A4G4sGwPQ7CWDTUKpUonbBt1Yz0K-GEvx+0nklFcnl0wMK3QCtkcnZJ2lwfkszPClJi-0DKEy22WxUJ8iquOCVBBADWcFTCpgwk0kV9umNZuc8rTOr1dd7pvNjKtjMrIMYRGyiRM6jglJ2jq+P3DHsnu3BPdLber6NRNcx26reIJRLjZOPOd5cHpeB3lQzQs5NIf+cFYhFQRL0IBtKsqDkGNb6nGdisACh4gsOEFjv2O7Wi8M4vG0i7LquHwbq6Z7YlW3oQnGkqgUeFInui+GRri0bXroUK3hR94ps+F7pgW77Zp+fJvr+xbioBZbAWhYHoghUJ2NUgTwGQsEvPBo59hOVYoVOzxdF0tAmLo7AqOQm7aI8ci2OUzyiIUECsEa6DsEsAAk9SlA5iKMDonRKLMShgLMUpAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIZMYGkJGl6NoWLQwnBgQM6rookjMmloqRmBo0qJUHACHiCQTMm89JCFGAFqM2TD8QzRHARBokXyBZdqbT6QyCdQoPR+Ui2QF+bTSLotFiZSJEFyQZLdAQShsCGIkWrGNj6CIrgbaEaPrlgMA2Ry2V8vnJubq6sLlXB+PL2QBxVx4HWSky0KK+pEAMUGowCrh5BP6DPdodYxNypKi5PUoppdNDdSZsBZuidI05IaTXqVgsh3spYsLNalMrlrLAipFqvVFrgWurnr11ttJr7lv1hrEB3CDorizArrTrdrIqjnYTAA1tavdDALrQ4mXY-HnB7PeHI37IaeE0XdCnkxe6owiAU0mcjSrISSyRT83FB8S3gf1nSHSVGx-XQoKpAsJV1aVZWof1u2VXszQ1Add2HKcbWNSFTXNSdRxnTJ53ZSsXTdF9ILrcgb3LdksAAWRwy8Iw3XQ70TXUnzqFcGW6T91DgaC-xzAC4KA1sQLLBcq1otd0IbejpJbYckI7Ji0MFIisMHJSCTwsdCInOArWnO050dSjF2XIzlI0Li2S8AB5RwADkHAATXY3Ury4niH34x8QX6fpaBMXR2BUcgAO0XE5FsGp8VEMoIFYQZ0HYNBUAAEhaKo8vyvlGB0PpliUMAli+IA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index 2a47ed6a3..22bae3e63 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -192,13 +192,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6urSMtKJxVTWiSgC+ihBKaKj1KnnsFf4ZugC8A0G4-XxCInUjdKKkfRCVlaQwiRLJtaQ19IKa1v3L-luJWizDo1CJYdvqpImiqHAEi0dHKdDwFwpg1bU-4yWb0qojgIg0F1B4Puj2e7DONSg9BEiQI+SItAIYj6v0aPzkpR+AAU4EEeAAZCgSAr4w7LNpHBm6NptWgmXTsFTkZiWHQ2WzlIGiQoQVgAQXQ7E6ABJBLRSjLQYwdIw2s0lGBmgBdIA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index ffcca22ab..f454d325a 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -212,13 +212,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQlTCtLKJxur0E-RWmHbrsWroqugTsCoSs1Iuli1qiq7qLsFuLUiyLcrbl3ZVDfYyiwMBaALp3g1DiJuqkHezD-Tf3d12VAF8lACuko0KhBio8gszildABefwZXBjPhCEQDRFo4RiGHnXSkGCJCSJaqiVAkURwPH43TUKD0OB+RGLLBiCkQKm6AAK7VImzwY3xZI5XMRKUSYVIzA0iXJcHmQtpKWg8AR2zAXyuqyV+KpIg06v1CtIctQCpptPO9MZzI1AGUmSbdFoWLQGSJEDqzlbKgR8kRaAQxOrXYx3fQRIl-YHg6JihkbostQKHqVFUsVngNQdGEc5Cifb7jRo4Px1YsCMtvb7zjBhJpInpEQAxACCABl7c5C7XKiZaKEy+r213XEX8f9aQXdbpQuqJVKZab5YqJ+cVbBmxqUzXi07DYiSyvzWu+3SGUyK2BHQbSC63R64F7Bev8TGgyHEWGI1GP3GEyCJNNUuVM7nTBYwA2PYUBgfNez7Y9hxZKCBQQ2t62oRsRBHTtu3Q30ByHctWzw8daynSclSnLouloExJhUchl20aljjKMZREKCBWDbdB2HBAASepSiEqlGB0TpgSUMAATuIA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGWTdVIxMxERGYbGlAF9+gCsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI09c2dveBoeH3MuQBdN2h0CZUxXYtRCuV0AF5QeFcCC+EIRKIIbo4cIxMCBnVJjA0hI0g1RKgSKI4OjMZjqFB6HBqEiFGAsGJCRBiboAAo9UiiOkwjFk-FMlmQzJpaKkZgaNIEuAEUlkzGZN56SF0hajbkguW6YkiDRI7XSy5SmUazW6ClUmnKsABakG3RaFi0SkiRDq3mmgglDYEMRIh2MJ30ERXL20H0fXLAYAqkZqsBfL5VY1gABCAFksABpLAAJm5ujpXgA8o4AHIOACadLkch5psx+o0cH4tNTGezebwJs1MAutDiSt0ADFBqMAs46-XTLQos2kSOx653WT+pra93dFEkcLReLDahpbLNQrYIOY4su8uG7bdZDG-vDxuyebqa2bTrSPbHc64K7L1PdE9b1fUhf1A2DICwzRTIo3POMEyTYFrWcAANfM6SwQYvFcMAa0net7znK1MOwt0AN7ahNAHedR3HfDTRMGciOHWil3rVc5Q4uoOP6fpaBMXR2BUcg920Eka2qEFRDKCBWEGdB2DQVAABIWiqJTlOJRgdD6ZYlDAJYviAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index 334fbbed5..621f743a6 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -306,13 +306,13 @@ if (interactive()) { \describe{ \item{example-1}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index 6098933ab..176d01167 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -214,13 +214,13 @@ if (interactive()) { \describe{ \item{example-1}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dfihSKF04AA9YVBElUPCDYy5qAH1EqBsEsIijXQB3WlIACxV2TNxdECVdXQBBHwCAGWTdVIxMxERGRpbahp8sALaOrp7G4aUAX0UIACsiFTSAazhWUQrc23z+OBMoYVI0gn5aUQI0xeW1jeBoeE3MuQBdN2h0NpVi9gHM3QAvCFcrgBnwhCJRIDdODhGJfhA6nVSDA0hI0hcwuRGHEiCiwoxaFEEUikdQoPQ4NRoQowAECFiZLjSDCCUTaaDEaTdFoWLQKZDoXRRKQSdy6pk0tFSMwNBjUHACGLxRLcg89EDaX1mhyBirdKIqYqWUDDSI5aIFUq9frdOTKdTNXSjRoeXyBWJELqubbdAQSksCGJobzCR6TgHaEGnrlgMAtU0dWAXi85JzfXUzca4PxodawPUAOKuPC6WlYepeEtVWkBZwADVpaZt+pgR1ocQ19icznTGaIjD2jBz0IcLj7vpMRJHQIAYvVmnWW9y5vrmz7uZLpbLjpbFcqVZl1TSC0MAt7J7RqNjoVPrzJ5fvl+L7VSTwEXSyKPxUEsyKIvTwZ9uVDKEgXzAAFeoKwAWV8DkywLAA1QI-DsJsJ1tf1A2DIFeWoQQ4AjHCY3COMEymZMXiqSDoPqOCfAQrUUICNCML9X4wCg2CmOQ1D0LAOR1wzA1PxnRC-AAOSQ5w7F0YxnEknxdAAeVnXQpJ8RwvDsPwVMki8Mzba8OxEUce2AuphNtLNXVNT9H2tDd9VfR1EI-c0WVDfl6EhQDMP1bCo1wt0w18oigujLYyPjU9KJTazfVs8hc3Azii2rRD6iQhdeMaABNDDLKRYzNE7czx2KuoByHcSx17KrTGnVLdHnRdXGcldgNXLqNx6uY5loExdHYFRsXUTQdBsWwai5UQyggVh6nQdg0FQAASQRaCqNb1sNRgdEYOZpiUMBpheIA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index bcbc7f63a..4ebf35a34 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -167,13 +167,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrquuAAesKgiuvxQpFBK4ZEGxlzUAPoxUDbREVBxugDutKQAFirsKbi6IEq6uoxwAI6CtNXsPqKkxNREjIoQFbpQ-PyJ0KJZZhaa1gG25RCVlQHAosEi7KK1idwkEuyTpSbtHewiEBIF27YAVFXmtCbsAIylGAAMAKyPdwDsct8AulkAcgBBHpzHoAXzcM10DVowyM0MYsJ6MFaLDhxhRBDRkMqMNEwD+8OoaBCHDxpT6AyGXUqmLRBKyxPQ1A4dMYogp-UGUFENN0bPxwAUhFY1GFP0Jxh5GBM6lIBwFwCFIrFYAlfMVyqkLHFkt64llGgVqPZSuF2sYuq6YK6ShJWRUeXYPRSugAvGEMrhkQJhGJ3fzfSJRM6oZVSDBEjBYaIVBJkhl2KgWBRSAnItB4AHhQLhXyul0brp2CpyMxLDobFMeqJChBWID0OwSQASeoU9At1aMHSdJQQiBgME-IA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dOAAPWFQRXX4oUiglGLiDYy5qAH1EqBsE2Khk3QB3WlIACxV2TNxdECVdXUY4AEdBWgb2CDFSYmoiRkUIOoBBHwCAGXzUjEzEREZhsdrdYawA-LmfFaUAX36AKyIVNIBrOFZRCtzbI2i4EyhhUjSCflpRAjT9w5Oz4Gh4c8ycgAum5oOh8ipiuxFpldABeaK5XCLPhCESieG6VHCMTQgZ1XSkGBpGCvUQqCQZXLZfH9fq0Ey6dgqcjMSw6Gy2Gr40RlCCsQbodhoVAAEhaVRFotEMh0fW2SjAWyBQA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index 6103fe462..dbd42eead 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -201,13 +201,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLqkQ11XfxQpFC6cAAesKgiSoHBBsZc1AD6sVA2MUEhRroA7rSkABYq7Km4uiBKuroAwgDyAEzxNQ2VzfXAwApgqIy0MCysSQDWcKxdALrjTaJwAI5JIhDsEIxEOex19XKKEAC+OwBWRCrDo6IlmbbZRycjrOc3EKccXZtdZa8teLpdPX0Dzy623cWhYoiaBAKxwIYiSMxEGjg-HYoN6UHoIiSkOhYguwQ6n3qE3GZQI7C6AAVqFAyO8fmA7KxUHA6V07Iw4EF4LSwNsdko0Kgmip8uSIFVUroALwBTK4Vp8IQicEyxXCXGtKqkGBJIiCUh0GTnTVVXR6g20GRJVHS3R0USkMWm52y4JJcKkZgaOHMskml2ummwPQywnvf0u+FwDS2qPe0S+p0Bl3U+hwfyhsAAZXT0dIulRtHRIkQ4fFyed2NoMJVBZYRYxcCxUOruNSBLAbzAk1J5MIJAIrLAglQwRGQLk8vLFaqcfI-FtXRHY5ZeAjAZgwk0URDugAYgBBAAyWecU5nppMtDCSNth5PrmnyZ2FZfLsnEYIQTgEiIvS-yQ2jK9qOuugbumEnrqKQPrRkmFapNA8CLp2XznjOV7UOQjC2ph2GwX6T4VqitYkehF5VjWtqgtQghNpRbaZB2XY9nWjCiAAJHOSIfkRybcQuMo0XRzY4uc7adKhRLdiSbGcQJvEXlUm5YbQO62g4LhgVUb4Brppr6W+Ow7LQJi6OwKjYdB2hwDYtgVOWohFBArAHug7CChxgi0GUnkzIwOiMDsuxKGAuzjEAA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokrcQAxLoDCAEQCSAMreuvxQpFC6cAAesKgiSmERBsZc1AD6SVA2ieGRRroA7rSkABYq7Fm4uiBKuroAgr6BADIpumkYWYiIjE2tSgC+ihAAVkQq6QDWcKyilXm2BfxwJlDCpOkE-LSiBOnjkzNzwNDw81lyALruaxrpWiyi6VD8otTtZ2LsAGK01ORGOxdg4XNVRGh4hwssBgAowP0WvCrldqrsMHdSERGHJcUpHoxRO0CKUJgQxOlRHARBo4Px2ATaFB6CItqTaOSLnlYfDEcjUaZ1JsCc9Xu88RB3EpIe0VCV2HVQnldABeJURXCKvhCEREtXa4TfRX1UgwdJEQSkOgyebG+q6C1W2gyB4sVW6OiiUgKiD2v3qqDpGKkZj3USoOAEH3+-1ZL7u3nNJF4O0xqk00ju9ORzbhyPRmP+6jM6kJsCBak53SM5kiRDwzW+wt+klksTumssuBsttciI8hFJ-nVKO8gDirjwunhACEALJYADSWAAjPDcY3m37s7T+GWGhOG6nCzANrR4no1T8Gi1As5N1v6iZaNE6e7r7fXE3myMf8e5A+LbhHAEjYhy3Cuow7qet6x71FkQbRCGQqUhGo7foWcawJe06DgMKYYTGz4AjI7rEYCqH5nB-oih2TyAVurYcu2aqPNQgjdkxnILP2cJ4cmKLVCKAAkO7kPwAHUdula7nR7Gcey3EwnxfJgIJ1ZPKJMniZJhEnmeF7uqCX6Pr+hZmX6Fm6GZIwjLQJi6MCqihpoOg2LYtRNqI5QQKwDToOwkLCYItDVEFVKMDoOJDEoYCDFcQA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index f4d3a2e5c..446eb488e 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -185,13 +185,13 @@ if (interactive()) { \describe{ \item{example-1}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \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{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } diff --git a/man/tm_variable_browser.Rd b/man/tm_variable_browser.Rd index 9e66305c9..d2f271e60 100644 --- a/man/tm_variable_browser.Rd +++ b/man/tm_variable_browser.Rd @@ -114,13 +114,13 @@ if (interactive()) { \describe{ \item{example-1}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXVIhrqu-lCkULpwAB6wqCJKAUEGxlzUAPoxUDbRgcFGugDutKQAFirsKbi6IEq6urSMtKJxVTWiFbowpAQsdVmt7YxNEJXZRPD9WYPDzSZQeflmflmT07PNAMIA8gBM9WvrSgC+ihBKaKj1KnnszSm6ALz+GbjNfEIidbdPwmIX-ZW6pDCJWhYtCg9BEiSYRGyohkXx+P2oILgfluCjAADUgSCRLoIVCZKjmpUDkSlAdaCZdOwVORmJYdDZbOVvqJChBWABBdDsY4AEkEtFKvOhjB0jAOuyUYF2AF0gA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } \item{example-2}{ \href{https://shinylive.io/r/app/#code=NobwRAdghgtgpmAXGKAHVA6ASmANGAYwHsIAXOMpMAGwEsAjAJykYE8AKcqajGIgEwCu1OAGcMAcwpxm1AJQAdCLTIyoBUrQBucAAQAeALS6AZoIgbaJdnN0AVLAFUAokqUBiXQGEAIgEkAZS9dOAAPWFQRXX4oUiglOiYWDlFUFgBrOgg4RQgYuINjLmoAfXyoGyVywt0Ad1pSAAsVdnLcXRAlXV0AQR8AgBka4oxyxERGPsGu3p87O2dhuG5R2KhxybmFpQBfXIArIhUS9LhWUVa12yNouBMoYVISgn5aUQISw+PT8+BoeAu5TkAF03NB0DUVA12DNqgBeaJrXAzPhCESiXQI1HCMQwiDdbqkGAlLQsWhQegiEpMIi1UQyPEEgnUClwaiY3QKMAANTJFKiNLpMi5M26uTFSlytBMunYKnIzEsOhstk6+N0omaEFYPXQ7DQqAAJIJaO0DYb6YwdIxcjslGAdsCgA}{Open in Shinylive} - \if{html}{\out{}} - \if{html}{\out{}} + \if{html}{\out{}} + \if{html}{\out{}} } } } From 6c723aa62c852d89fd3c82e7c3fd7276813d6fd3 Mon Sep 17 00:00:00 2001 From: vedhav Date: Wed, 12 Feb 2025 10:26:30 +0530 Subject: [PATCH 04/18] docs: refer to the decorate-module-output from teal and rename vignette --- R/tm_a_pca.R | 4 ++-- R/tm_a_regression.R | 4 ++-- R/tm_g_association.R | 4 ++-- R/tm_g_bivariate.R | 4 ++-- R/tm_g_distribution.R | 4 ++-- R/tm_g_response.R | 4 ++-- R/tm_g_scatterplot.R | 4 ++-- R/tm_g_scatterplotmatrix.R | 4 ++-- R/tm_missing_data.R | 4 ++-- R/tm_outliers.R | 4 ++-- R/tm_t_crosstable.R | 4 ++-- man/tm_a_pca.Rd | 4 ++-- man/tm_a_regression.Rd | 4 ++-- man/tm_g_association.Rd | 4 ++-- man/tm_g_bivariate.Rd | 4 ++-- man/tm_g_distribution.Rd | 4 ++-- man/tm_g_response.Rd | 4 ++-- man/tm_g_scatterplot.Rd | 4 ++-- man/tm_g_scatterplotmatrix.Rd | 4 ++-- man/tm_missing_data.Rd | 4 ++-- man/tm_outliers.Rd | 4 ++-- man/tm_t_crosstable.Rd | 4 ++-- vignettes/customizing-module-output.Rmd | 4 ++-- 23 files changed, 46 insertions(+), 46 deletions(-) diff --git a/R/tm_a_pca.R b/R/tm_a_pca.R index ca3f38864..f2bf64768 100644 --- a/R/tm_a_pca.R +++ b/R/tm_a_pca.R @@ -44,8 +44,8 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_a_regression.R b/R/tm_a_regression.R index 6ca69af60..0b886f538 100644 --- a/R/tm_a_regression.R +++ b/R/tm_a_regression.R @@ -49,8 +49,8 @@ #' - `plot` (`ggplot2`) #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_association.R b/R/tm_g_association.R index fc5c70cdb..11e1765e9 100644 --- a/R/tm_g_association.R +++ b/R/tm_g_association.R @@ -30,8 +30,8 @@ #' - `plot` (`grob` created with [ggplot2::ggplotGrob()]) #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_bivariate.R b/R/tm_g_bivariate.R index c7537b6cd..a668545f1 100644 --- a/R/tm_g_bivariate.R +++ b/R/tm_g_bivariate.R @@ -52,8 +52,8 @@ #' - `plot` (`ggplot2`) #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' #' @examplesShinylive diff --git a/R/tm_g_distribution.R b/R/tm_g_distribution.R index ef3efab34..21e78984d 100644 --- a/R/tm_g_distribution.R +++ b/R/tm_g_distribution.R @@ -53,8 +53,8 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_response.R b/R/tm_g_response.R index 521d820b8..1542a0afb 100644 --- a/R/tm_g_response.R +++ b/R/tm_g_response.R @@ -45,8 +45,8 @@ #' - `plot` (`ggplot2`) #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_scatterplot.R b/R/tm_g_scatterplot.R index 0fce4a1c1..d6b00d82b 100644 --- a/R/tm_g_scatterplot.R +++ b/R/tm_g_scatterplot.R @@ -36,8 +36,8 @@ #' - `plot` (`ggplot2`) #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' #' @examplesShinylive diff --git a/R/tm_g_scatterplotmatrix.R b/R/tm_g_scatterplotmatrix.R index 592bd69ad..f28c33ad7 100644 --- a/R/tm_g_scatterplotmatrix.R +++ b/R/tm_g_scatterplotmatrix.R @@ -24,8 +24,8 @@ #' - `plot` (`trellis` - output of `lattice::splom`) #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_missing_data.R b/R/tm_missing_data.R index 2eea9da1e..72404395e 100644 --- a/R/tm_missing_data.R +++ b/R/tm_missing_data.R @@ -44,8 +44,8 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_outliers.R b/R/tm_outliers.R index 4d1fa8fcd..bac0b3f34 100644 --- a/R/tm_outliers.R +++ b/R/tm_outliers.R @@ -42,8 +42,8 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_t_crosstable.R b/R/tm_t_crosstable.R index 27380fe74..8ffcc7ec5 100644 --- a/R/tm_t_crosstable.R +++ b/R/tm_t_crosstable.R @@ -31,8 +31,8 @@ #' - `table` (`ElementaryTable` - output of `rtables::build_table`) #' #' For additional details and examples of decorators, refer to the vignettes: -#' `vignette("customizing-module-output, package = "teal.modules.general")`, -#' `vignette("TODO to be added", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("decorate-module-output, package = "teal.modules.general")`, +#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/man/tm_a_pca.Rd b/man/tm_a_pca.Rd index 040c0dd8d..936f9e04b 100644 --- a/man/tm_a_pca.Rd +++ b/man/tm_a_pca.Rd @@ -124,8 +124,8 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_a_regression.Rd b/man/tm_a_regression.Rd index 9c6b67744..9eea3f878 100644 --- a/man/tm_a_regression.Rd +++ b/man/tm_a_regression.Rd @@ -132,8 +132,8 @@ This module generates the following objects, which can be modified in place usin } For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_association.Rd b/man/tm_g_association.Rd index 0ad159cdc..7a4b07e07 100644 --- a/man/tm_g_association.Rd +++ b/man/tm_g_association.Rd @@ -92,8 +92,8 @@ This module generates the following objects, which can be modified in place usin } For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_bivariate.Rd b/man/tm_g_bivariate.Rd index 7124611af..f7f32ec6b 100644 --- a/man/tm_g_bivariate.Rd +++ b/man/tm_g_bivariate.Rd @@ -139,8 +139,8 @@ This module generates the following objects, which can be modified in place usin } For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index 22bae3e63..bea86c5e8 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -115,8 +115,8 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index f454d325a..adfa17126 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -120,8 +120,8 @@ This module generates the following objects, which can be modified in place usin } For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index 621f743a6..c18ddf89d 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -131,8 +131,8 @@ This module generates the following objects, which can be modified in place usin } For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index 176d01167..6d49b0625 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -71,8 +71,8 @@ This module generates the following objects, which can be modified in place usin } For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index 4ebf35a34..46e87b267 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -109,8 +109,8 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index dbd42eead..f7be137c7 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -99,8 +99,8 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index 446eb488e..0030306a6 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -85,8 +85,8 @@ This module generates the following objects, which can be modified in place usin } For additional details and examples of decorators, refer to the vignettes: -\verb{vignette("customizing-module-output, package = "teal.modules.general")}, -\code{vignette("TODO to be added", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\verb{vignette("decorate-module-output, package = "teal.modules.general")}, +\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/vignettes/customizing-module-output.Rmd b/vignettes/customizing-module-output.Rmd index 56cb63179..b8aa2bf83 100644 --- a/vignettes/customizing-module-output.Rmd +++ b/vignettes/customizing-module-output.Rmd @@ -1,11 +1,11 @@ --- -title: "Customizing Module Output" +title: "Decorate Module Output" author: "NEST CoreDev" output: rmarkdown::html_vignette: toc: true vignette: > - %\VignetteIndexEntry{Customizing Module Output} + %\VignetteIndexEntry{Decorate Module Output} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- From 9cea125e855e6e775a0f118294020dd86211268f Mon Sep 17 00:00:00 2001 From: vedhav Date: Wed, 12 Feb 2025 10:35:04 +0530 Subject: [PATCH 05/18] docs: link teal vignettes with latest-tag --- man/tm_a_pca.Rd | 2 +- man/tm_a_regression.Rd | 2 +- man/tm_data_table.Rd | 2 +- man/tm_front_page.Rd | 2 +- man/tm_g_association.Rd | 2 +- man/tm_g_bivariate.Rd | 2 +- man/tm_g_distribution.Rd | 2 +- man/tm_g_response.Rd | 2 +- man/tm_g_scatterplot.Rd | 2 +- man/tm_g_scatterplotmatrix.Rd | 2 +- man/tm_missing_data.Rd | 2 +- man/tm_outliers.Rd | 2 +- man/tm_t_crosstable.Rd | 2 +- man/tm_variable_browser.Rd | 2 +- vignettes/customizing-module-output.Rmd | 7 ++++--- 15 files changed, 18 insertions(+), 17 deletions(-) diff --git a/man/tm_a_pca.Rd b/man/tm_a_pca.Rd index 936f9e04b..50744b9d1 100644 --- a/man/tm_a_pca.Rd +++ b/man/tm_a_pca.Rd @@ -74,7 +74,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_a_regression.Rd b/man/tm_a_regression.Rd index 9eea3f878..c6a35aa43 100644 --- a/man/tm_a_regression.Rd +++ b/man/tm_a_regression.Rd @@ -98,7 +98,7 @@ argument in \code{teal.widgets::optionalSliderInputValMinMax}. }} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_data_table.Rd b/man/tm_data_table.Rd index f013fd316..e5084fbf8 100644 --- a/man/tm_data_table.Rd +++ b/man/tm_data_table.Rd @@ -57,7 +57,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. diff --git a/man/tm_front_page.Rd b/man/tm_front_page.Rd index 4ea5c0bfd..36a288b5a 100644 --- a/man/tm_front_page.Rd +++ b/man/tm_front_page.Rd @@ -46,7 +46,7 @@ argument. }} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. diff --git a/man/tm_g_association.Rd b/man/tm_g_association.Rd index 7a4b07e07..408b7303a 100644 --- a/man/tm_g_association.Rd +++ b/man/tm_g_association.Rd @@ -59,7 +59,7 @@ List names should match the following: \code{c("default", "Bivariate1", "Bivaria For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_bivariate.Rd b/man/tm_g_bivariate.Rd index f7f32ec6b..1d8e35317 100644 --- a/man/tm_g_bivariate.Rd +++ b/man/tm_g_bivariate.Rd @@ -104,7 +104,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index bea86c5e8..f3e76d139 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -66,7 +66,7 @@ with text placed before the output to put the output into context. For example a into context. For example the \code{\link[shiny:helpText]{shiny::helpText()}} elements are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index adfa17126..a2e515f73 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -84,7 +84,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index c18ddf89d..31ae4baf1 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -97,7 +97,7 @@ The argument is merged with options variable \code{teal.ggplot2_args} and defaul For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index 6d49b0625..7171f2cf4 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -38,7 +38,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index 46e87b267..fdf2bddea 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -59,7 +59,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index f7be137c7..6fa53748f 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -50,7 +50,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index 0030306a6..a3382c8f7 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -53,7 +53,7 @@ The argument is merged with options variable \code{teal.basic_table_args} and de For more details see the vignette: \code{vignette("custom-basic-table-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_variable_browser.Rd b/man/tm_variable_browser.Rd index d2f271e60..9f439c157 100644 --- a/man/tm_variable_browser.Rd +++ b/man/tm_variable_browser.Rd @@ -51,7 +51,7 @@ The argument is merged with options variable \code{teal.ggplot2_args} and defaul For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. diff --git a/vignettes/customizing-module-output.Rmd b/vignettes/customizing-module-output.Rmd index b8aa2bf83..02e2c9a3c 100644 --- a/vignettes/customizing-module-output.Rmd +++ b/vignettes/customizing-module-output.Rmd @@ -25,10 +25,11 @@ Here we describe the concept of _decoration_, enabling you to tailor outputs to The decoration process is build upon transformation procedures, introduced in `teal`. While transformators are meant to edit module's input, decorators are meant to adjust the module's output. To distinguish the difference, modules in `teal.modules.general` have 2 separate parameters: `transformators` and `decorators`. -To get a fuller understanding, read more about : +To get a fuller understanding, read more about: + - changing the input data -[in this vignette](https://insightsengineering.github.io/teal/main/articles/data-transform-as-shiny-modulehtml), -- the concept of changing module output in [this vignette](TODO: link to vignette in teal). +[in this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html), +- the concept of changing module output in [this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html). ## Decorators From 15a7dbaf13e5f1a4ad32e87a3a7b39ecad72d810 Mon Sep 17 00:00:00 2001 From: vedhav Date: Wed, 12 Feb 2025 10:36:02 +0530 Subject: [PATCH 06/18] chore: rename vignette --- .../{customizing-module-output.Rmd => decorate-module-output.Rmd} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename vignettes/{customizing-module-output.Rmd => decorate-module-output.Rmd} (100%) diff --git a/vignettes/customizing-module-output.Rmd b/vignettes/decorate-module-output.Rmd similarity index 100% rename from vignettes/customizing-module-output.Rmd rename to vignettes/decorate-module-output.Rmd From 0ca359055d6d7f476e1b6f5d399621b1c964f766 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 12 Feb 2025 05:10:27 +0000 Subject: [PATCH 07/18] [skip roxygen] [skip vbump] Roxygen Man Pages Auto Update --- man/tm_a_pca.Rd | 2 +- man/tm_a_regression.Rd | 2 +- man/tm_data_table.Rd | 2 +- man/tm_front_page.Rd | 2 +- man/tm_g_association.Rd | 2 +- man/tm_g_bivariate.Rd | 2 +- man/tm_g_distribution.Rd | 2 +- man/tm_g_response.Rd | 2 +- man/tm_g_scatterplot.Rd | 2 +- man/tm_g_scatterplotmatrix.Rd | 2 +- man/tm_missing_data.Rd | 2 +- man/tm_outliers.Rd | 2 +- man/tm_t_crosstable.Rd | 2 +- man/tm_variable_browser.Rd | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/man/tm_a_pca.Rd b/man/tm_a_pca.Rd index 50744b9d1..936f9e04b 100644 --- a/man/tm_a_pca.Rd +++ b/man/tm_a_pca.Rd @@ -74,7 +74,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_a_regression.Rd b/man/tm_a_regression.Rd index c6a35aa43..9eea3f878 100644 --- a/man/tm_a_regression.Rd +++ b/man/tm_a_regression.Rd @@ -98,7 +98,7 @@ argument in \code{teal.widgets::optionalSliderInputValMinMax}. }} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_data_table.Rd b/man/tm_data_table.Rd index e5084fbf8..f013fd316 100644 --- a/man/tm_data_table.Rd +++ b/man/tm_data_table.Rd @@ -57,7 +57,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. diff --git a/man/tm_front_page.Rd b/man/tm_front_page.Rd index 36a288b5a..4ea5c0bfd 100644 --- a/man/tm_front_page.Rd +++ b/man/tm_front_page.Rd @@ -46,7 +46,7 @@ argument. }} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. diff --git a/man/tm_g_association.Rd b/man/tm_g_association.Rd index 408b7303a..7a4b07e07 100644 --- a/man/tm_g_association.Rd +++ b/man/tm_g_association.Rd @@ -59,7 +59,7 @@ List names should match the following: \code{c("default", "Bivariate1", "Bivaria For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_bivariate.Rd b/man/tm_g_bivariate.Rd index 1d8e35317..f7f32ec6b 100644 --- a/man/tm_g_bivariate.Rd +++ b/man/tm_g_bivariate.Rd @@ -104,7 +104,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index f3e76d139..bea86c5e8 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -66,7 +66,7 @@ with text placed before the output to put the output into context. For example a into context. For example the \code{\link[shiny:helpText]{shiny::helpText()}} elements are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index a2e515f73..adfa17126 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -84,7 +84,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index 31ae4baf1..c18ddf89d 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -97,7 +97,7 @@ The argument is merged with options variable \code{teal.ggplot2_args} and defaul For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index 7171f2cf4..6d49b0625 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -38,7 +38,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index fdf2bddea..46e87b267 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -59,7 +59,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index 6fa53748f..f7be137c7 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -50,7 +50,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index a3382c8f7..0030306a6 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -53,7 +53,7 @@ The argument is merged with options variable \code{teal.basic_table_args} and de For more details see the vignette: \code{vignette("custom-basic-table-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_variable_browser.Rd b/man/tm_variable_browser.Rd index 9f439c157..d2f271e60 100644 --- a/man/tm_variable_browser.Rd +++ b/man/tm_variable_browser.Rd @@ -51,7 +51,7 @@ The argument is merged with options variable \code{teal.ggplot2_args} and defaul For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("transform-input-data", package = "teal")}.} +To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. From e6006d0caeea9bc3c7843c130e3d1e1b5e674910 Mon Sep 17 00:00:00 2001 From: vedhav Date: Wed, 12 Feb 2025 15:06:00 +0530 Subject: [PATCH 08/18] chore: rename the vignette --- R/tm_a_pca.R | 2 +- R/tm_a_regression.R | 2 +- R/tm_g_association.R | 2 +- R/tm_g_bivariate.R | 2 +- R/tm_g_distribution.R | 2 +- R/tm_g_response.R | 2 +- R/tm_g_scatterplot.R | 2 +- R/tm_g_scatterplotmatrix.R | 2 +- R/tm_missing_data.R | 2 +- R/tm_outliers.R | 2 +- R/tm_t_crosstable.R | 2 +- man/tm_a_pca.Rd | 2 +- man/tm_a_regression.Rd | 2 +- man/tm_g_association.Rd | 2 +- man/tm_g_bivariate.Rd | 2 +- man/tm_g_distribution.Rd | 2 +- man/tm_g_response.Rd | 2 +- man/tm_g_scatterplot.Rd | 2 +- man/tm_g_scatterplotmatrix.Rd | 2 +- man/tm_missing_data.Rd | 2 +- man/tm_outliers.Rd | 2 +- man/tm_t_crosstable.Rd | 2 +- 22 files changed, 22 insertions(+), 22 deletions(-) diff --git a/R/tm_a_pca.R b/R/tm_a_pca.R index f2bf64768..8d77c5076 100644 --- a/R/tm_a_pca.R +++ b/R/tm_a_pca.R @@ -45,7 +45,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_a_regression.R b/R/tm_a_regression.R index 0b886f538..3ceb4baac 100644 --- a/R/tm_a_regression.R +++ b/R/tm_a_regression.R @@ -50,7 +50,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_association.R b/R/tm_g_association.R index 11e1765e9..9b47ff166 100644 --- a/R/tm_g_association.R +++ b/R/tm_g_association.R @@ -31,7 +31,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_bivariate.R b/R/tm_g_bivariate.R index a668545f1..ac5af90d5 100644 --- a/R/tm_g_bivariate.R +++ b/R/tm_g_bivariate.R @@ -53,7 +53,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' #' @examplesShinylive diff --git a/R/tm_g_distribution.R b/R/tm_g_distribution.R index 21e78984d..a463d6baf 100644 --- a/R/tm_g_distribution.R +++ b/R/tm_g_distribution.R @@ -54,7 +54,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_response.R b/R/tm_g_response.R index 1542a0afb..8da3e492d 100644 --- a/R/tm_g_response.R +++ b/R/tm_g_response.R @@ -46,7 +46,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_g_scatterplot.R b/R/tm_g_scatterplot.R index d6b00d82b..444e6a460 100644 --- a/R/tm_g_scatterplot.R +++ b/R/tm_g_scatterplot.R @@ -37,7 +37,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' #' @examplesShinylive diff --git a/R/tm_g_scatterplotmatrix.R b/R/tm_g_scatterplotmatrix.R index f28c33ad7..7a8a3738f 100644 --- a/R/tm_g_scatterplotmatrix.R +++ b/R/tm_g_scatterplotmatrix.R @@ -25,7 +25,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_missing_data.R b/R/tm_missing_data.R index 72404395e..1dc5d31f8 100644 --- a/R/tm_missing_data.R +++ b/R/tm_missing_data.R @@ -45,7 +45,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_outliers.R b/R/tm_outliers.R index bac0b3f34..1844ec43a 100644 --- a/R/tm_outliers.R +++ b/R/tm_outliers.R @@ -43,7 +43,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/R/tm_t_crosstable.R b/R/tm_t_crosstable.R index 8ffcc7ec5..7ad1cb719 100644 --- a/R/tm_t_crosstable.R +++ b/R/tm_t_crosstable.R @@ -32,7 +32,7 @@ #' #' For additional details and examples of decorators, refer to the vignettes: #' `vignette("decorate-module-output, package = "teal.modules.general")`, -#' `vignette("decorate-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. +#' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. #' #' @examplesShinylive #' library(teal.modules.general) diff --git a/man/tm_a_pca.Rd b/man/tm_a_pca.Rd index 936f9e04b..8a2473461 100644 --- a/man/tm_a_pca.Rd +++ b/man/tm_a_pca.Rd @@ -125,7 +125,7 @@ See code snippet below: For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_a_regression.Rd b/man/tm_a_regression.Rd index 9eea3f878..b112c256a 100644 --- a/man/tm_a_regression.Rd +++ b/man/tm_a_regression.Rd @@ -133,7 +133,7 @@ This module generates the following objects, which can be modified in place usin For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_association.Rd b/man/tm_g_association.Rd index 7a4b07e07..d6b72b6b4 100644 --- a/man/tm_g_association.Rd +++ b/man/tm_g_association.Rd @@ -93,7 +93,7 @@ This module generates the following objects, which can be modified in place usin For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_bivariate.Rd b/man/tm_g_bivariate.Rd index f7f32ec6b..abe71f499 100644 --- a/man/tm_g_bivariate.Rd +++ b/man/tm_g_bivariate.Rd @@ -140,7 +140,7 @@ This module generates the following objects, which can be modified in place usin For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index bea86c5e8..a6e308221 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -116,7 +116,7 @@ See code snippet below: For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index adfa17126..fbd014a3b 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -121,7 +121,7 @@ This module generates the following objects, which can be modified in place usin For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index c18ddf89d..9105cd458 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -132,7 +132,7 @@ This module generates the following objects, which can be modified in place usin For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index 6d49b0625..aa5dbbae9 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -72,7 +72,7 @@ This module generates the following objects, which can be modified in place usin For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index 46e87b267..78fd954c6 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -110,7 +110,7 @@ See code snippet below: For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index f7be137c7..b5b4ede19 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -100,7 +100,7 @@ See code snippet below: For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index 0030306a6..c46f9d4ef 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -86,7 +86,7 @@ This module generates the following objects, which can be modified in place usin For additional details and examples of decorators, refer to the vignettes: \verb{vignette("decorate-module-output, package = "teal.modules.general")}, -\code{vignette("decorate-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. +\code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. } \examples{ From 71556f4ccf8bf38db15d174d5ececb5f5c9e5239 Mon Sep 17 00:00:00 2001 From: vedhav Date: Fri, 14 Feb 2025 16:05:25 +0530 Subject: [PATCH 09/18] docs: push local changes --- vignettes/decorate-module-output.Rmd | 153 ++++++++++++++++++++++++--- 1 file changed, 136 insertions(+), 17 deletions(-) diff --git a/vignettes/decorate-module-output.Rmd b/vignettes/decorate-module-output.Rmd index 02e2c9a3c..482a0314c 100644 --- a/vignettes/decorate-module-output.Rmd +++ b/vignettes/decorate-module-output.Rmd @@ -19,36 +19,155 @@ library(teal.data) ## Introduction The outputs produced by `teal` modules, like graphs or tables, are created by the module developer and look a certain way. -It is impossible to design an output that will satisfy every possible user, so the form of the output should be considered a default value that can be customized. -Here we describe the concept of _decoration_, enabling you to tailor outputs to your specific requirements without rewriting the original module code. +It is hard to design an output that will satisfy every possible user, so the form of the output should be considered a default value that can be customized. +Here we describe the concept of _decoration_, enabling the app developer to tailor outputs to their specific requirements without rewriting the original module code. -The decoration process is build upon transformation procedures, introduced in `teal`. While transformators are meant to edit module's input, decorators are meant to adjust the module's output. To distinguish the difference, modules in -`teal.modules.general` have 2 separate parameters: `transformators` and `decorators`. +The decoration process is build upon transformation procedures, introduced in `teal`. +While transformators are meant to edit module's input, decorators are meant to adjust the module's output. +To distinguish the difference, modules in `teal.modules.general` have 2 separate parameters: +`transformators` and `decorators`. -To get a fuller understanding, read more about: +To get a complete understanding refer the following vignettes: -- changing the input data -[in this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html), -- the concept of changing module output in [this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html). +- Transforming the input data in +[this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html), +- Transforming module output in [this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-module-output.html). ## Decorators Decorators are created with `teal_transform_module` and thus they are `shiny` modules. In `teal.modules.general`, they are passed to `teal` modules through `decorators` argument (see below). Their server logic will be used to modify objects such as plots or tables that exist in the server function of a module. -An `ui` function can provide interactivity but that is optional. An app developer is free to use decorator modules that do not require user input. +A `ui` function can provide interactivity but that is optional. An app developer is free to use decorator modules that do not require user input. -### Requirements and Limitations +## Decorating a Module -Using decorators requires the following: +In order to decorate/modify the output from a module from `teal.modules.general` you need to refer to the +"Decorating Module" section of the function documentation that tells about the objects that can be decorated. -1. **Matching Object Names**:
-Decorators will reference variables that exist in the `teal` module server function and therefore must use the appropriate variable names. The relevant object names available in each module are included in modules' documentations. -2. **Maintaining Object Classes**:
-A decorator must not alter the class of the object that it modifies. -This is because a different class may require a different rendering function and that is part of the module structure, which beyond the control of decorators. +In this vignette we will decorate the outputs from the `tm_g_distribution` module. +The [function definition](../reference/tm_g_distribution.html#decorating-module) shows us that there are four output objects that can be decorated: +`histogram_plot` (`ggplot2`), `qq_plot` (`ggplot2`), `summary_table` (`listing_df`) and `test_table` (`listing_df`). -## Building Decorators +### Static Decoration +Here we create a simple decorator that does not provide user. +We will use this to change the title to a static title that we want. + + +```{r static_decorator} +static_decorator <- teal_transform_module( + label = "Static decorator", + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + req(data()) + within(data(), { + histogram_plot <- histogram_plot + + ggtitle("This is a better title") + }) + }) + }) + } +) + +default_decorator <- teal_transform_module( + label = "Static decorator", + ui = function(id) { + tags$div( + textInput(NS(id, "title"), "Title", value = "This is a better title") + ) + }, + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + req(data()) + within(data(), + { + if (exists("elbow_plot")) { + elbow_plot <- elbow_plot + + ggtitle(title) + } + # if (exists("circle_plot")) { + # circle_plot <- circle_plot + + # ggtitle(title) + # } + # if (exists("biplot")) { + # biplot <- biplot + + # ggtitle(title) + # } + # if (exists("eigenvector_plot")) { + # eigenvector_plot <- eigenvector_plot + + # ggtitle(title) + # } + }, + title = input$title + ) + }) + }) + } +) + +library(teal.modules.general) +data <- teal_data() +data <- within(data, { + require(nestcolor) + USArrests <- USArrests +}) +devtools::load_all() +app <- init( + data = data, + modules = modules( + tm_a_pca( + "PCA", + dat = data_extract_spec( + dataname = "USArrests", + select = select_spec( + choices = variable_choices( + data = data[["USArrests"]], c("Murder", "Assault", "UrbanPop", "Rape") + ), + selected = c("Murder", "Assault"), + multiple = TRUE + ), + filter = NULL + ), + decorators = list(default_decorator) + ) + ) +) +#> Initializing tm_a_pca +if (interactive()) { + shinyApp(app$ui, app$server) +} +``` + + +```{r} +library(teal.modules.general) +data <- teal_data() +data <- within(data, { + iris <- iris +}) + +app <- init( + data = data, + modules = list( + tm_g_distribution( + dist_var = data_extract_spec( + dataname = "iris", + select = select_spec(variable_choices("iris"), "Petal.Length") + ), + decorators = list(default_decorator) + ) + ) +) +if (interactive()) { + shinyApp(app$ui, app$server) +} +``` + +### Dynamic Decoration + +### Reusable Variable Decoration ### Server From 678c8ed332f9797e395f039c7d734a27527e693d Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 14 Feb 2025 10:40:04 +0000 Subject: [PATCH 10/18] [skip roxygen] [skip vbump] Roxygen Man Pages Auto Update --- man/tm_a_pca.Rd | 2 +- man/tm_a_regression.Rd | 2 +- man/tm_data_table.Rd | 2 +- man/tm_front_page.Rd | 2 +- man/tm_g_association.Rd | 2 +- man/tm_g_bivariate.Rd | 2 +- man/tm_g_distribution.Rd | 2 +- man/tm_g_response.Rd | 2 +- man/tm_g_scatterplot.Rd | 2 +- man/tm_g_scatterplotmatrix.Rd | 2 +- man/tm_missing_data.Rd | 2 +- man/tm_outliers.Rd | 2 +- man/tm_t_crosstable.Rd | 2 +- man/tm_variable_browser.Rd | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/man/tm_a_pca.Rd b/man/tm_a_pca.Rd index 8a2473461..2847860c0 100644 --- a/man/tm_a_pca.Rd +++ b/man/tm_a_pca.Rd @@ -74,7 +74,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_a_regression.Rd b/man/tm_a_regression.Rd index b112c256a..7ba2b5d1e 100644 --- a/man/tm_a_regression.Rd +++ b/man/tm_a_regression.Rd @@ -98,7 +98,7 @@ argument in \code{teal.widgets::optionalSliderInputValMinMax}. }} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_data_table.Rd b/man/tm_data_table.Rd index f013fd316..e5084fbf8 100644 --- a/man/tm_data_table.Rd +++ b/man/tm_data_table.Rd @@ -57,7 +57,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. diff --git a/man/tm_front_page.Rd b/man/tm_front_page.Rd index 4ea5c0bfd..36a288b5a 100644 --- a/man/tm_front_page.Rd +++ b/man/tm_front_page.Rd @@ -46,7 +46,7 @@ argument. }} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. diff --git a/man/tm_g_association.Rd b/man/tm_g_association.Rd index d6b72b6b4..2c41c9f55 100644 --- a/man/tm_g_association.Rd +++ b/man/tm_g_association.Rd @@ -59,7 +59,7 @@ List names should match the following: \code{c("default", "Bivariate1", "Bivaria For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_bivariate.Rd b/man/tm_g_bivariate.Rd index abe71f499..3a213d26c 100644 --- a/man/tm_g_bivariate.Rd +++ b/man/tm_g_bivariate.Rd @@ -104,7 +104,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index a6e308221..b0a329e29 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -66,7 +66,7 @@ with text placed before the output to put the output into context. For example a into context. For example the \code{\link[shiny:helpText]{shiny::helpText()}} elements are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index fbd014a3b..2a58571a4 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -84,7 +84,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index 9105cd458..ca5985955 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -97,7 +97,7 @@ The argument is merged with options variable \code{teal.ggplot2_args} and defaul For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index aa5dbbae9..4d37186ea 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -38,7 +38,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index 78fd954c6..49211ff73 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -59,7 +59,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index b5b4ede19..61c4986c1 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -50,7 +50,7 @@ with text placed before the output to put the output into context. For example a adding context or further instructions. Elements like \code{shiny::helpText()} are useful.} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index c46f9d4ef..77025e6c9 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -53,7 +53,7 @@ The argument is merged with options variable \code{teal.basic_table_args} and de For more details see the vignette: \code{vignette("custom-basic-table-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} (\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, diff --git a/man/tm_variable_browser.Rd b/man/tm_variable_browser.Rd index d2f271e60..9f439c157 100644 --- a/man/tm_variable_browser.Rd +++ b/man/tm_variable_browser.Rd @@ -51,7 +51,7 @@ The argument is merged with options variable \code{teal.ggplot2_args} and defaul For more details see the vignette: \code{vignette("custom-ggplot2-arguments", package = "teal.widgets")}} \item{transformators}{(\code{list} of \code{teal_transform_module}) that will be applied to transform module's data input. -To learn more check \code{vignette("data-transform-as-shiny-module", package = "teal")}.} +To learn more check \code{vignette("transform-input-data", package = "teal")}.} } \value{ Object of class \code{teal_module} to be used in \code{teal} applications. From c28351d474a6a29ebac1a10c923a6ba2da7bb8c7 Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 24 Feb 2025 20:10:25 +0530 Subject: [PATCH 11/18] feat: add decorator vignette --- R/tm_g_distribution.R | 4 +- R/tm_g_response.R | 2 +- R/tm_g_scatterplot.R | 2 +- R/tm_outliers.R | 8 +- man/tm_g_distribution.Rd | 4 +- man/tm_g_response.Rd | 2 +- man/tm_g_scatterplot.Rd | 2 +- man/tm_missing_data.Rd | 2 +- man/tm_outliers.Rd | 6 +- vignettes/decorate-module-output.Rmd | 623 ++++++++++++++++----------- 10 files changed, 382 insertions(+), 273 deletions(-) diff --git a/R/tm_g_distribution.R b/R/tm_g_distribution.R index 7e21212f9..5b974faf0 100644 --- a/R/tm_g_distribution.R +++ b/R/tm_g_distribution.R @@ -29,8 +29,8 @@ #' @section Decorating Module: #' #' This module generates the following objects, which can be modified in place using decorators:: -#' - `histogram_plot` (`ggplot2`) -#' - `qq_plot` (`ggplot2`) +#' - `histogram_plot` (`ggplot`) +#' - `qq_plot` (`ggplot`) #' - `summary_table` (`datatables` created with [DT::datatable()]) #' - `test_table` (`datatables` created with [DT::datatable()]) #' diff --git a/R/tm_g_response.R b/R/tm_g_response.R index b55fde78c..11c0d7c30 100644 --- a/R/tm_g_response.R +++ b/R/tm_g_response.R @@ -42,7 +42,7 @@ #' @section Decorating Module: #' #' This module generates the following objects, which can be modified in place using decorators: -#' - `plot` (`ggplot2`) +#' - `plot` (`ggplot`) #' #' A Decorator is applied to the specific output using a named list of `teal_transform_module` objects. #' The name of this list corresponds to the name of the output to which the decorator is applied. diff --git a/R/tm_g_scatterplot.R b/R/tm_g_scatterplot.R index 1fa9f80c7..df15550dc 100644 --- a/R/tm_g_scatterplot.R +++ b/R/tm_g_scatterplot.R @@ -33,7 +33,7 @@ #' @section Decorating Module: #' #' This module generates the following objects, which can be modified in place using decorators: -#' - `plot` (`ggplot2`) +#' - `plot` (`ggplot`) #' #' A Decorator is applied to the specific output using a named list of `teal_transform_module` objects. #' The name of this list corresponds to the name of the output to which the decorator is applied. diff --git a/R/tm_outliers.R b/R/tm_outliers.R index 389a24019..1fc8a5808 100644 --- a/R/tm_outliers.R +++ b/R/tm_outliers.R @@ -18,10 +18,10 @@ #' @section Decorating Module: #' #' This module generates the following objects, which can be modified in place using decorators: -#' - `box_plot` (`ggplot2`) -#' - `density_plot` (`ggplot2`) -#' - `cumulative_plot` (`ggplot2`) -#' - `table` (`datatable` created with [DT::datatable()]) +#' - `box_plot` (`ggplot`) +#' - `density_plot` (`ggplot`) +#' - `cumulative_plot` (`ggplot`) +#' - `table` (`datatables` created with [DT::datatable()]) #' #' A Decorator is applied to the specific output using a named list of `teal_transform_module` objects. #' The name of this list corresponds to the name of the output to which the decorator is applied. diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index 0468e3b9d..a7c382c7a 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -91,8 +91,8 @@ visually and statistically analyze the variable's distribution. This module generates the following objects, which can be modified in place using decorators:: \itemize{ -\item \code{histogram_plot} (\code{ggplot2}) -\item \code{qq_plot} (\code{ggplot2}) +\item \code{histogram_plot} (\code{ggplot}) +\item \code{qq_plot} (\code{ggplot}) \item \code{summary_table} (\code{datatables} created with \code{\link[DT:datatable]{DT::datatable()}}) \item \code{test_table} (\code{datatables} created with \code{\link[DT:datatable]{DT::datatable()}}) } diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index a4e0b9aa3..b5ae7d0fb 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -116,7 +116,7 @@ For more examples, please see the vignette "Using response plot" via This module generates the following objects, which can be modified in place using decorators: \itemize{ -\item \code{plot} (\code{ggplot2}) +\item \code{plot} (\code{ggplot}) } A Decorator is applied to the specific output using a named list of \code{teal_transform_module} objects. diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index aafef267b..75553340c 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -127,7 +127,7 @@ For more examples, please see the vignette "Using scatterplot" via This module generates the following objects, which can be modified in place using decorators: \itemize{ -\item \code{plot} (\code{ggplot2}) +\item \code{plot} (\code{ggplot}) } A Decorator is applied to the specific output using a named list of \code{teal_transform_module} objects. diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index 61d3baf64..537c392c4 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -87,7 +87,7 @@ This module generates the following objects, which can be modified in place usin \itemize{ \item \code{summary_plot} (\code{grob} created with \code{\link[ggplot2:ggplotGrob]{ggplot2::ggplotGrob()}}) \item \code{combination_plot} (\code{grob} created with \code{\link[ggplot2:ggplotGrob]{ggplot2::ggplotGrob()}}) -\item \code{by_subject_plot} (\code{ggplot2}) +\item \code{by_subject_plot} (\code{ggplot}) \item \code{table} (\code{datatable} created with \code{\link[DT:datatable]{DT::datatable()}}) } diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index 5bd8f6d30..512cbfa19 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -75,9 +75,9 @@ box plots, density plots, and cumulative distribution plots to help interpret th This module generates the following objects, which can be modified in place using decorators: \itemize{ -\item \code{box_plot} (\code{ggplot2}) -\item \code{density_plot} (\code{ggplot2}) -\item \code{cumulative_plot} (\code{ggplot2}) +\item \code{box_plot} (\code{ggplot}) +\item \code{density_plot} (\code{ggplot}) +\item \code{cumulative_plot} (\code{ggplot}) \item \code{table} (\code{datatable} created with \code{\link[DT:datatable]{DT::datatable()}}) } diff --git a/vignettes/decorate-module-output.Rmd b/vignettes/decorate-module-output.Rmd index 482a0314c..ad41ade65 100644 --- a/vignettes/decorate-module-output.Rmd +++ b/vignettes/decorate-module-output.Rmd @@ -12,7 +12,6 @@ vignette: > ```{r setup, include=FALSE} library(teal.modules.general) -library(teal.data) ``` @@ -33,375 +32,485 @@ To get a complete understanding refer the following vignettes: [this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html), - Transforming module output in [this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-module-output.html). -## Decorators +## Decoratable outputs -Decorators are created with `teal_transform_module` and thus they are `shiny` modules. -In `teal.modules.general`, they are passed to `teal` modules through `decorators` argument (see below). -Their server logic will be used to modify objects such as plots or tables that exist in the server function of a module. -A `ui` function can provide interactivity but that is optional. An app developer is free to use decorator modules that do not require user input. +It is important to note which output objects from a given module can be decorated. +The module function documentation's _Decorating Module_ section has this information. -## Decorating a Module +You can also refer the table shown below to know which module outputs can be decorated. -In order to decorate/modify the output from a module from `teal.modules.general` you need to refer to the -"Decorating Module" section of the function documentation that tells about the objects that can be decorated. +| Module | Output (Class) | +|------------------------|----------------------------------------------------| +| `tm_a_pca` | elbow_plot (ggplot), circle_plot (ggplot), biplot (ggplot), eigenvector_plot (ggplot) | +| `tm_a_regression` | plot (ggplot) | +| `tm_g_association` | plot (grob) | +| `tm_g_bivariate` | plot (ggplot) | +| `tm_g_distribution` | histogram_plot (ggplot), qq_plot (ggplot), summary_table (datatables), test_table (datatables) | +| `tm_g_response` | plot (ggplot) | +| `tm_g_scatterplot` | plot (ggplot) | +| `tm_g_scatterplotmatrix` | plot (trellis) | +| `tm_missing_data` | summary_plot (grob), combination_plot (grob), by_subject_plot (ggplot), table (datatables) | +| `tm_outliers` | box_plot (ggplot), density_plot (ggplot), cumulative_plot (ggplot), table (datatables) | +| `tm_t_crosstable` | table (ElementaryTable) | -In this vignette we will decorate the outputs from the `tm_g_distribution` module. -The [function definition](../reference/tm_g_distribution.html#decorating-module) shows us that there are four output objects that can be decorated: -`histogram_plot` (`ggplot2`), `qq_plot` (`ggplot2`), `summary_table` (`listing_df`) and `test_table` (`listing_df`). +Also, note that there are five different types of objects that can be decorated: +1. `ElementaryTable` +2. `ggplot` +3. `grob` +4. `datatables` +5. `trellis` -### Static Decoration -Here we create a simple decorator that does not provide user. -We will use this to change the title to a static title that we want. +*Tip:* A general tip before trying to decorate the output from the module is to +copy the reproducible code and running them in a separate R session to +quickly iterate the decoration you want. +## Decorating `ElementaryTable` -```{r static_decorator} -static_decorator <- teal_transform_module( - label = "Static decorator", - server = function(id, data) { - moduleServer(id, function(input, output, session) { - reactive({ - req(data()) - within(data(), { - histogram_plot <- histogram_plot + - ggtitle("This is a better title") - }) - }) - }) - } -) - -default_decorator <- teal_transform_module( - label = "Static decorator", - ui = function(id) { - tags$div( - textInput(NS(id, "title"), "Title", value = "This is a better title") - ) - }, - server = function(id, data) { - moduleServer(id, function(input, output, session) { - reactive({ - req(data()) - within(data(), - { - if (exists("elbow_plot")) { - elbow_plot <- elbow_plot + - ggtitle(title) - } - # if (exists("circle_plot")) { - # circle_plot <- circle_plot + - # ggtitle(title) - # } - # if (exists("biplot")) { - # biplot <- biplot + - # ggtitle(title) - # } - # if (exists("eigenvector_plot")) { - # eigenvector_plot <- eigenvector_plot + - # ggtitle(title) - # } - }, - title = input$title - ) - }) - }) - } -) +Here's an example to showcase how you can edit an output of class `ElementaryTable`. +`rtables` modifiers like `rtables::insert_rrow` can be applied to modify this object. +```{r decorate_ElementaryTable} library(teal.modules.general) -data <- teal_data() + +data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) data <- within(data, { require(nestcolor) - USArrests <- USArrests + ADSL <- rADSL }) -devtools::load_all() + +insert_rrow_decorator <- function(default_caption = "I am a good new row") { + teal_transform_module( + label = "New row", + ui = function(id) { + shiny::textInput(shiny::NS(id, "new_row"), "New row", value = default_caption) + }, + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + data() |> + within( + { + table <- rtables::insert_rrow(table, rtables::rrow(new_row)) + }, + new_row = input$new_row + ) + }) + }) + } + ) +} + app <- init( data = data, modules = modules( - tm_a_pca( - "PCA", - dat = data_extract_spec( - dataname = "USArrests", + tm_t_crosstable( + label = "Cross Table", + x = data_extract_spec( + dataname = "ADSL", select = select_spec( - choices = variable_choices( - data = data[["USArrests"]], c("Murder", "Assault", "UrbanPop", "Rape") - ), - selected = c("Murder", "Assault"), - multiple = TRUE - ), - filter = NULL + choices = variable_choices(data[["ADSL"]], subset = function(data) { + idx <- !vapply(data, inherits, logical(1), c("Date", "POSIXct", "POSIXlt")) + return(names(data)[idx]) + }), + selected = "COUNTRY", + multiple = TRUE, + ordered = TRUE + ) + ), + y = data_extract_spec( + dataname = "ADSL", + select = select_spec( + choices = variable_choices(data[["ADSL"]], subset = function(data) { + idx <- vapply(data, is.factor, logical(1)) + return(names(data)[idx]) + }), + selected = "SEX" + ) ), - decorators = list(default_decorator) + decorators = list( + table = insert_rrow_decorator() + ) ) ) ) -#> Initializing tm_a_pca + if (interactive()) { shinyApp(app$ui, app$server) } ``` +```{r shinylive_iframe_1, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} +code <- paste0(c( + "interactive <- function() TRUE", + knitr::knit_code$get("setup"), + knitr::knit_code$get("decorate_ElementaryTable") +), collapse = "\n") + +url <- roxy.shinylive::create_shinylive_url(code) +knitr::include_url(url, height = "800px") +``` + +## Decorating `ggplot` + +Here's an example to showcase how you can edit an output of class `ggplot`. +You can extend them using `ggplot2` functions. -```{r} +```{r decorate_ggplot} library(teal.modules.general) -data <- teal_data() + +data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) data <- within(data, { - iris <- iris + require(nestcolor) + ADSL <- rADSL }) +ggplot_caption_decorator <- function(default_caption = "I am a good decorator") { + teal_transform_module( + label = "Caption", + ui = function(id) { + shiny::textInput(shiny::NS(id, "footnote"), "Footnote", value = default_caption) + }, + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + data() |> + within( + { + plot <- plot + ggplot2::labs(caption = footnote) + }, + footnote = input$footnote + ) + }) + }) + } + ) +} + app <- init( data = data, - modules = list( - tm_g_distribution( - dist_var = data_extract_spec( - dataname = "iris", - select = select_spec(variable_choices("iris"), "Petal.Length") + modules = modules( + tm_a_regression( + label = "Regression", + response = data_extract_spec( + dataname = "ADSL", + select = select_spec( + label = "Select variable:", + choices = "BMRKR1", + selected = "BMRKR1", + multiple = FALSE, + fixed = TRUE + ) + ), + regressor = data_extract_spec( + dataname = "ADSL", + select = select_spec( + label = "Select variables:", + choices = variable_choices(data[["ADSL"]], c("AGE", "SEX", "RACE")), + selected = "AGE", + multiple = TRUE, + fixed = FALSE + ) ), - decorators = list(default_decorator) + decorators = list( + plot = ggplot_caption_decorator("I am a Regression") + ) ) ) ) + if (interactive()) { shinyApp(app$ui, app$server) } ``` -### Dynamic Decoration +```{r shinylive_iframe_2, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} +code <- paste0(c( + "interactive <- function() TRUE", + knitr::knit_code$get("setup"), + knitr::knit_code$get("decorate_ggplot") +), collapse = "\n") + +url <- roxy.shinylive::create_shinylive_url(code) +knitr::include_url(url, height = "800px") +``` + +## Decorating `grob` -### Reusable Variable Decoration +Here's an example to showcase how you can edit an output of class `grob`. +You can extend them using `grid` and `gridExtra` functions. -### Server +```{r decorate_grob} +library(teal.modules.general) -Here we create a simple decorator that does not provide user input. We will use `tm_g_bivariate` module, to illustrate -the example. Knowing that the module contains an object of class `ggplot2` named `plot`, we will modify its title and x-axis title: +data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) +data <- within(data, { + ADSL <- rADSL +}) -```{r static_decorator} -static_decorator <- teal_transform_module( - label = "Static decorator", - server = function(id, data) { - moduleServer(id, function(input, output, session) { - reactive({ - req(data()) - within(data(), { - plot <- plot + - ggtitle("This is a better title") + - xlab("the real x axis") +grob_caption_decorator <- function(default_caption = "I am a good decorator") { + teal_transform_module( + label = "Caption", + ui = function(id) { + shiny::textInput(shiny::NS(id, "footnote"), "Footnote", value = default_caption) + }, + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + data() |> + within( + { + footnote_grob <- grid::textGrob( + footnote, + x = 0, hjust = 0, + gp = grid::gpar(fontsize = 10, fontface = "italic", col = "gray50") + ) + plot <- gridExtra::arrangeGrob( + plot, + footnote_grob, + ncol = 1, + heights = grid::unit.c( + grid::unit(1, "npc") - grid::unit(1, "lines"), grid::unit(1, "lines") + ) + ) + }, + footnote = input$footnote + ) }) }) - }) - } -) -``` + } + ) +} +app <- init( + data = data, + modules = modules( + tm_g_association( + ref = data_extract_spec( + dataname = "ADSL", + select = select_spec( + choices = variable_choices( + data[["ADSL"]], + c("SEX", "RACE", "COUNTRY", "ARM", "STRATA1", "STRATA2", "ITTFL", "BMRKR2") + ), + selected = "RACE" + ) + ), + vars = data_extract_spec( + dataname = "ADSL", + select = select_spec( + choices = variable_choices( + data[["ADSL"]], + c("SEX", "RACE", "COUNTRY", "ARM", "STRATA1", "STRATA2", "ITTFL", "BMRKR2") + ), + selected = "BMRKR2", + multiple = TRUE + ) + ), + decorators = list( + plot = grob_caption_decorator("I am a Association") + ) + ) + ) +) -### UI +if (interactive()) { + shinyApp(app$ui, app$server) +} +``` -If decoration requires user input, a `ui` function can be added. -Here, the x-axis title is obtained from a `textInput` widget, giving the user some flexibility. -Note how the input values are passed to the `within()` function using its `...` argument. -See `?teal.code::within.qenv` for more examples. +```{r shinylive_iframe_3, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} +code <- paste0(c( + "interactive <- function() TRUE", + knitr::knit_code$get("setup"), + knitr::knit_code$get("decorate_grob") +), collapse = "\n") -```{r interactive_decorator} -interactive_decorator <- teal_transform_module( - label = "Interactive decorator", - ui = function(id) { - ns <- NS(id) - div( - textInput(ns("x_axis_title"), "X axis title", value = "the suggested x axis") - ) - }, - server = function(id, data) { - moduleServer(id, function(input, output, session) { - reactive({ - req(data()) - within(data(), - { - plot <- plot + - ggtitle("This is a better title") + - xlab(my_title) - }, - my_title = input$x_axis_title - ) - }) - }) - } -) +url <- roxy.shinylive::create_shinylive_url(code) +knitr::include_url(url, height = "800px") ``` +## Decorating `datatables` -### Variable Names as Arguments +Here's an example to showcase how you can edit an output of class `datatables`. +Please refer the [helper functions](https://rstudio.github.io/DT/functions.html) of the `DT` package to learn more about extending the `datatables` objects. +```{r decorate_datatables} +library(teal.modules.general) -The server function of a decorating `teal_transform_module` must conform to the names of the variables that exist in the server function of the decorated `teal` module. -Writing a universal decorator that applies to any module is impossible because different modules may use different variable names for their output elements. -It is possible, however, to create a decorator that will take the relevant variable names as arguments. -Here, the `output_name` variable name is passed to a decorator, allowing it to work with multiple modules. +data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) +data <- within(data, { + require(nestcolor) + ADSL <- rADSL +}) +fact_vars_adsl <- names(Filter(isTRUE, sapply(data[["ADSL"]], is.factor))) +vars <- choices_selected(variable_choices(data[["ADSL"]], fact_vars_adsl)) -```{r dynamic_decorator} -dynamic_decorator <- function(output_name) { +dt_table_decorator <- function(color1 = "pink", color2 = "lightblue") { teal_transform_module( - label = "Dynamic decorator", + label = "Table color", ui = function(id) { - ns <- NS(id) - div( - textInput(ns("x_axis_title"), "X axis title", value = "the syggested x axis") + selectInput( + NS(id, "color"), + "Table Color", + choices = c("white", color1, color2), + selected = "Default" ) }, server = function(id, data) { moduleServer(id, function(input, output, session) { reactive({ - req(data()) - within(data(), + data() |> within( { - output_name <- output_name + - xlab(x_axis_title) + summary_table <- DT::formatStyle( + summary_table, + columns = attr(summary_table$x, "colnames")[-1], + target = "row", + backgroundColor = color + ) }, - output_name = as.name(output_name), - x_axis_title = input$x_axis_title + color = input$color ) }) }) } ) } -``` - -Note that when the function is used, `output_name` will be passed a character string but the expression passed to `within` needs a `name`/`symbol`, a language object, hence the argument value must be converted to a `name`. - - -## Using Decorators - -### Single decoration - -Here is a minimal illustration, where decorators are passed to the module through `decorators` argument. We create a helper function `tm_g_bivariate_decorated` that works on `tm_g_bivariate` with some custom setup, so that we can illustrate multiple decorators on the same module with the same setup. - - -```{r tm_g_bivariate_decorated} -tm_g_bivariate_decorated <- function(label, decorators = list()) { - tm_g_bivariate( - label = label, - x = data_extract_spec( - dataname = "CO2", - select = select_spec( - label = "Select variable:", - choices = variable_choices(data[["CO2"]]), - selected = "conc", - fixed = FALSE - ) - ), - y = data_extract_spec( - dataname = "CO2", - select = select_spec( - label = "Select variable:", - choices = variable_choices(data[["CO2"]]), - selected = "uptake", - multiple = FALSE, - fixed = FALSE - ) - ), - row_facet = data_extract_spec( - dataname = "CO2", - select = select_spec( - label = "Select variable:", - choices = variable_choices(data[["CO2"]]), - selected = "Type", - fixed = FALSE - ) - ), - col_facet = data_extract_spec( - dataname = "CO2", - select = select_spec( - label = "Select variable:", - choices = variable_choices(data[["CO2"]]), - selected = "Treatment", - fixed = FALSE - ) - ), - decorators = decorators - ) -} -``` - -#### Application - -Note that every call to the module (`tm_g_bivariate_decorated`) takes a list containing _one_ decorator. - -```{r app_1} -data <- teal_data() -data <- within(data, { - require(nestcolor) - CO2 <- data.frame(CO2) -}) app <- init( data = data, modules = modules( - tm_g_bivariate_decorated("undecorated"), - tm_g_bivariate_decorated("static", decorators = list(static_decorator)), - tm_g_bivariate_decorated("interactive", decorators = list(interactive_decorator)), - tm_g_bivariate_decorated("dynamic", decorators = list(dynamic_decorator("plot"))) + tm_g_distribution( + dist_var = data_extract_spec( + dataname = "ADSL", + select = select_spec( + choices = variable_choices(data[["ADSL"]], c("AGE", "BMRKR1")), + selected = "BMRKR1", + multiple = FALSE, + fixed = FALSE + ) + ), + strata_var = data_extract_spec( + dataname = "ADSL", + filter = filter_spec( + vars = vars, + multiple = TRUE + ) + ), + group_var = data_extract_spec( + dataname = "ADSL", + filter = filter_spec( + vars = vars, + multiple = TRUE + ) + ), + decorators = list( + summary_table = dt_table_decorator() + ) + ) ) ) + if (interactive()) { shinyApp(app$ui, app$server) } ``` -```{r shinylive_iframe_1, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} +```{r shinylive_iframe_4, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} code <- paste0(c( "interactive <- function() TRUE", knitr::knit_code$get("setup"), - knitr::knit_code$get("static_decorator"), - knitr::knit_code$get("interactive_decorator"), - knitr::knit_code$get("dynamic_decorator"), - knitr::knit_code$get("tm_g_bivariate_decorated"), - knitr::knit_code$get("app_1") + knitr::knit_code$get("decorate_datatables") ), collapse = "\n") + url <- roxy.shinylive::create_shinylive_url(code) knitr::include_url(url, height = "800px") ``` -### Decorating Multiple Outputs +## Decorating `trellis` -Here we will apply decoration to two outputs in one module. We will use `tm_g_distribution` module -to illustrate the example. You can check module's documentation `?tm_g_distribution` to see that it allows -to adjust objects called: `histogram_plot`, `qq_plot`, `summary_table` and `test_table`. In this example we will modify `histogram_plot` and `qq_plot`. Those names need to be explicitly used in the decorators. Those also need to be used as names of the list passed to `decorators` argument. See `Application` section below. +Here's an example to showcase how you can edit an output of class `trellis`. +`rtables` modifiers like `rtables::insert_rrow` can be applied to modify this object. -#### Application - -Pay attention to how `decorators` are passed. This is a named list (where names corresponds to the objects existing inside module) of lists of `teal_transform_module`s. We will use `dynamic_decorator` to edit both objects. +```{r decorate_trellis} +library(teal.modules.general) -```{r app_2} -data <- teal_data() +data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) data <- within(data, { - iris <- iris + require(nestcolor) + ADSL <- rADSL + ADRS <- rADRS }) +trellis_subtitle_decorator <- function(default_caption = "I am a good decorator") { + teal_transform_module( + label = "Caption", + ui = function(id) shiny::textInput(shiny::NS(id, "footnote"), "Footnote", value = default_caption), + server = function(id, data) { + moduleServer(id, function(input, output, session) { + reactive({ + data() |> + within( + { + plot <- update(plot, sub = footnote) + }, + footnote = input$footnote + ) + }) + }) + } + ) +} + app <- init( data = data, - modules = list( - tm_g_distribution( - dist_var = data_extract_spec( - dataname = "iris", - select = select_spec(variable_choices("iris"), "Petal.Length") + modules = modules( + tm_g_scatterplotmatrix( + label = "Scatterplot matrix", + variables = list( + data_extract_spec( + dataname = "ADSL", + select = select_spec( + choices = variable_choices(data[["ADSL"]]), + selected = c("AGE", "RACE", "SEX"), + multiple = TRUE, + ordered = TRUE + ) + ), + data_extract_spec( + dataname = "ADRS", + filter = filter_spec( + label = "Select endpoints:", + vars = c("PARAMCD", "AVISIT"), + choices = value_choices(data[["ADRS"]], c("PARAMCD", "AVISIT"), c("PARAM", "AVISIT")), + selected = "INVET - END OF INDUCTION", + multiple = TRUE + ), + select = select_spec( + choices = variable_choices(data[["ADRS"]]), + selected = c("AGE", "AVAL", "ADY"), + multiple = TRUE, + ordered = TRUE + ) + ) ), decorators = list( - histogram_plot = list(dynamic_decorator("histogram_plot")), - qq_plot = list(dynamic_decorator("qq_plot")) + plot = trellis_subtitle_decorator("I am a Scatterplot matrix") ) ) ) ) + if (interactive()) { shinyApp(app$ui, app$server) } ``` -```{r shinylive_iframe_2, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} +```{r shinylive_iframe_5, echo = FALSE, out.width = '150%', out.extra = 'style = "position: relative; z-index:1"', eval = requireNamespace("roxy.shinylive", quietly = TRUE) && knitr::is_html_output() && identical(Sys.getenv("IN_PKGDOWN"), "true")} code <- paste0(c( "interactive <- function() TRUE", knitr::knit_code$get("setup"), - knitr::knit_code$get("dynamic_decorator"), - knitr::knit_code$get("app_2") + knitr::knit_code$get("decorate_trellis") ), collapse = "\n") + url <- roxy.shinylive::create_shinylive_url(code) knitr::include_url(url, height = "800px") ``` From d2a34eb95c34e8decb380ecd417ee10c64d17c96 Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 24 Feb 2025 20:14:17 +0530 Subject: [PATCH 12/18] choree: supress message --- R/tm_missing_data.R | 4 ++-- vignettes/decorate-module-output.Rmd | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/R/tm_missing_data.R b/R/tm_missing_data.R index fbec99a0b..1400cd9f1 100644 --- a/R/tm_missing_data.R +++ b/R/tm_missing_data.R @@ -22,8 +22,8 @@ #' This module generates the following objects, which can be modified in place using decorators: #' - `summary_plot` (`grob` created with [ggplot2::ggplotGrob()]) #' - `combination_plot` (`grob` created with [ggplot2::ggplotGrob()]) -#' - `by_subject_plot` (`ggplot2`) -#' - `table` (`datatable` created with [DT::datatable()]) +#' - `by_subject_plot` (`ggplot`) +#' - `table` (`datatables` created with [DT::datatable()]) #' #' A Decorator is applied to the specific output using a named list of `teal_transform_module` objects. #' The name of this list corresponds to the name of the output to which the decorator is applied. diff --git a/vignettes/decorate-module-output.Rmd b/vignettes/decorate-module-output.Rmd index ad41ade65..e960e8abd 100644 --- a/vignettes/decorate-module-output.Rmd +++ b/vignettes/decorate-module-output.Rmd @@ -69,7 +69,7 @@ quickly iterate the decoration you want. Here's an example to showcase how you can edit an output of class `ElementaryTable`. `rtables` modifiers like `rtables::insert_rrow` can be applied to modify this object. -```{r decorate_ElementaryTable} +```{r decorate_ElementaryTable, message=FALSE} library(teal.modules.general) data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) @@ -155,7 +155,7 @@ knitr::include_url(url, height = "800px") Here's an example to showcase how you can edit an output of class `ggplot`. You can extend them using `ggplot2` functions. -```{r decorate_ggplot} +```{r decorate_ggplot, message=FALSE} library(teal.modules.general) data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) @@ -239,7 +239,7 @@ knitr::include_url(url, height = "800px") Here's an example to showcase how you can edit an output of class `grob`. You can extend them using `grid` and `gridExtra` functions. -```{r decorate_grob} +```{r decorate_grob, message=FALSE} library(teal.modules.general) data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) @@ -430,7 +430,7 @@ knitr::include_url(url, height = "800px") Here's an example to showcase how you can edit an output of class `trellis`. `rtables` modifiers like `rtables::insert_rrow` can be applied to modify this object. -```{r decorate_trellis} +```{r decorate_trellis, message=FALSE} library(teal.modules.general) data <- teal_data(join_keys = default_cdisc_join_keys[c("ADSL", "ADRS")]) From 17b05162b6029dadf02122de6ed0efd42cdf0d54 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 24 Feb 2025 14:51:54 +0000 Subject: [PATCH 13/18] [skip roxygen] [skip vbump] Roxygen Man Pages Auto Update --- man/tm_missing_data.Rd | 2 +- man/tm_outliers.Rd | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index 537c392c4..d963018f9 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -88,7 +88,7 @@ This module generates the following objects, which can be modified in place usin \item \code{summary_plot} (\code{grob} created with \code{\link[ggplot2:ggplotGrob]{ggplot2::ggplotGrob()}}) \item \code{combination_plot} (\code{grob} created with \code{\link[ggplot2:ggplotGrob]{ggplot2::ggplotGrob()}}) \item \code{by_subject_plot} (\code{ggplot}) -\item \code{table} (\code{datatable} created with \code{\link[DT:datatable]{DT::datatable()}}) +\item \code{table} (\code{datatables} created with \code{\link[DT:datatable]{DT::datatable()}}) } A Decorator is applied to the specific output using a named list of \code{teal_transform_module} objects. diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index 512cbfa19..13b7748da 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -78,7 +78,7 @@ This module generates the following objects, which can be modified in place usin \item \code{box_plot} (\code{ggplot}) \item \code{density_plot} (\code{ggplot}) \item \code{cumulative_plot} (\code{ggplot}) -\item \code{table} (\code{datatable} created with \code{\link[DT:datatable]{DT::datatable()}}) +\item \code{table} (\code{datatables} created with \code{\link[DT:datatable]{DT::datatable()}}) } A Decorator is applied to the specific output using a named list of \code{teal_transform_module} objects. From d0900ba92ea5b4a5abfdf9ecaa0c69e7ab4fbabf Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 24 Feb 2025 20:24:30 +0530 Subject: [PATCH 14/18] chore: pass spellcheck --- inst/WORDLIST | 4 ++++ vignettes/decorate-module-output.Rmd | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/inst/WORDLIST b/inst/WORDLIST index d00a0162f..6f9477d61 100644 --- a/inst/WORDLIST +++ b/inst/WORDLIST @@ -1,3 +1,4 @@ +ElementaryTable Forkers Hoffmann Prebuilt @@ -5,9 +6,12 @@ Shinylive TLG UI customizable +datatables facetting funder +ggplot pre +qq repo reproducibility sortable diff --git a/vignettes/decorate-module-output.Rmd b/vignettes/decorate-module-output.Rmd index e960e8abd..635ac7083 100644 --- a/vignettes/decorate-module-output.Rmd +++ b/vignettes/decorate-module-output.Rmd @@ -22,7 +22,7 @@ It is hard to design an output that will satisfy every possible user, so the for Here we describe the concept of _decoration_, enabling the app developer to tailor outputs to their specific requirements without rewriting the original module code. The decoration process is build upon transformation procedures, introduced in `teal`. -While transformators are meant to edit module's input, decorators are meant to adjust the module's output. +While `transformators` are meant to edit module's input, decorators are meant to adjust the module's output. To distinguish the difference, modules in `teal.modules.general` have 2 separate parameters: `transformators` and `decorators`. @@ -32,7 +32,7 @@ To get a complete understanding refer the following vignettes: [this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html), - Transforming module output in [this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-module-output.html). -## Decoratable outputs +## Outputs that can be decorated It is important to note which output objects from a given module can be decorated. The module function documentation's _Decorating Module_ section has this information. From 67321e101f931667d6033db9a3e2892e759acad4 Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 24 Feb 2025 20:28:00 +0530 Subject: [PATCH 15/18] chore: break line --- vignettes/decorate-module-output.Rmd | 1 + 1 file changed, 1 insertion(+) diff --git a/vignettes/decorate-module-output.Rmd b/vignettes/decorate-module-output.Rmd index 635ac7083..a653b86cc 100644 --- a/vignettes/decorate-module-output.Rmd +++ b/vignettes/decorate-module-output.Rmd @@ -54,6 +54,7 @@ You can also refer the table shown below to know which module outputs can be dec | `tm_t_crosstable` | table (ElementaryTable) | Also, note that there are five different types of objects that can be decorated: + 1. `ElementaryTable` 2. `ggplot` 3. `grob` From a3bed0a9cba0496dbede225c3ca1e2b283f8fb14 Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 24 Feb 2025 20:42:34 +0530 Subject: [PATCH 16/18] chore: remove explicit returns --- R/tm_outliers.R | 7 ++++--- vignettes/decorate-module-output.Rmd | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/R/tm_outliers.R b/R/tm_outliers.R index 1fc8a5808..2ad0d054a 100644 --- a/R/tm_outliers.R +++ b/R/tm_outliers.R @@ -536,12 +536,13 @@ srv_outliers <- function(id, data, reporter, filter_panel_api, outlier_var, # this is utils function that converts a %>% NULL %>% b into a %>% b remove_pipe_null <- function(x) { if (length(x) == 1) { - return(x) + ans <- x } if (identical(x[[1]], as.name("%>%")) && is.null(x[[3]])) { - return(remove_pipe_null(x[[2]])) + ans <- remove_pipe_null(x[[2]]) } - return(as.call(c(x[[1]], lapply(x[-1], remove_pipe_null)))) + ans <- as.call(c(x[[1]], lapply(x[-1], remove_pipe_null))) + ans } qenv <- teal.code::eval_code( diff --git a/vignettes/decorate-module-output.Rmd b/vignettes/decorate-module-output.Rmd index a653b86cc..a19f9117a 100644 --- a/vignettes/decorate-module-output.Rmd +++ b/vignettes/decorate-module-output.Rmd @@ -111,7 +111,7 @@ app <- init( select = select_spec( choices = variable_choices(data[["ADSL"]], subset = function(data) { idx <- !vapply(data, inherits, logical(1), c("Date", "POSIXct", "POSIXlt")) - return(names(data)[idx]) + names(data)[idx] }), selected = "COUNTRY", multiple = TRUE, @@ -123,7 +123,7 @@ app <- init( select = select_spec( choices = variable_choices(data[["ADSL"]], subset = function(data) { idx <- vapply(data, is.factor, logical(1)) - return(names(data)[idx]) + names(data)[idx] }), selected = "SEX" ) From 173f78a68ea7583068a5809c9a66fd253204f7df Mon Sep 17 00:00:00 2001 From: vedhav Date: Mon, 24 Feb 2025 22:54:58 +0530 Subject: [PATCH 17/18] :facepalm: --- R/tm_outliers.R | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/R/tm_outliers.R b/R/tm_outliers.R index 2ad0d054a..a53628efc 100644 --- a/R/tm_outliers.R +++ b/R/tm_outliers.R @@ -536,13 +536,12 @@ srv_outliers <- function(id, data, reporter, filter_panel_api, outlier_var, # this is utils function that converts a %>% NULL %>% b into a %>% b remove_pipe_null <- function(x) { if (length(x) == 1) { - ans <- x - } - if (identical(x[[1]], as.name("%>%")) && is.null(x[[3]])) { - ans <- remove_pipe_null(x[[2]]) + x + } else if (identical(x[[1]], as.name("%>%")) && is.null(x[[3]])) { + remove_pipe_null(x[[2]]) + } else { + as.call(c(x[[1]], lapply(x[-1], remove_pipe_null))) } - ans <- as.call(c(x[[1]], lapply(x[-1], remove_pipe_null))) - ans } qenv <- teal.code::eval_code( From a9ceb1d7d5c5088f1b16128ed6764493fde4e5f8 Mon Sep 17 00:00:00 2001 From: vedhav Date: Tue, 25 Feb 2025 10:16:28 +0530 Subject: [PATCH 18/18] chore: address review comments --- R/tm_a_pca.R | 2 +- R/tm_a_regression.R | 2 +- R/tm_g_association.R | 2 +- R/tm_g_bivariate.R | 2 +- R/tm_g_distribution.R | 2 +- R/tm_g_response.R | 2 +- R/tm_g_scatterplot.R | 2 +- R/tm_g_scatterplotmatrix.R | 2 +- R/tm_missing_data.R | 2 +- R/tm_outliers.R | 2 +- R/tm_t_crosstable.R | 2 +- R/utils.R | 7 ++----- man/shared_params.Rd | 7 ++----- man/tm_a_pca.Rd | 9 +++------ man/tm_a_regression.Rd | 9 +++------ man/tm_g_association.Rd | 9 +++------ man/tm_g_bivariate.Rd | 9 +++------ man/tm_g_distribution.Rd | 9 +++------ man/tm_g_response.Rd | 9 +++------ man/tm_g_scatterplot.Rd | 9 +++------ man/tm_g_scatterplotmatrix.Rd | 9 +++------ man/tm_missing_data.Rd | 9 +++------ man/tm_outliers.Rd | 9 +++------ man/tm_t_crosstable.Rd | 9 +++------ vignettes/decorate-module-output.Rmd | 2 +- 25 files changed, 49 insertions(+), 88 deletions(-) diff --git a/R/tm_a_pca.R b/R/tm_a_pca.R index 92806a1c0..7227856f1 100644 --- a/R/tm_a_pca.R +++ b/R/tm_a_pca.R @@ -42,7 +42,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_a_regression.R b/R/tm_a_regression.R index 4cf17cba3..5ec46337a 100644 --- a/R/tm_a_regression.R +++ b/R/tm_a_regression.R @@ -62,7 +62,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_g_association.R b/R/tm_g_association.R index 5db1747b7..637364fce 100644 --- a/R/tm_g_association.R +++ b/R/tm_g_association.R @@ -43,7 +43,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_g_bivariate.R b/R/tm_g_bivariate.R index 5fc74e8ce..46b769f9e 100644 --- a/R/tm_g_bivariate.R +++ b/R/tm_g_bivariate.R @@ -65,7 +65,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_g_distribution.R b/R/tm_g_distribution.R index 5b974faf0..12ea14ea1 100644 --- a/R/tm_g_distribution.R +++ b/R/tm_g_distribution.R @@ -51,7 +51,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_g_response.R b/R/tm_g_response.R index 11c0d7c30..c833d1bd3 100644 --- a/R/tm_g_response.R +++ b/R/tm_g_response.R @@ -58,7 +58,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_g_scatterplot.R b/R/tm_g_scatterplot.R index df15550dc..e9c8ce3c6 100644 --- a/R/tm_g_scatterplot.R +++ b/R/tm_g_scatterplot.R @@ -49,7 +49,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_g_scatterplotmatrix.R b/R/tm_g_scatterplotmatrix.R index b378c4b9d..e4eddb7cd 100644 --- a/R/tm_g_scatterplotmatrix.R +++ b/R/tm_g_scatterplotmatrix.R @@ -37,7 +37,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_missing_data.R b/R/tm_missing_data.R index 1400cd9f1..ff89c47c8 100644 --- a/R/tm_missing_data.R +++ b/R/tm_missing_data.R @@ -42,7 +42,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_outliers.R b/R/tm_outliers.R index a53628efc..e9ee4036d 100644 --- a/R/tm_outliers.R +++ b/R/tm_outliers.R @@ -40,7 +40,7 @@ #' ``` #' #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/tm_t_crosstable.R b/R/tm_t_crosstable.R index 0c38471af..c2ae8ae8a 100644 --- a/R/tm_t_crosstable.R +++ b/R/tm_t_crosstable.R @@ -43,7 +43,7 @@ #' ) #' ``` #' For additional details and examples of decorators, refer to the vignette -#' `vignette("decorate-module-output, package = "teal.modules.general")`. +#' `vignette("decorate-module-output", package = "teal.modules.general")`. #' #' To learn more please refer to the vignette #' `vignette("transform-module-output", package = "teal")` or the [`teal::teal_transform_module()`] documentation. diff --git a/R/utils.R b/R/utils.R index e42df735f..5eb3609fd 100644 --- a/R/utils.R +++ b/R/utils.R @@ -34,12 +34,9 @@ #' - When the length of `size` is three: the plot points size are dynamically adjusted based on #' vector of `value`, `min`, and `max`. #' @param decorators `r lifecycle::badge("experimental")` -#' (`list` of `teal_transform_module`, named `list` of lists of `teal_transform_module`) optional, +#' (named `list` of lists of `teal_transform_module`) optional, #' decorator for tables or plots included in the module output reported. -#' When a named list of `teal_transform_module`, the decorators are applied to the respective output objects. -#' Either all named or all unnamed decorators need to be passed. -#' -#' Otherwise, the decorators are applied to all objects, which is equivalent as using the name `default`. +#' The decorators are applied to the respective output objects. #' #' See section "Decorating Module" below for more details. #' diff --git a/man/shared_params.Rd b/man/shared_params.Rd index e26e2600d..5e27ea0dc 100644 --- a/man/shared_params.Rd +++ b/man/shared_params.Rd @@ -49,12 +49,9 @@ vector of \code{value}, \code{min}, and \code{max}. }} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } diff --git a/man/tm_a_pca.Rd b/man/tm_a_pca.Rd index bb306b5d9..2fdfdf650 100644 --- a/man/tm_a_pca.Rd +++ b/man/tm_a_pca.Rd @@ -77,12 +77,9 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -122,7 +119,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_a_regression.Rd b/man/tm_a_regression.Rd index 6e2da1849..37a215e71 100644 --- a/man/tm_a_regression.Rd +++ b/man/tm_a_regression.Rd @@ -101,12 +101,9 @@ argument in \code{teal.widgets::optionalSliderInputValMinMax}. To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -144,7 +141,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_g_association.Rd b/man/tm_g_association.Rd index 40537d2ea..9e651dc70 100644 --- a/man/tm_g_association.Rd +++ b/man/tm_g_association.Rd @@ -62,12 +62,9 @@ For more details see the vignette: \code{vignette("custom-ggplot2-arguments", pa To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -104,7 +101,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_g_bivariate.Rd b/man/tm_g_bivariate.Rd index 43bad38d9..09fd2e2d2 100644 --- a/man/tm_g_bivariate.Rd +++ b/man/tm_g_bivariate.Rd @@ -107,12 +107,9 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -151,7 +148,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_g_distribution.Rd b/man/tm_g_distribution.Rd index a7c382c7a..a064a26fe 100644 --- a/man/tm_g_distribution.Rd +++ b/man/tm_g_distribution.Rd @@ -69,12 +69,9 @@ into context. For example the \code{\link[shiny:helpText]{shiny::helpText()}} el To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -113,7 +110,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_g_response.Rd b/man/tm_g_response.Rd index b5ae7d0fb..2a617112a 100644 --- a/man/tm_g_response.Rd +++ b/man/tm_g_response.Rd @@ -87,12 +87,9 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -132,7 +129,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_g_scatterplot.Rd b/man/tm_g_scatterplot.Rd index 75553340c..556c87b34 100644 --- a/man/tm_g_scatterplot.Rd +++ b/man/tm_g_scatterplot.Rd @@ -100,12 +100,9 @@ For more details see the vignette: \code{vignette("custom-ggplot2-arguments", pa To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -143,7 +140,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_g_scatterplotmatrix.Rd b/man/tm_g_scatterplotmatrix.Rd index 514179d30..f90d7cf52 100644 --- a/man/tm_g_scatterplotmatrix.Rd +++ b/man/tm_g_scatterplotmatrix.Rd @@ -41,12 +41,9 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -83,7 +80,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_missing_data.Rd b/man/tm_missing_data.Rd index d963018f9..6d2f03824 100644 --- a/man/tm_missing_data.Rd +++ b/man/tm_missing_data.Rd @@ -62,12 +62,9 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -107,7 +104,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_outliers.Rd b/man/tm_outliers.Rd index 13b7748da..f8c15278d 100644 --- a/man/tm_outliers.Rd +++ b/man/tm_outliers.Rd @@ -53,12 +53,9 @@ adding context or further instructions. Elements like \code{shiny::helpText()} a To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -97,7 +94,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/man/tm_t_crosstable.Rd b/man/tm_t_crosstable.Rd index 3c5ceb984..c761018da 100644 --- a/man/tm_t_crosstable.Rd +++ b/man/tm_t_crosstable.Rd @@ -56,12 +56,9 @@ For more details see the vignette: \code{vignette("custom-basic-table-arguments" To learn more check \code{vignette("transform-input-data", package = "teal")}.} \item{decorators}{\ifelse{html}{\href{https://lifecycle.r-lib.org/articles/stages.html#experimental}{\figure{lifecycle-experimental.svg}{options: alt='[Experimental]'}}}{\strong{[Experimental]}} -(\code{list} of \code{teal_transform_module}, named \code{list} of lists of \code{teal_transform_module}) optional, +(named \code{list} of lists of \code{teal_transform_module}) optional, decorator for tables or plots included in the module output reported. -When a named list of \code{teal_transform_module}, the decorators are applied to the respective output objects. -Either all named or all unnamed decorators need to be passed. - -Otherwise, the decorators are applied to all objects, which is equivalent as using the name \code{default}. +The decorators are applied to the respective output objects. See section "Decorating Module" below for more details.} } @@ -97,7 +94,7 @@ See code snippet below: }\if{html}{\out{}} For additional details and examples of decorators, refer to the vignette -\verb{vignette("decorate-module-output, package = "teal.modules.general")}. +\code{vignette("decorate-module-output", package = "teal.modules.general")}. To learn more please refer to the vignette \code{vignette("transform-module-output", package = "teal")} or the \code{\link[teal:teal_transform_module]{teal::teal_transform_module()}} documentation. diff --git a/vignettes/decorate-module-output.Rmd b/vignettes/decorate-module-output.Rmd index a19f9117a..321224e3e 100644 --- a/vignettes/decorate-module-output.Rmd +++ b/vignettes/decorate-module-output.Rmd @@ -29,7 +29,7 @@ To distinguish the difference, modules in `teal.modules.general` have 2 separat To get a complete understanding refer the following vignettes: - Transforming the input data in -[this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html), +[this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-input-data.html). - Transforming module output in [this vignette](https://insightsengineering.github.io/teal/latest-tag/articles/transform-module-output.html). ## Outputs that can be decorated