Skip to content

Commit 0f7e32c

Browse files
committed
Add missing server call of examples app
1 parent 5c5ad0d commit 0f7e32c

File tree

1 file changed

+30
-9
lines changed
  • inst/examples/showcase

1 file changed

+30
-9
lines changed

inst/examples/showcase/app.R

Lines changed: 30 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
library(shiny.blueprint)
22
library(shiny.router)
33
library(shiny)
4+
library(purrr)
45

56
section <- function(name, ...) list(name = name, items = list(...))
67
item <- function(name, id) list(type = "item", name = name, id = id)
@@ -141,22 +142,36 @@ makePage <- function(id, name, ui, rCode) {
141142
)
142143
}
143144

144-
makeRouter <- function(items) {
145+
prepareExamples <- function(items) {
145146
routes <- lapply(items, function(item) {
146147
example <- readExample(item$id)
147148
if (is.null(example)) {
148149
return()
149150
}
150-
route(
151-
path = item$id,
152-
ui = makePage(
153-
id = item$id,
154-
name = item$name,
155-
ui = example$ui(item$id),
156-
rCode = example$rCode
151+
152+
example_server <- list()
153+
example_server[[item$id]] <- example$server
154+
return(
155+
list(
156+
server = example_server,
157+
router = route(
158+
path = item$id,
159+
ui = makePage(
160+
id = item$id,
161+
name = item$name,
162+
ui = example$ui(item$id),
163+
rCode = example$rCode
164+
)
165+
)
157166
)
158167
)
159168
})
169+
170+
return(routes)
171+
}
172+
173+
makeRouter <- function(items, routes) {
174+
160175
routes <- append(
161176
list(route(
162177
path = "/",
@@ -227,7 +242,8 @@ makeRouter <- function(items) {
227242
do.call(router_ui, routes)
228243
}
229244

230-
router <- makeRouter(items)
245+
examples <- prepareExamples(items)
246+
router <- makeRouter(items, map(examples, "router"))
231247

232248
addResourcePath("showcase-static", "./static")
233249

@@ -258,5 +274,10 @@ shinyApp(
258274
server = function(input, output, session) {
259275
router_server()
260276
session$sendCustomMessage("highlight_all", list())
277+
278+
example_servers <- unlist(map(examples, "server"))
279+
lapply(items, function(item, modules = example_servers) {
280+
modules[[item$id]](item$id)
281+
})
261282
}
262283
)

0 commit comments

Comments
 (0)