<template> <AppDoc name="InputGroupDemo" :sources="sources" /> </template> <script> export default { data() { return { sources: { 'options-api': { tabName: 'Options API Source', content: ` <template> <div> <h5>Addons</h5> <div class="grid p-fluid"> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <i class="pi pi-user"></i> </span> <InputText placeholder="Username" /> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon">$</span> <InputText placeholder="Price" /> <span class="p-inputgroup-addon">.00</span> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon">W</span> <InputText placeholder="Website" /> </div> </div> </div> <h5>Multiple Addons</h5> <div class="grid"> <div class="col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <i class="pi pi-clock"></i> </span> <span class="p-inputgroup-addon"> <i class="pi pi-star-fill"></i> </span> <InputText placeholder="Price" /> <span class="p-inputgroup-addon">$</span> <span class="p-inputgroup-addon">.00</span> </div> </div> </div> <h5>Button Addons</h5> <div class="grid p-fluid"> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <Button label="Search"/> <InputText placeholder="Keyword"/> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <InputText placeholder="Keyword"/> <Button icon="pi pi-search" class="p-button-warning"/> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <Button icon="pi pi-check" class="p-button-success"/> <InputText placeholder="Vote"/> <Button icon="pi pi-times" class="p-button-danger"/> </div> </div> </div> <h5>Checkbox and RadioButton</h5> <div class="grid p-fluid"> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <Checkbox v-model="checked1" :binary="true" /> </span> <InputText placeholder="Username"/> </div> </div> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <InputText placeholder="Price"/> <span class="p-inputgroup-addon"> <RadioButton name="rb1" value="rb1" v-model="radioValue1" /> </span> </div> </div> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <Checkbox v-model="checked2" :binary="true" /> </span> <InputText placeholder="Website"/> <span class="p-inputgroup-addon"> <RadioButton name="rb2" value="rb2" v-model="radioValue2" /> </span> </div> </div> </div> </div> </template> <script> export default { data() { return { checked1: false, checked2: false, radioValue1: '', radioValue2: '' } } } <\\/script>` }, 'composition-api': { tabName: 'Composition API Source', content: ` <template> <div> <h5>Addons</h5> <div class="grid p-fluid"> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <i class="pi pi-user"></i> </span> <InputText placeholder="Username" /> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon">$</span> <InputText placeholder="Price" /> <span class="p-inputgroup-addon">.00</span> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon">W</span> <InputText placeholder="Website" /> </div> </div> </div> <h5>Multiple Addons</h5> <div class="grid"> <div class="col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <i class="pi pi-clock"></i> </span> <span class="p-inputgroup-addon"> <i class="pi pi-star-fill"></i> </span> <InputText placeholder="Price" /> <span class="p-inputgroup-addon">$</span> <span class="p-inputgroup-addon">.00</span> </div> </div> </div> <h5>Button Addons</h5> <div class="grid p-fluid"> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <Button label="Search"/> <InputText placeholder="Keyword"/> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <InputText placeholder="Keyword"/> <Button icon="pi pi-search" class="p-button-warning"/> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <Button icon="pi pi-check" class="p-button-success"/> <InputText placeholder="Vote"/> <Button icon="pi pi-times" class="p-button-danger"/> </div> </div> </div> <h5>Checkbox and RadioButton</h5> <div class="grid p-fluid"> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <Checkbox v-model="checked1" :binary="true" /> </span> <InputText placeholder="Username"/> </div> </div> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <InputText placeholder="Price"/> <span class="p-inputgroup-addon"> <RadioButton name="rb1" value="rb1" v-model="radioValue1" /> </span> </div> </div> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <Checkbox v-model="checked2" :binary="true" /> </span> <InputText placeholder="Website"/> <span class="p-inputgroup-addon"> <RadioButton name="rb2" value="rb2" v-model="radioValue2" /> </span> </div> </div> </div> </div> </template> <script> import { ref } from 'vue'; export default { setup() { const checked1 = ref(false); const checked2 = ref(false); const radioValue1 = ref(''); const radioValue2 = ref(''); return { checked1, checked2, radioValue1, radioValue2 } } } <\\/script>` }, 'browser-source': { tabName: 'Browser Source', imports: `<script src="https://unpkg.com/primevue@^3/checkbox/checkbox.min.js"><\\/script> <script src="https://unpkg.com/primevue@^3/radiobutton/radiobutton.min.js"><\\/script>`, content: `<div id="app"> <h5>Addons</h5> <div class="grid p-fluid"> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <i class="pi pi-user"></i> </span> <p-inputtext placeholder="Username"></p-inputtext> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon">$</span> <p-inputtext placeholder="Price"></p-inputtext> <span class="p-inputgroup-addon">.00</span> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <span class="p-inputgroup-addon">W</span> <p-inputtext placeholder="Website"></p-inputtext> </div> </div> </div> <h5>Multiple Addons</h5> <div class="grid"> <div class="col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <i class="pi pi-clock"></i> </span> <span class="p-inputgroup-addon"> <i class="pi pi-star-fill"></i> </span> <p-inputtext placeholder="Price"></p-inputtext> <span class="p-inputgroup-addon">$</span> <span class="p-inputgroup-addon">.00</span> </div> </div> </div> <h5>Button Addons</h5> <div class="grid p-fluid"> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <p-button label="Search"></p-button> <p-inputtext placeholder="Keyword"></p-inputtext> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <p-inputtext placeholder="Keyword"></p-inputtext> <p-button icon="pi pi-search" class="p-button-warning"></p-button> </div> </div> <div class="col-12 md:col-4"> <div class="p-inputgroup"> <p-button icon="pi pi-check" class="p-button-success"></p-button> <p-inputtext placeholder="Vote"></p-inputtext> <p-button icon="pi pi-times" class="p-button-danger"></p-button> </div> </div> </div> <h5>Checkbox and RadioButton</h5> <div class="grid p-fluid"> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <p-checkbox v-model="checked1" :binary="true"></p-checkbox> </span> <p-inputtext placeholder="Username"></p-inputtext> </div> </div> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <p-inputtext placeholder="Price"></p-inputtext> <span class="p-inputgroup-addon"> <p-radiobutton name="rb1" value="rb1" v-model="radioValue1"></p-radiobutton> </span> </div> </div> <div class="col-12 md:col-12"> <div class="p-inputgroup"> <span class="p-inputgroup-addon"> <p-checkbox v-model="checked2" :binary="true"></p-checkbox> </span> <p-inputtext placeholder="Website"></p-inputtext> <span class="p-inputgroup-addon"> <p-radiobutton name="rb2" value="rb2" v-model="radioValue2"></p-radiobutton> </span> </div> </div> </div> </div> <script type="module"> const { createApp, ref } = Vue; const App = { setup() { const checked1 = ref(false); const checked2 = ref(false); const radioValue1 = ref(''); const radioValue2 = ref(''); return { checked1, checked2, radioValue1, radioValue2 } }, components: { "p-inputtext": primevue.inputtext, "p-button": primevue.button, "p-checkbox": primevue.checkbox, "p-radiobutton": primevue.radiobutton } }; createApp(App) .use(primevue.config.default) .mount("#app"); <\\/script>` } } }; } }; </script>