insertUI Process

  1. insertUI sends a R message through session$sendInsertUI, via the websocket.
insertUI <- function(selector,
                     where = c("beforeBegin", "afterBegin",
                               "beforeEnd", "afterEnd"),
                     ui,
                     multiple = FALSE,
                     immediate = FALSE,
                     session = getDefaultReactiveDomain()) {
  
  force(selector)
  force(ui)
  force(session)
  force(multiple)
  if (missing(where)) where <- "beforeEnd"
  where <- match.arg(where)
  
  callback <- function() {
    session$sendInsertUI(selector = selector,
                         multiple = multiple,
                         where = where,
                         content = processDeps(ui, session))
  }
  
  if (!immediate) session$onFlushed(callback, once = TRUE)
  else callback()
}