Skip to content

Commit eea9977

Browse files
committed
fix unavailable items properties handling
1 parent f10126e commit eea9977

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

R/items-funs.R

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -695,9 +695,16 @@ items_as_tibble.doc_item <- function(items) {
695695
items_as_tibble.doc_items <- function(items) {
696696
check_items(items)
697697
non_atomic <- non_atomic_properties(items)
698+
properties <- items_fields(items, "properties")
698699
data <- lapply(items$features, function(item) {
700+
# fill unavailable properties
701+
unavailable_properties <- setdiff(properties, names(item$properties))
702+
item$properties[unavailable_properties] <- NA
703+
# update non-atomic properties
699704
item$properties[non_atomic] <- lapply(item$properties[non_atomic], list)
700-
item$properties
705+
# return properties from items in the same order
706+
# to avoid errors in the `mapply`
707+
item$properties[properties]
701708
})
702709
data <- do.call(mapply, args = c(list(FUN = c, SIMPLIFY = FALSE), data))
703710
structure(

0 commit comments

Comments
 (0)