UNPKG

@sveltestrap/sveltestrap

Version:

Bootstrap components for Svelte

133 lines (105 loc) 3.19 kB
import { Meta, Canvas, Controls, Story, Source } from '@storybook/blocks'; import * as InputGroupStories from './InputGroup.stories'; <Meta title="Form/InputGroup" /> # InputGroup <small class="bootstrap-docs">[Bootstrap InputGroup](https://getbootstrap.com/docs/5.3/forms/input-group/)</small> The `<InputGroup>` component extends form controlls by adding text, buttons, or button groups to either side of textual inputs, custom selects, and custom file inputs. <Canvas> <Story of={InputGroupStories.Basic} /> </Canvas> <Controls of={InputGroupStories.Basic} /> ## Groups You can place one or more add-on elements within an `InputGroup`. <Canvas withSource="none"> <Story of={InputGroupStories.Groups} /> </Canvas> <Source dark language="html" code={` <script> import { InputGroup, InputGroupText, Input } from '@sveltestrap/sveltestrap'; </script> <div> <InputGroup> <InputGroupText> <Input addon type="checkbox" aria-label="Checkbox for following text input" /> </InputGroupText> <Input placeholder="Check it out" /> </InputGroup> <InputGroup> <Input placeholder="placeholder email" /> <InputGroupText>@example.com</InputGroupText> </InputGroup> <InputGroup> <InputGroupText>$</InputGroupText> <InputGroupText>$</InputGroupText> <Input placeholder="Dolla dolla billz yo!" /> <InputGroupText>$</InputGroupText> <InputGroupText>$</InputGroupText> </InputGroup> <InputGroup> <InputGroupText>$</InputGroupText> <Input placeholder="Amount" min={0} max={100} type="number" step="1" /> <InputGroupText>.00</InputGroupText> </InputGroup> </div> `} /> ## Size <Canvas withSource="none"> <Story of={InputGroupStories.Size} /> </Canvas> <Source dark language="html" code={` <script> import { InputGroup, InputGroupText, Input } from '@sveltestrap/sveltestrap'; </script> <div> <InputGroup size="lg"> <InputGroupText>@lg</InputGroupText> <Input /> </InputGroup> <InputGroup> <InputGroupText>@default</InputGroupText> <Input /> </InputGroup> <InputGroup size="sm"> <InputGroupText>@sm</InputGroupText> <Input /> </InputGroup> </div> `} /> ## Theming <Canvas withSource="none"> <Story of={InputGroupStories.Theming} /> </Canvas> <Source dark language="html" code={` <script> import { InputGroup, InputGroupText, Input } from '@sveltestrap/sveltestrap'; </script> <InputGroup theme="dark"> <InputGroupText> <Input addon type="checkbox" aria-label="Checkbox for following text input" /> </InputGroupText> <Input placeholder="Check it out" /> </InputGroup> <InputGroup theme="light"> <Input placeholder="placeholder email" /> <InputGroupText>@example.com</InputGroupText> </InputGroup> <InputGroup theme="dark"> <InputGroupText>$</InputGroupText> <InputGroupText>$</InputGroupText> <Input placeholder="Dolla dolla billz yo!" /> <InputGroupText>$</InputGroupText> <InputGroupText>$</InputGroupText> </InputGroup> <InputGroup theme="light"> <InputGroupText>$</InputGroupText> <Input placeholder="Amount" min={0} max={100} type="number" step="1" /> <InputGroupText>.00</InputGroupText> </InputGroup>`} />