// Adapted from Base UI compositions (MIT). See THIRD_PARTY_NOTICES.md. "use client"; import type { ComponentProps } from "react"; import { Field as Primitive, Form as FormPrimitive } from "./_ynrlib/base-ui.js"; export function Field({ className, ...props }: ComponentProps) { return ( `ynr-field-root ${className(state) ?? ""}` : `ynr-field-root ${className ?? ""}` } /> ); } export function FieldLabel({ className, ...props }: ComponentProps) { return ( `ynr-field-label ${className(state) ?? ""}` : `ynr-field-label ${className ?? ""}` } /> ); } export function FieldControl({ className, ...props }: ComponentProps) { return ( `ynr-field-control ${className(state) ?? ""}` : `ynr-field-control ${className ?? ""}` } /> ); } export function FieldDescription({ className, ...props }: ComponentProps) { return ( `ynr-field-description ${className(state) ?? ""}` : `ynr-field-description ${className ?? ""}` } /> ); } export function FieldError({ className, ...props }: ComponentProps) { return ( `ynr-field-error ${className(state) ?? ""}` : `ynr-field-error ${className ?? ""}` } /> ); } export const FieldValidity = Primitive.Validity; export function FieldItem({ className, ...props }: ComponentProps) { return ( `ynr-field-item ${className(state) ?? ""}` : `ynr-field-item ${className ?? ""}` } /> ); } // Optional submission context for a standalone installed field. export const FieldForm = FormPrimitive;