Compare commits
7 Commits
ee77807d6e
...
v1.0.1
| Author | SHA1 | Date | |
|---|---|---|---|
| 93927e0cef | |||
| 618f6f6186 | |||
| 6ce44cc15f | |||
| dfe0a1c49e | |||
| 56f1c979df | |||
| ab9172f88d | |||
| c58830441b |
@@ -1,6 +1,6 @@
|
||||
Package: AVSDevR.ShinyApplication
|
||||
Title: Shiny Application Wrapper
|
||||
Version: 0.0.0.9000
|
||||
Version: 1.0.1
|
||||
Authors@R:
|
||||
person("Craig", "Williams", , "craig@avsdev.uk", role = c("aut", "cre"))
|
||||
Description: Wraps a shiny application with some helper scripts, including
|
||||
|
||||
@@ -1,17 +1,25 @@
|
||||
|
||||
#' AdminLTE (bootstrap dashboard) themed R shiny application
|
||||
#'
|
||||
#' @export
|
||||
# nolint next: object_name_linter. R6Class
|
||||
AdminLTEApplication <- R6::R6Class(
|
||||
"AdminLTEApplication",
|
||||
inherit = FrameApplication,
|
||||
public = list(
|
||||
#' @description Uses a specific AdminLTE skin colour
|
||||
#' @param skin <character> The AdminLTE skin colour to use
|
||||
withSkin = function(skin) {
|
||||
private$skin <- skin
|
||||
invisible(self)
|
||||
},
|
||||
#' @description Returns the basic FrameApplication UI without the AdminLTE
|
||||
#' page body.
|
||||
#' @returns R Shiny tagList for the frame UI
|
||||
frameUI = function() {
|
||||
super$ui()
|
||||
},
|
||||
#' @description AdminLTE ui for an R Shiny application
|
||||
#' @returns R Shiny tagList for an AdminLTE UI
|
||||
ui = function() {
|
||||
ui <- shiny::tags$body(
|
||||
class = paste0("hold-transition skin-", private$skin),
|
||||
|
||||
@@ -1,9 +1,15 @@
|
||||
|
||||
#' Basic R shiny application
|
||||
#'
|
||||
#' @export
|
||||
# nolint next: object_name_linter. R6Class
|
||||
FrameApplication <- R6::R6Class(
|
||||
"FrameApplication",
|
||||
public = list(
|
||||
#' @description Creates a new R Shiny application
|
||||
#' @param appPage <module> An application module (attempts to load
|
||||
#' pages/application.R if not supplied)
|
||||
#' @param language <character> The language to use for the HTML page
|
||||
#' (defaults to "en")
|
||||
initialize = function(appPage = NULL, language = NULL) {
|
||||
if (!is.null(appPage)) {
|
||||
private$appPage <- appPage
|
||||
@@ -15,6 +21,8 @@ FrameApplication <- R6::R6Class(
|
||||
}
|
||||
invisible(self)
|
||||
},
|
||||
#' @description Binds the application to a session logger
|
||||
#' @param sessionLogger The session logger instance to use
|
||||
withSessionLogger = function(sessionLogger) {
|
||||
if (!inherits(sessionLogger, "SessionLogger")) {
|
||||
rlang::abort("sessionLogger is not an instance of SessionLogger class")
|
||||
@@ -22,10 +30,18 @@ FrameApplication <- R6::R6Class(
|
||||
private$sessionLogger <- sessionLogger
|
||||
invisible(self)
|
||||
},
|
||||
#' @description Loads with the Bootstrap 4 shim CSS file
|
||||
withBootstrap4Shim = function() {
|
||||
private$withBS4 <- TRUE
|
||||
invisible(self)
|
||||
},
|
||||
#' @description Returns a DBClient instance for the current session
|
||||
#' @param session An R Shiny session
|
||||
#' @param db_config The database configuration to use (will attempt to find
|
||||
#' and load a global.R or .env.R file if not supploed)
|
||||
#' @param allowFailure If a configuration cannot be loaded or a connection
|
||||
#' to the database cannot be made, do not abort
|
||||
#' @returns A DBClient instance which is useable for the session
|
||||
getSessionDBClient = function(
|
||||
session, db_config = NULL, allowFailure = FALSE
|
||||
) {
|
||||
@@ -59,6 +75,7 @@ FrameApplication <- R6::R6Class(
|
||||
# Create the client instance
|
||||
AVSDevR.DBClient::DBClient$new(db_conn)
|
||||
},
|
||||
#' @description Creates the UI component for an R Shiny application
|
||||
ui = function() {
|
||||
if (file.exists("widgets/menu.R")) {
|
||||
# Multi-frame application
|
||||
@@ -103,9 +120,9 @@ FrameApplication <- R6::R6Class(
|
||||
if (private$withBS4) {
|
||||
# Attach boostrap 4 css shim
|
||||
if (getOption("shiny.minified", TRUE)) {
|
||||
css <- "bootstrap-4-shim.min.css"
|
||||
css <- "css/bootstrap-4-shim.min.css"
|
||||
} else {
|
||||
css <- "bootstrap-4-shim.css"
|
||||
css <- "css/bootstrap-4-shim.css"
|
||||
}
|
||||
uiDeps <- htmltools::htmlDependency(
|
||||
"AVSDevR.ShinyApplication",
|
||||
@@ -119,6 +136,11 @@ FrameApplication <- R6::R6Class(
|
||||
# Set the language
|
||||
shiny:::setLang(ui, private$language)
|
||||
},
|
||||
#' @description Creates the server component for an R Shiny application
|
||||
#' @param input The UI inputs bound for the session
|
||||
#' @param output The UI outputs bound for the session
|
||||
#' @param session The current session
|
||||
#' @param ... Parameters passed into the inner application
|
||||
server = function(input, output, session, ...) {
|
||||
if (!is.null(private$sessionLogger)) {
|
||||
private$sessionLogger$attachSession(session)
|
||||
@@ -131,6 +153,8 @@ FrameApplication <- R6::R6Class(
|
||||
...
|
||||
)
|
||||
},
|
||||
#' @description Instantiates an R Shiny application
|
||||
#' @returns An R Shiny application suitable for \link[shiny]{runApp}
|
||||
app = function() {
|
||||
shiny::shinyApp(self$ui(), self$server)
|
||||
}
|
||||
|
||||
@@ -1,8 +1,16 @@
|
||||
#' R shiny application session logger
|
||||
#'
|
||||
#' Wraps an R Shiny application or attaches to an R Shiny session to log session
|
||||
#' start / end events
|
||||
#'
|
||||
#' @export
|
||||
# nolint next: object_name_linter. R6Class
|
||||
SessionLogger <- R6::R6Class(
|
||||
"SessionLogger",
|
||||
public = list(
|
||||
#' @description Wraps an existing R Shiny application with a session logger
|
||||
#' @param app An R Shiny application (\link[shiny]{shinyApp})
|
||||
#' @returns The wrapped R Shiny application
|
||||
wrap = function(app) {
|
||||
wrapped_server <- function(input, output, session, ...) {
|
||||
self$attachSession(session)
|
||||
@@ -15,6 +23,10 @@ SessionLogger <- R6::R6Class(
|
||||
|
||||
app
|
||||
},
|
||||
#' @description Attaches to an existing R Shiny session to log start / end
|
||||
#' events.
|
||||
#' @param session An R Shiny session to log start / end events for
|
||||
#' @returns A function which can be called to cancel the "end" log
|
||||
attachSession = function(session) {
|
||||
private$onSessionStarted(session)
|
||||
session$onSessionEnded(function() {
|
||||
@@ -64,6 +76,10 @@ SessionLogger <- R6::R6Class(
|
||||
)
|
||||
)
|
||||
|
||||
#' R shiny application session console logger.
|
||||
#'
|
||||
#' Logs session start / stop events to console.
|
||||
#'
|
||||
#' @export
|
||||
# nolint next: object_name_linter. R6Class
|
||||
SessionLoggerConsole <- R6::R6Class(
|
||||
@@ -92,14 +108,21 @@ SessionLoggerConsole <- R6::R6Class(
|
||||
)
|
||||
)
|
||||
|
||||
#' R shiny application session database logger
|
||||
#'
|
||||
#' Logs session start / stop events to database
|
||||
#'
|
||||
#' @export
|
||||
# nolint next: object_name_linter. R6Class
|
||||
SessionLoggerDB <- R6::R6Class(
|
||||
"SessionLoggerDB",
|
||||
inherit = SessionLogger,
|
||||
public = list(
|
||||
#' @description Initialises the instance with a database client
|
||||
#' \link[AVSDevR.DBClient]{DBClient}
|
||||
#' @param db_client <\link[AVSDevR.DBClient]{DBClient}> A DBClient instance
|
||||
initialize = function(db_client) {
|
||||
if (is.null(conn) || !R6::is.R6(conn) || !inherits(conn, "DBClient")) {
|
||||
if (is.null(db_client) || !inherits(db_client, "DBClient")) {
|
||||
stop("DBClient instance required!")
|
||||
}
|
||||
private$db_client <- db_client
|
||||
@@ -111,15 +134,15 @@ SessionLoggerDB <- R6::R6Class(
|
||||
logSessionEvent = function(
|
||||
event, session = shiny::getDefaultReactiveDomain()
|
||||
) {
|
||||
db_client$connect()
|
||||
private$db_client$getConnection()$connect()
|
||||
on.exit({
|
||||
db_client$disconnect()
|
||||
private$db_client$getConnection()$disconnect()
|
||||
})
|
||||
|
||||
event_row <- tibble::tibble(
|
||||
app_name = basename(getwd()),
|
||||
app_pid = Sys.getpid(),
|
||||
client_ip = getClientIp(session),
|
||||
client_ip = private$getClientIp(session),
|
||||
user_id = session$userData$user_id,
|
||||
session_token = session$token,
|
||||
!!event := lubridate::now()
|
||||
|
||||
@@ -1,9 +1,16 @@
|
||||
#' Core UserFrosting (basic AdminLTE themed) R shiny application
|
||||
#'
|
||||
#' @export
|
||||
# nolint next: object_name_linter. R6Class
|
||||
UFApplication <- R6::R6Class(
|
||||
"UFApplication",
|
||||
inherit = AdminLTEApplication,
|
||||
public = list(
|
||||
#' @description Sets up the UserFrosting configuration for the application
|
||||
#' @param uri <character> The URI for the UserFrosting API instance
|
||||
#' @param with_users <logical> Enable UF user API interaction
|
||||
#' @param user_optional <logical> Are users optional?
|
||||
#' @param app_name <character> The shiny application name for the UF API
|
||||
configureUF = function(
|
||||
uri, with_users = TRUE, user_optional = FALSE, app_name = NULL
|
||||
) {
|
||||
@@ -19,6 +26,9 @@ UFApplication <- R6::R6Class(
|
||||
}
|
||||
invisible(self)
|
||||
},
|
||||
#' @description Instantiates an R Shiny application with UserFrosting
|
||||
#' support.
|
||||
#' @returns An R Shiny application suitable for \link[shiny]{runApp}
|
||||
app = function() {
|
||||
AVSDevR.UserFrosting::ufWrapApplication(
|
||||
super$app(), private$ufURI, private$with_users,
|
||||
|
||||
@@ -1,13 +1,20 @@
|
||||
#' UserFrosting full dashboard R shiny application
|
||||
#'
|
||||
#' @export
|
||||
# nolint next: object_name_linter. R6Class
|
||||
UFDashboardApplication <- R6::R6Class(
|
||||
"UFDashboardApplication",
|
||||
inherit = UFApplication,
|
||||
public = list(
|
||||
#' @description Starts the application with the UserFrosting sidebar
|
||||
#' collapsed by default
|
||||
withSidebarCollapsed = function() {
|
||||
private$sidebar_collapsed <- TRUE
|
||||
invisible(self)
|
||||
},
|
||||
#' @description Creates the UserFrosting UI component for an R Shiny
|
||||
#' application
|
||||
#' @returns An R Shiny tagList for \link[shiny]{shinyApp}
|
||||
ui = function() {
|
||||
if (file.exists("widgets/help.R")) {
|
||||
private$mHelp <- modules::use("widgets/help.R")
|
||||
@@ -67,6 +74,14 @@ UFDashboardApplication <- R6::R6Class(
|
||||
# Set the language
|
||||
shiny:::setLang(ui, private$language)
|
||||
},
|
||||
#' @description Creates the UserFrosting server component for an R Shiny
|
||||
#' application
|
||||
#' @param input The UI inputs bound for the session
|
||||
#' @param output The UI outputs bound for the session
|
||||
#' @param session The current session
|
||||
#' @param ufApi The UserFrosting API instance
|
||||
#' @param ufUser The UserFrosting user if authenticated and verified
|
||||
#' @param ... Parameters passed into the inner application
|
||||
server = function(
|
||||
input, output, session, ufApi = NULL, ufUser = NULL, ...
|
||||
) {
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#' UserFrosting frame only R shiny application
|
||||
#'
|
||||
#' @export
|
||||
# nolint next: object_name_linter. R6Class
|
||||
UFFrameApplication <- R6::R6Class(
|
||||
|
||||
95
man/AdminLTEApplication.Rd
Normal file
95
man/AdminLTEApplication.Rd
Normal file
@@ -0,0 +1,95 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/adminLTEApplication.R
|
||||
\name{AdminLTEApplication}
|
||||
\alias{AdminLTEApplication}
|
||||
\title{AdminLTE (bootstrap dashboard) themed R shiny application}
|
||||
\value{
|
||||
R Shiny tagList for the frame UI
|
||||
|
||||
R Shiny tagList for an AdminLTE UI
|
||||
}
|
||||
\description{
|
||||
AdminLTE (bootstrap dashboard) themed R shiny application
|
||||
|
||||
AdminLTE (bootstrap dashboard) themed R shiny application
|
||||
}
|
||||
\section{Super class}{
|
||||
\code{\link[AVSDevR.ShinyApplication:FrameApplication]{AVSDevR.ShinyApplication::FrameApplication}} -> \code{AdminLTEApplication}
|
||||
}
|
||||
\section{Methods}{
|
||||
\subsection{Public methods}{
|
||||
\itemize{
|
||||
\item \href{#method-AdminLTEApplication-withSkin}{\code{AdminLTEApplication$withSkin()}}
|
||||
\item \href{#method-AdminLTEApplication-frameUI}{\code{AdminLTEApplication$frameUI()}}
|
||||
\item \href{#method-AdminLTEApplication-ui}{\code{AdminLTEApplication$ui()}}
|
||||
\item \href{#method-AdminLTEApplication-clone}{\code{AdminLTEApplication$clone()}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{
|
||||
<details><summary>Inherited methods</summary>
|
||||
<ul>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="app"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-app'><code>AVSDevR.ShinyApplication::FrameApplication$app()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="getSessionDBClient"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-getSessionDBClient'><code>AVSDevR.ShinyApplication::FrameApplication$getSessionDBClient()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="initialize"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-initialize'><code>AVSDevR.ShinyApplication::FrameApplication$initialize()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="server"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-server'><code>AVSDevR.ShinyApplication::FrameApplication$server()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="withBootstrap4Shim"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-withBootstrap4Shim'><code>AVSDevR.ShinyApplication::FrameApplication$withBootstrap4Shim()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="withSessionLogger"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-withSessionLogger'><code>AVSDevR.ShinyApplication::FrameApplication$withSessionLogger()</code></a></span></li>
|
||||
</ul>
|
||||
</details>
|
||||
}}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-AdminLTEApplication-withSkin"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-AdminLTEApplication-withSkin}{}}}
|
||||
\subsection{Method \code{withSkin()}}{
|
||||
Uses a specific AdminLTE skin colour
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{AdminLTEApplication$withSkin(skin)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{skin}}{\if{html}{\out{<character>}} The AdminLTE skin colour to use}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-AdminLTEApplication-frameUI"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-AdminLTEApplication-frameUI}{}}}
|
||||
\subsection{Method \code{frameUI()}}{
|
||||
Returns the basic FrameApplication UI without the AdminLTE
|
||||
page body.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{AdminLTEApplication$frameUI()}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-AdminLTEApplication-ui"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-AdminLTEApplication-ui}{}}}
|
||||
\subsection{Method \code{ui()}}{
|
||||
AdminLTE ui for an R Shiny application
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{AdminLTEApplication$ui()}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-AdminLTEApplication-clone"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-AdminLTEApplication-clone}{}}}
|
||||
\subsection{Method \code{clone()}}{
|
||||
The objects of this class are cloneable with this method.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{AdminLTEApplication$clone(deep = FALSE)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{deep}}{Whether to make a deep clone.}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
}
|
||||
164
man/FrameApplication.Rd
Normal file
164
man/FrameApplication.Rd
Normal file
@@ -0,0 +1,164 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/frameApplication.R
|
||||
\name{FrameApplication}
|
||||
\alias{FrameApplication}
|
||||
\title{Basic R shiny application}
|
||||
\value{
|
||||
A DBClient instance which is useable for the session
|
||||
|
||||
An R Shiny application suitable for \link[shiny]{runApp}
|
||||
}
|
||||
\description{
|
||||
Basic R shiny application
|
||||
|
||||
Basic R shiny application
|
||||
}
|
||||
\section{Methods}{
|
||||
\subsection{Public methods}{
|
||||
\itemize{
|
||||
\item \href{#method-FrameApplication-new}{\code{FrameApplication$new()}}
|
||||
\item \href{#method-FrameApplication-withSessionLogger}{\code{FrameApplication$withSessionLogger()}}
|
||||
\item \href{#method-FrameApplication-withBootstrap4Shim}{\code{FrameApplication$withBootstrap4Shim()}}
|
||||
\item \href{#method-FrameApplication-getSessionDBClient}{\code{FrameApplication$getSessionDBClient()}}
|
||||
\item \href{#method-FrameApplication-ui}{\code{FrameApplication$ui()}}
|
||||
\item \href{#method-FrameApplication-server}{\code{FrameApplication$server()}}
|
||||
\item \href{#method-FrameApplication-app}{\code{FrameApplication$app()}}
|
||||
\item \href{#method-FrameApplication-clone}{\code{FrameApplication$clone()}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-FrameApplication-new"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-FrameApplication-new}{}}}
|
||||
\subsection{Method \code{new()}}{
|
||||
Creates a new R Shiny application
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{FrameApplication$new(appPage = NULL, language = NULL)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{appPage}}{\if{html}{\out{<module>}} An application module (attempts to load
|
||||
pages/application.R if not supplied)}
|
||||
|
||||
\item{\code{language}}{\if{html}{\out{<character>}} The language to use for the HTML page
|
||||
(defaults to "en")}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-FrameApplication-withSessionLogger"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-FrameApplication-withSessionLogger}{}}}
|
||||
\subsection{Method \code{withSessionLogger()}}{
|
||||
Binds the application to a session logger
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{FrameApplication$withSessionLogger(sessionLogger)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{sessionLogger}}{The session logger instance to use}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-FrameApplication-withBootstrap4Shim"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-FrameApplication-withBootstrap4Shim}{}}}
|
||||
\subsection{Method \code{withBootstrap4Shim()}}{
|
||||
Loads with the Bootstrap 4 shim CSS file
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{FrameApplication$withBootstrap4Shim()}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-FrameApplication-getSessionDBClient"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-FrameApplication-getSessionDBClient}{}}}
|
||||
\subsection{Method \code{getSessionDBClient()}}{
|
||||
Returns a DBClient instance for the current session
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{FrameApplication$getSessionDBClient(
|
||||
session,
|
||||
db_config = NULL,
|
||||
allowFailure = FALSE
|
||||
)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{session}}{An R Shiny session}
|
||||
|
||||
\item{\code{db_config}}{The database configuration to use (will attempt to find
|
||||
and load a global.R or .env.R file if not supploed)}
|
||||
|
||||
\item{\code{allowFailure}}{If a configuration cannot be loaded or a connection
|
||||
to the database cannot be made, do not abort}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-FrameApplication-ui"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-FrameApplication-ui}{}}}
|
||||
\subsection{Method \code{ui()}}{
|
||||
Creates the UI component for an R Shiny application
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{FrameApplication$ui()}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-FrameApplication-server"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-FrameApplication-server}{}}}
|
||||
\subsection{Method \code{server()}}{
|
||||
Creates the server component for an R Shiny application
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{FrameApplication$server(input, output, session, ...)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{input}}{The UI inputs bound for the session}
|
||||
|
||||
\item{\code{output}}{The UI outputs bound for the session}
|
||||
|
||||
\item{\code{session}}{The current session}
|
||||
|
||||
\item{\code{...}}{Parameters passed into the inner application}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-FrameApplication-app"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-FrameApplication-app}{}}}
|
||||
\subsection{Method \code{app()}}{
|
||||
Instantiates an R Shiny application
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{FrameApplication$app()}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-FrameApplication-clone"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-FrameApplication-clone}{}}}
|
||||
\subsection{Method \code{clone()}}{
|
||||
The objects of this class are cloneable with this method.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{FrameApplication$clone(deep = FALSE)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{deep}}{Whether to make a deep clone.}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
}
|
||||
80
man/SessionLogger.Rd
Normal file
80
man/SessionLogger.Rd
Normal file
@@ -0,0 +1,80 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/sessionLogger.R
|
||||
\name{SessionLogger}
|
||||
\alias{SessionLogger}
|
||||
\title{R shiny application session logger}
|
||||
\value{
|
||||
The wrapped R Shiny application
|
||||
|
||||
A function which can be called to cancel the "end" log
|
||||
}
|
||||
\description{
|
||||
R shiny application session logger
|
||||
|
||||
R shiny application session logger
|
||||
}
|
||||
\details{
|
||||
Wraps an R Shiny application or attaches to an R Shiny session to log session
|
||||
start / end events
|
||||
}
|
||||
\section{Methods}{
|
||||
\subsection{Public methods}{
|
||||
\itemize{
|
||||
\item \href{#method-SessionLogger-wrap}{\code{SessionLogger$wrap()}}
|
||||
\item \href{#method-SessionLogger-attachSession}{\code{SessionLogger$attachSession()}}
|
||||
\item \href{#method-SessionLogger-clone}{\code{SessionLogger$clone()}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-SessionLogger-wrap"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-SessionLogger-wrap}{}}}
|
||||
\subsection{Method \code{wrap()}}{
|
||||
Wraps an existing R Shiny application with a session logger
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{SessionLogger$wrap(app)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{app}}{An R Shiny application (\link[shiny]{shinyApp})}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-SessionLogger-attachSession"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-SessionLogger-attachSession}{}}}
|
||||
\subsection{Method \code{attachSession()}}{
|
||||
Attaches to an existing R Shiny session to log start / end
|
||||
events.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{SessionLogger$attachSession(session)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{session}}{An R Shiny session to log start / end events for}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-SessionLogger-clone"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-SessionLogger-clone}{}}}
|
||||
\subsection{Method \code{clone()}}{
|
||||
The objects of this class are cloneable with this method.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{SessionLogger$clone(deep = FALSE)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{deep}}{Whether to make a deep clone.}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
}
|
||||
43
man/SessionLoggerConsole.Rd
Normal file
43
man/SessionLoggerConsole.Rd
Normal file
@@ -0,0 +1,43 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/sessionLogger.R
|
||||
\name{SessionLoggerConsole}
|
||||
\alias{SessionLoggerConsole}
|
||||
\title{R shiny application session console logger.}
|
||||
\description{
|
||||
Logs session start / stop events to console.
|
||||
}
|
||||
\section{Super class}{
|
||||
\code{\link[AVSDevR.ShinyApplication:SessionLogger]{AVSDevR.ShinyApplication::SessionLogger}} -> \code{SessionLoggerConsole}
|
||||
}
|
||||
\section{Methods}{
|
||||
\subsection{Public methods}{
|
||||
\itemize{
|
||||
\item \href{#method-SessionLoggerConsole-clone}{\code{SessionLoggerConsole$clone()}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{
|
||||
<details open><summary>Inherited methods</summary>
|
||||
<ul>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="SessionLogger" data-id="attachSession"><a href='../../AVSDevR.ShinyApplication/html/SessionLogger.html#method-SessionLogger-attachSession'><code>AVSDevR.ShinyApplication::SessionLogger$attachSession()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="SessionLogger" data-id="wrap"><a href='../../AVSDevR.ShinyApplication/html/SessionLogger.html#method-SessionLogger-wrap'><code>AVSDevR.ShinyApplication::SessionLogger$wrap()</code></a></span></li>
|
||||
</ul>
|
||||
</details>
|
||||
}}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-SessionLoggerConsole-clone"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-SessionLoggerConsole-clone}{}}}
|
||||
\subsection{Method \code{clone()}}{
|
||||
The objects of this class are cloneable with this method.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{SessionLoggerConsole$clone(deep = FALSE)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{deep}}{Whether to make a deep clone.}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
}
|
||||
67
man/SessionLoggerDB.Rd
Normal file
67
man/SessionLoggerDB.Rd
Normal file
@@ -0,0 +1,67 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/sessionLogger.R
|
||||
\name{SessionLoggerDB}
|
||||
\alias{SessionLoggerDB}
|
||||
\title{R shiny application session database logger}
|
||||
\description{
|
||||
R shiny application session database logger
|
||||
|
||||
R shiny application session database logger
|
||||
}
|
||||
\details{
|
||||
Logs session start / stop events to database
|
||||
}
|
||||
\section{Super class}{
|
||||
\code{\link[AVSDevR.ShinyApplication:SessionLogger]{AVSDevR.ShinyApplication::SessionLogger}} -> \code{SessionLoggerDB}
|
||||
}
|
||||
\section{Methods}{
|
||||
\subsection{Public methods}{
|
||||
\itemize{
|
||||
\item \href{#method-SessionLoggerDB-new}{\code{SessionLoggerDB$new()}}
|
||||
\item \href{#method-SessionLoggerDB-clone}{\code{SessionLoggerDB$clone()}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{
|
||||
<details open><summary>Inherited methods</summary>
|
||||
<ul>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="SessionLogger" data-id="attachSession"><a href='../../AVSDevR.ShinyApplication/html/SessionLogger.html#method-SessionLogger-attachSession'><code>AVSDevR.ShinyApplication::SessionLogger$attachSession()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="SessionLogger" data-id="wrap"><a href='../../AVSDevR.ShinyApplication/html/SessionLogger.html#method-SessionLogger-wrap'><code>AVSDevR.ShinyApplication::SessionLogger$wrap()</code></a></span></li>
|
||||
</ul>
|
||||
</details>
|
||||
}}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-SessionLoggerDB-new"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-SessionLoggerDB-new}{}}}
|
||||
\subsection{Method \code{new()}}{
|
||||
Initialises the instance with a database client
|
||||
\link[AVSDevR.DBClient]{DBClient}
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{SessionLoggerDB$new(db_client)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{db_client}}{<\link[AVSDevR.DBClient]{DBClient}> A DBClient instance}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-SessionLoggerDB-clone"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-SessionLoggerDB-clone}{}}}
|
||||
\subsection{Method \code{clone()}}{
|
||||
The objects of this class are cloneable with this method.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{SessionLoggerDB$clone(deep = FALSE)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{deep}}{Whether to make a deep clone.}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
}
|
||||
95
man/UFApplication.Rd
Normal file
95
man/UFApplication.Rd
Normal file
@@ -0,0 +1,95 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/ufApplication.R
|
||||
\name{UFApplication}
|
||||
\alias{UFApplication}
|
||||
\title{Core UserFrosting (basic AdminLTE themed) R shiny application}
|
||||
\value{
|
||||
An R Shiny application suitable for \link[shiny]{runApp}
|
||||
}
|
||||
\description{
|
||||
Core UserFrosting (basic AdminLTE themed) R shiny application
|
||||
|
||||
Core UserFrosting (basic AdminLTE themed) R shiny application
|
||||
}
|
||||
\section{Super classes}{
|
||||
\code{\link[AVSDevR.ShinyApplication:FrameApplication]{AVSDevR.ShinyApplication::FrameApplication}} -> \code{\link[AVSDevR.ShinyApplication:AdminLTEApplication]{AVSDevR.ShinyApplication::AdminLTEApplication}} -> \code{UFApplication}
|
||||
}
|
||||
\section{Methods}{
|
||||
\subsection{Public methods}{
|
||||
\itemize{
|
||||
\item \href{#method-UFApplication-configureUF}{\code{UFApplication$configureUF()}}
|
||||
\item \href{#method-UFApplication-app}{\code{UFApplication$app()}}
|
||||
\item \href{#method-UFApplication-clone}{\code{UFApplication$clone()}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{
|
||||
<details><summary>Inherited methods</summary>
|
||||
<ul>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="getSessionDBClient"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-getSessionDBClient'><code>AVSDevR.ShinyApplication::FrameApplication$getSessionDBClient()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="initialize"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-initialize'><code>AVSDevR.ShinyApplication::FrameApplication$initialize()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="server"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-server'><code>AVSDevR.ShinyApplication::FrameApplication$server()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="withBootstrap4Shim"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-withBootstrap4Shim'><code>AVSDevR.ShinyApplication::FrameApplication$withBootstrap4Shim()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="withSessionLogger"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-withSessionLogger'><code>AVSDevR.ShinyApplication::FrameApplication$withSessionLogger()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="AdminLTEApplication" data-id="frameUI"><a href='../../AVSDevR.ShinyApplication/html/AdminLTEApplication.html#method-AdminLTEApplication-frameUI'><code>AVSDevR.ShinyApplication::AdminLTEApplication$frameUI()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="AdminLTEApplication" data-id="ui"><a href='../../AVSDevR.ShinyApplication/html/AdminLTEApplication.html#method-AdminLTEApplication-ui'><code>AVSDevR.ShinyApplication::AdminLTEApplication$ui()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="AdminLTEApplication" data-id="withSkin"><a href='../../AVSDevR.ShinyApplication/html/AdminLTEApplication.html#method-AdminLTEApplication-withSkin'><code>AVSDevR.ShinyApplication::AdminLTEApplication$withSkin()</code></a></span></li>
|
||||
</ul>
|
||||
</details>
|
||||
}}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-UFApplication-configureUF"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-UFApplication-configureUF}{}}}
|
||||
\subsection{Method \code{configureUF()}}{
|
||||
Sets up the UserFrosting configuration for the application
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{UFApplication$configureUF(
|
||||
uri,
|
||||
with_users = TRUE,
|
||||
user_optional = FALSE,
|
||||
app_name = NULL
|
||||
)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{uri}}{\if{html}{\out{<character>}} The URI for the UserFrosting API instance}
|
||||
|
||||
\item{\code{with_users}}{\if{html}{\out{<logical>}} Enable UF user API interaction}
|
||||
|
||||
\item{\code{user_optional}}{\if{html}{\out{<logical>}} Are users optional?}
|
||||
|
||||
\item{\code{app_name}}{\if{html}{\out{<character>}} The shiny application name for the UF API}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-UFApplication-app"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-UFApplication-app}{}}}
|
||||
\subsection{Method \code{app()}}{
|
||||
Instantiates an R Shiny application with UserFrosting
|
||||
support.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{UFApplication$app()}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-UFApplication-clone"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-UFApplication-clone}{}}}
|
||||
\subsection{Method \code{clone()}}{
|
||||
The objects of this class are cloneable with this method.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{UFApplication$clone(deep = FALSE)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{deep}}{Whether to make a deep clone.}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
}
|
||||
114
man/UFDashboardApplication.Rd
Normal file
114
man/UFDashboardApplication.Rd
Normal file
@@ -0,0 +1,114 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/ufDashboardApplication.R
|
||||
\name{UFDashboardApplication}
|
||||
\alias{UFDashboardApplication}
|
||||
\title{UserFrosting full dashboard R shiny application}
|
||||
\value{
|
||||
An R Shiny tagList for \link[shiny]{shinyApp}
|
||||
}
|
||||
\description{
|
||||
UserFrosting full dashboard R shiny application
|
||||
|
||||
UserFrosting full dashboard R shiny application
|
||||
}
|
||||
\section{Super classes}{
|
||||
\code{\link[AVSDevR.ShinyApplication:FrameApplication]{AVSDevR.ShinyApplication::FrameApplication}} -> \code{\link[AVSDevR.ShinyApplication:AdminLTEApplication]{AVSDevR.ShinyApplication::AdminLTEApplication}} -> \code{\link[AVSDevR.ShinyApplication:UFApplication]{AVSDevR.ShinyApplication::UFApplication}} -> \code{UFDashboardApplication}
|
||||
}
|
||||
\section{Methods}{
|
||||
\subsection{Public methods}{
|
||||
\itemize{
|
||||
\item \href{#method-UFDashboardApplication-withSidebarCollapsed}{\code{UFDashboardApplication$withSidebarCollapsed()}}
|
||||
\item \href{#method-UFDashboardApplication-ui}{\code{UFDashboardApplication$ui()}}
|
||||
\item \href{#method-UFDashboardApplication-server}{\code{UFDashboardApplication$server()}}
|
||||
\item \href{#method-UFDashboardApplication-clone}{\code{UFDashboardApplication$clone()}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{
|
||||
<details><summary>Inherited methods</summary>
|
||||
<ul>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="getSessionDBClient"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-getSessionDBClient'><code>AVSDevR.ShinyApplication::FrameApplication$getSessionDBClient()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="initialize"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-initialize'><code>AVSDevR.ShinyApplication::FrameApplication$initialize()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="withBootstrap4Shim"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-withBootstrap4Shim'><code>AVSDevR.ShinyApplication::FrameApplication$withBootstrap4Shim()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="withSessionLogger"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-withSessionLogger'><code>AVSDevR.ShinyApplication::FrameApplication$withSessionLogger()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="AdminLTEApplication" data-id="frameUI"><a href='../../AVSDevR.ShinyApplication/html/AdminLTEApplication.html#method-AdminLTEApplication-frameUI'><code>AVSDevR.ShinyApplication::AdminLTEApplication$frameUI()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="AdminLTEApplication" data-id="withSkin"><a href='../../AVSDevR.ShinyApplication/html/AdminLTEApplication.html#method-AdminLTEApplication-withSkin'><code>AVSDevR.ShinyApplication::AdminLTEApplication$withSkin()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="UFApplication" data-id="app"><a href='../../AVSDevR.ShinyApplication/html/UFApplication.html#method-UFApplication-app'><code>AVSDevR.ShinyApplication::UFApplication$app()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="UFApplication" data-id="configureUF"><a href='../../AVSDevR.ShinyApplication/html/UFApplication.html#method-UFApplication-configureUF'><code>AVSDevR.ShinyApplication::UFApplication$configureUF()</code></a></span></li>
|
||||
</ul>
|
||||
</details>
|
||||
}}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-UFDashboardApplication-withSidebarCollapsed"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-UFDashboardApplication-withSidebarCollapsed}{}}}
|
||||
\subsection{Method \code{withSidebarCollapsed()}}{
|
||||
Starts the application with the UserFrosting sidebar
|
||||
collapsed by default
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{UFDashboardApplication$withSidebarCollapsed()}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-UFDashboardApplication-ui"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-UFDashboardApplication-ui}{}}}
|
||||
\subsection{Method \code{ui()}}{
|
||||
Creates the UserFrosting UI component for an R Shiny
|
||||
application
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{UFDashboardApplication$ui()}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-UFDashboardApplication-server"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-UFDashboardApplication-server}{}}}
|
||||
\subsection{Method \code{server()}}{
|
||||
Creates the UserFrosting server component for an R Shiny
|
||||
application
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{UFDashboardApplication$server(
|
||||
input,
|
||||
output,
|
||||
session,
|
||||
ufApi = NULL,
|
||||
ufUser = NULL,
|
||||
...
|
||||
)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{input}}{The UI inputs bound for the session}
|
||||
|
||||
\item{\code{output}}{The UI outputs bound for the session}
|
||||
|
||||
\item{\code{session}}{The current session}
|
||||
|
||||
\item{\code{ufApi}}{The UserFrosting API instance}
|
||||
|
||||
\item{\code{ufUser}}{The UserFrosting user if authenticated and verified}
|
||||
|
||||
\item{\code{...}}{Parameters passed into the inner application}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-UFDashboardApplication-clone"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-UFDashboardApplication-clone}{}}}
|
||||
\subsection{Method \code{clone()}}{
|
||||
The objects of this class are cloneable with this method.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{UFDashboardApplication$clone(deep = FALSE)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{deep}}{Whether to make a deep clone.}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
}
|
||||
53
man/UFFrameApplication.Rd
Normal file
53
man/UFFrameApplication.Rd
Normal file
@@ -0,0 +1,53 @@
|
||||
% Generated by roxygen2: do not edit by hand
|
||||
% Please edit documentation in R/ufFrameApplication.R
|
||||
\name{UFFrameApplication}
|
||||
\alias{UFFrameApplication}
|
||||
\title{UserFrosting frame only R shiny application}
|
||||
\description{
|
||||
UserFrosting frame only R shiny application
|
||||
|
||||
UserFrosting frame only R shiny application
|
||||
}
|
||||
\section{Super classes}{
|
||||
\code{\link[AVSDevR.ShinyApplication:FrameApplication]{AVSDevR.ShinyApplication::FrameApplication}} -> \code{\link[AVSDevR.ShinyApplication:AdminLTEApplication]{AVSDevR.ShinyApplication::AdminLTEApplication}} -> \code{\link[AVSDevR.ShinyApplication:UFApplication]{AVSDevR.ShinyApplication::UFApplication}} -> \code{UFFrameApplication}
|
||||
}
|
||||
\section{Methods}{
|
||||
\subsection{Public methods}{
|
||||
\itemize{
|
||||
\item \href{#method-UFFrameApplication-clone}{\code{UFFrameApplication$clone()}}
|
||||
}
|
||||
}
|
||||
\if{html}{\out{
|
||||
<details><summary>Inherited methods</summary>
|
||||
<ul>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="getSessionDBClient"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-getSessionDBClient'><code>AVSDevR.ShinyApplication::FrameApplication$getSessionDBClient()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="initialize"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-initialize'><code>AVSDevR.ShinyApplication::FrameApplication$initialize()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="server"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-server'><code>AVSDevR.ShinyApplication::FrameApplication$server()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="withBootstrap4Shim"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-withBootstrap4Shim'><code>AVSDevR.ShinyApplication::FrameApplication$withBootstrap4Shim()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="FrameApplication" data-id="withSessionLogger"><a href='../../AVSDevR.ShinyApplication/html/FrameApplication.html#method-FrameApplication-withSessionLogger'><code>AVSDevR.ShinyApplication::FrameApplication$withSessionLogger()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="AdminLTEApplication" data-id="frameUI"><a href='../../AVSDevR.ShinyApplication/html/AdminLTEApplication.html#method-AdminLTEApplication-frameUI'><code>AVSDevR.ShinyApplication::AdminLTEApplication$frameUI()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="AdminLTEApplication" data-id="ui"><a href='../../AVSDevR.ShinyApplication/html/AdminLTEApplication.html#method-AdminLTEApplication-ui'><code>AVSDevR.ShinyApplication::AdminLTEApplication$ui()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="AdminLTEApplication" data-id="withSkin"><a href='../../AVSDevR.ShinyApplication/html/AdminLTEApplication.html#method-AdminLTEApplication-withSkin'><code>AVSDevR.ShinyApplication::AdminLTEApplication$withSkin()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="UFApplication" data-id="app"><a href='../../AVSDevR.ShinyApplication/html/UFApplication.html#method-UFApplication-app'><code>AVSDevR.ShinyApplication::UFApplication$app()</code></a></span></li>
|
||||
<li><span class="pkg-link" data-pkg="AVSDevR.ShinyApplication" data-topic="UFApplication" data-id="configureUF"><a href='../../AVSDevR.ShinyApplication/html/UFApplication.html#method-UFApplication-configureUF'><code>AVSDevR.ShinyApplication::UFApplication$configureUF()</code></a></span></li>
|
||||
</ul>
|
||||
</details>
|
||||
}}
|
||||
\if{html}{\out{<hr>}}
|
||||
\if{html}{\out{<a id="method-UFFrameApplication-clone"></a>}}
|
||||
\if{latex}{\out{\hypertarget{method-UFFrameApplication-clone}{}}}
|
||||
\subsection{Method \code{clone()}}{
|
||||
The objects of this class are cloneable with this method.
|
||||
\subsection{Usage}{
|
||||
\if{html}{\out{<div class="r">}}\preformatted{UFFrameApplication$clone(deep = FALSE)}\if{html}{\out{</div>}}
|
||||
}
|
||||
|
||||
\subsection{Arguments}{
|
||||
\if{html}{\out{<div class="arguments">}}
|
||||
\describe{
|
||||
\item{\code{deep}}{Whether to make a deep clone.}
|
||||
}
|
||||
\if{html}{\out{</div>}}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user