% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/app-options.R
\name{.options_server}
\alias{.options_server}
\title{Server-side counterpart for the Options panel}
\usage{
.options_server(id, metadata_cols = NULL)
}
\arguments{
\item{id}{The module namespace id.}

\item{metadata_cols}{Optional reactive returning a \code{character} vector of
metadata column names to populate the facet/group dropdowns.}
}
\value{
A reactive returning a named \code{list} with members \code{facets},
\code{facet_ncol}, \code{free_x}, \code{free_y}, \code{arrange_by}, \code{legend_position},
\code{title}, \code{legend_title}.
}
\description{
Collects the input values into a single reactive list with one entry per
option. Empty strings and \code{NA} are normalised to \code{NULL} so that
\code{\link[=.apply_options]{.apply_options()}} can simply test for non-\code{NULL} values when deciding
which \verb{lp_*()} layer to append.
}
\details{
If \code{metadata_cols} is supplied, the \verb{Facet by} and \verb{Group by} dropdowns
are kept in sync with the loaded data's metadata columns.
}
\keyword{internal}
