## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ## ----setup-------------------------------------------------------------------- library(blockr.core) ## flowchart LR ## subgraph blockr_ggplot2[blockr.ggplot2] ## new_block1[New block] ## new_block2[New block] ## end ## subgraph blockr_echarts4r[blockr.echarts4r] ## new_block3[New block] ## new_block4[New block] ## end ## blockr_ggplot2 --> |register| registry ## blockr_echarts4r --> |register| registry ## subgraph registry[Registry] ## subgraph select_reg[Select block] ## reg_name[Name: select block] ## reg_descr[Description: select columns in a table] ## reg_classes[Classes: select_block, tranform_block] ## reg_category[Category: transform] ## reg_ctor[Construcor: new_select_block] ## reg_package[Package: blockr.dplyr] ## end ## subgraph filter_reg[Filter block] ## end ## filter_reg --x |unregister| trash['fa:fa-trash'] ## end ## ----eval=FALSE--------------------------------------------------------------- # available_blocks()[["dataset_block"]] ## ----eval=TRUE---------------------------------------------------------------- names(available_blocks()) ## ----eval=TRUE---------------------------------------------------------------- # ./R/dummy-block.R new_dummy_block <- function(text = "Hello World", ...) { new_data_block( function(id) { moduleServer(id, function(input, output, session) { list( expr = reactive(quote(text)), state = list(text = text) ) }) }, function(id) { tagList() }, class = "dummy_block", ... ) } register_dummy_blocks <- function() { register_blocks( c(new_dummy_block), name = c("dummy block"), description = c("A block that does nothing"), overwrite = TRUE ) } register_dummy_blocks() ## ----------------------------------------------------------------------------- available_blocks()[["dummy_block"]] ## ----------------------------------------------------------------------------- unregister_blocks(uid = "dummy_block") # Check it out names(available_blocks()) ## ----blockr.ui-demo, eval=FALSE, echo = FALSE--------------------------------- # library(blockr.ui) # library(blockr.dplyr) # library(blockr.sdtm) # library(blockr.io) # run_demo_app() ## ----shinylive_url, echo = FALSE, results = 'asis'---------------------------- # extract the code from knitr code chunks by ID code <- paste0( c( "webr::install(\"blockr.ui\", repos = \"https://cynkra.github.io/blockr.webR/\")", "webr::install(\"blockr.dplyr\", repos = \"https://cynkra.github.io/blockr.webR/\")", "webr::install(\"blockr.sdtm\", repos = \"https://cynkra.github.io/blockr.webR/\")", "webr::install(\"blockr.io\", repos = \"https://cynkra.github.io/blockr.webR/\")", knitr::knit_code$get("blockr.ui-demo") ), collapse = "\n" ) url <- roxy.shinylive::create_shinylive_url(code, header = FALSE) ## ----shinylive_iframe, echo = FALSE, eval = TRUE------------------------------ tags$iframe( class = "border border-5 rounded shadow-lg", src = url, style = "zoom: 0.75;", width = "100%", height = "1100px" )