You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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)
The text was updated successfully, but these errors were encountered:
That's true, if you think it's redundant then I'd understand. Although I still think it's a bit verbose for doing an operation that is common. Perhaps it's not common for other users though.
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:
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)
The text was updated successfully, but these errors were encountered: