## clipboard_text (`poetry_clipboard_text`)

A read-only value with a button to copy it to the clipboard.

Class: Poetry::Ui::ClipboardText::Component - BEM block `poetry-ui-clipboard_text`.
- `described_by:` (string) - Ids for the input's aria-describedby (hint or error text).
- `disabled:` (boolean) - default false - Disables the input and the copy button together.
- `id:` (string) - The readonly input's DOM id (auto-generated when omitted) - the Field/Label for= target.
- `label:` (string) - The readonly input's accessible name when no Label/Field association exists.
- `text_to_copy:` (string) - Overrides what lands on the clipboard when the displayed value truncates: display short, copy full.
- `value:` (string) - required - The displayed text - also what copies, unless text_to_copy: overrides it.
- PART `clipboard-text` - Root - the controller rides here | states: data-copied (stamped for a beat after a successful copy (the stacked copy/check glyphs swap off it))
- PART `clipboard-text-group` - The bordered field surface - InputGroup's chrome
- PART `input-group-control` - The readonly mono <input> showing the value - selectable, never editable; InputGroup's control slot
- PART `input-group-addon` - The trailing cell holding the copy affordance - InputGroup's addon vocabulary | states: data-align=inline-end (always - inline-end holds the copy button)
- WIRING root: `poetry--core--clipboard-text` registers; values message, text (if)
- WIRING input: `poetry--core--clipboard-text` targets input
- WIRING copy_button: `poetry--core--clipboard-text` actions copy on click
- RULE: A read-only value with one copy affordance (poetry_clipboard_text) - API keys, install commands, IDs. Editable text is an Input; a secret that needs masking is a SensitiveInput.
- RULE: value: is what SHOWS; text_to_copy: overrides what lands on the clipboard when the display truncates - never truncate the copied text itself.
- RULE: Give it label: (or compose under a Field/Label) - the readonly input still needs its accessible name.
