-
Notifications
You must be signed in to change notification settings - Fork 71
Open
Description
Similarly to #389 , parsing out the classes of a tag in order to know if it contains a specific class is something I do often. I've seen in some clients code that they also try to do it, but I've seen it implemented wrongly many times (often people do a simple grep search within the classes string, which is incorrect).
I have the following function:
has_class <- function(tag, class) {
if (!inherits(tag, "shiny.tag")) {
stop("has_class: `tag` must be a shiny tag")
}
if (!nzchar(class)) {
stop("has_class: `class` must be a non-empty string")
}
if (grepl("\\s", class)) {
stop("has_class: `class` cannot contain any whitespace")
}
classes <- htmltools::tagGetAttribute(tag, "class")
if (is.null(classes)) {
return(FALSE)
}
classes <- strsplit(classes, "\\s+")[[1]]
Would you accept a PR for this function, or would you prefer not to? I'm also open to changing the behaviour (when to error vs return false / what to do when the class is an empty string / doing less error checking)
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels