Live demo — this example is server-driven; run the showcase locally for the interactive version.

Clipboard copy

Use Clipboard copy straight from a Qute template — parameters and slots instead of Java builders. This reference is generated from the runtime template sources: each template documents its parameters and slots in the header comment shown beneath its include line.

Templates

clipboard-copy

{#include components/forms/clipboard-copy /}
Clipboard copy — PatternFly v6 
 Required: id — derives {id}-input + {id}-content for aria-controls wiring on the expand toggle. 
 Required: text 
 Optional: readonly (optional), expandable (optional), expanded (optional — start expanded),
              expandedText (optional — full text for expandable panel),
              inline (optional), code (optional — inline code style), block (optional — inline block) 
                                                                                          
 Why text is a String param (not a content slot like title / label / etc.):              
 Two of the three variants (default + expandable) put the text into an <input value="…"> 
 attribute, which requires a primitive string — slot content can't be coerced into an    
 HTML attribute value from inside a Qute template. PF React gets away with `children`    
 only because React stringifies children when assigned to `value={…}`; there is no       
 equivalent in Qute (no built-in {#capture} to a string). Keeping `text` as a String     
 is the only shape that works uniformly across all three variants.                       
 Model mode: pass clipboardCopy=<org.sitenetsoft.quarkus.pha.model.ClipboardCopy> — adds body-copy (array/JSON),
   text styling and extra-action flavours.