/
data_dependency.R
45 lines (40 loc) · 1.07 KB
/
data_dependency.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
## experimental
data_dependency <- function(data, var_name) {
src <- tempdir()
filename <- tolower(var_name) %>% paste0(".js")
paste0("var ", var_name, "=", jsonlite::toJSON(data, auto_unbox = TRUE, force = TRUE)) %>%
readr::write_file(file.path(src, filename))
list(
htmltools::htmlDependency(
paste0("data-", tolower(var_name)),
version = "42",
src = src,
script = filename,
all_files = FALSE
)
)
}
#' Add JavaScript data file
#'
#' EXPERIMENTAL
#' @param deckgl deckgl widget
#' @param data data object
#' @param var_name JavaScript variable name used to make the data available
#' @export
add_data <- function(deckgl, data, var_name = "thanksForAllTheFish") {
.Deprecated("add_source")
deckgl$dependencies <- c(
deckgl$dependencies,
data_dependency(data, var_name)
)
deckgl
}
#' Get data
#'
#' EXPERIMENTAL, usually used in conjunction with \link{add_data}
#' @param var_name JavaScript variable name
#' @export
get_data <- function(var_name = "thanksForAllTheFish") {
.Deprecated("add_source")
JS(var_name)
}