Getting StartedInstallation and setup guides 5
LayoutWorkflow and structural layout components 7
OverlayModal and floating layer surfaces 3
FeedbackStatus, empty, progress, and loading placeholder patterns 5
FormInput and selection components 17
UtilityGeneral-purpose interface utilities 7
NavigationMenu surfaces and hierarchical actions 7

API reference

<tng-copy-button> gives you a ready-made copy control on top of the headless clipboard primitive.

Wrapper component

The wrapper renders a native button, swaps its label and icon state while copying, and exposes a polite live region for success and error feedback. Use it when you want a production-ready copy control without owning the transient state machine yourself.

Content and feedback inputs

InputTypeDefaultNotes
textstring | null | undefinedundefinedExplicit text payload to copy.
fromTngCopyFromTargetnullFallback source element or selector when text is omitted.
ignoreSelectorsstring | string[] | nullnullRemoves matched nodes from copied DOM text when copying from another element.
appearance'outline' | 'solid' | 'ghost''outline'Controls the default wrapper treatment.
size'sm' | 'md''md'Changes minimum height and horizontal padding.
showIconbooleantrueShows or hides the icon slot.
disabledbooleanfalseDisables all copy interaction.
resetDelaynumber1500Milliseconds before the wrapper returns to the idle state.
copyLabel, copyingLabel, copiedLabel, errorLabelstringbuilt-in defaultsLabel text for each wrapper state.
copyIconText, copiedIconTextstring, Fallback icon glyphs when no projected icon content is provided.
OutputPayloadDescription
tngCopiedstringEmits the copied text after success.
tngCopyErrorErrorEmits a normalized error when the copy attempt fails.

Primitive foundation

Under the hood, the wrapper forwards text, from, and ignoreSelectors into the headless tngCopy directive. If you need hotkeys, programmatic copy, or owner-managed live announcements, move to the dedicated headless CopyButton page and use tngCopy directly.