% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/paintr-build-ui.R
\name{build_ui_for}
\alias{build_ui_for}
\title{Build a Shiny UI Widget for a Typed-Tree Node}
\usage{
build_ui_for(node, ...)
}
\arguments{
\item{node}{A typed AST node (e.g. \code{ptr_ph_value}, \code{ptr_ph_data_consumer},
\code{ptr_ph_data_source}, \code{ptr_layer}).}

\item{...}{Additional arguments. Recognized by built-in methods:
\code{ui_text}, \code{layer_name}, \code{ns_fn}, \code{shell_copy},
\code{label_override} (force a specific widget label, used for shared widgets
referenced under several params). Consumer placeholders emit only a \code{uiOutput} container at
static build time; their picker is rendered server-side via
\code{ptr_setup_consumer_uis()}, which calls the registry's \code{build_ui(node, cols, ...)} inside \code{renderUI} once cols are resolved.}
}
\value{
A \code{shiny.tag} (or NULL for nodes that emit no UI).
}
\description{
S3 generic dispatched per node class. Resolves the human-readable label
through \code{ptr_resolve_ui_text}, namespaces the node's id (and any
\code{shortcut_id} for source nodes) via \code{ns_fn}, and forwards to the
registered \code{build_ui} hook for the placeholder's keyword.
}
\keyword{internal}
