Package Exports
- styled-popover-component
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (styled-popover-component) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
styled-popover-component
The bootstrap popover component made with styled-components.
Table of Contents
Why?
This is a modular approach to use bootstrap components for quick prototypes, as an entrypoint of your own component library, or if you need just one bootstrap component for your application. To work with ease with any other libary or framework this component is build with styled-components.
Installation
$ npm i styled-popover-component -S
or
$ yarn add styled-popover-component
Usage
For detailed information take a look at the documentation.
Note: if you want this example to work you need to install
styled-container-component
, andstyled-button-component
as well, but you do not need them to work properly
import React from 'react';
/*
if you installed `styled-bootstrap-components` use
import { ... } from 'styled-bootstrap-components'
instead.
*/
import { Container } from 'styled-container-component';
import { Button } from 'styled-button-component';
import {
Popover,
PopoverArrow,
PopoverBody,
PopoverHeader,
} from 'styled-popover-component';
export class SimplePopoverToggle extends React.Component {
constructor(props) {
super();
this.state = {
top: 0,
left: 0,
hidden: true,
};
}
handleModal(ev) {
this.setState({
top: ev.target.offsetTop - ev.target.offsetHeight,
left: ev.target.offsetLeft + ev.target.offsetWidth,
hidden: !this.state.hidden,
});
}
render() {
const {
top,
left,
hidden,
} = this.state;
return (
<Container>
<Button
danger
onClick={(ev) => this.handleModal(ev)}
>
Click to toggle popover
</Button>
<Popover
hidden={hidden}
style={{
top: `${top}px`,
left: `${left}px`
}}
right
>
<PopoverArrow right />
<PopoverHeader right>Popover Title</PopoverHeader>
<PopoverBody right>And here's some amazing content. It's very engaging. Right?</PopoverBody>
</Popover>
</Container>
);
}
};
Properties
Properties which can be added to the component to change the visual appearance. This component uses styled-system.
hidden
Type: booleanright
Type: booleantop
Type: booleanleft
Type: booleanbottom
Type: booleanm
margin Type: stringmt
margin-top Type: stringmr
margin-right Type: stringmb
margin-bottom Type: stringml
margin-left Type: stringmx
margin-left and margin-right Type: stringmy
margin-top and margin-bottom Type: stringp
padding Type: stringpt
padding-top Type: stringpr
padding-right Type: stringpb
padding-bottom Type: stringpl
padding-left Type: stringpx
padding-left and padding-right Type: stringpy
padding-top and padding-bottom Type: stringwidth
Type: stringfontSize
Type: stringfontWeight
Type: stringtextAlign
Type: stringlineHeight
Type: stringdisplay
Type: stringcolor
Type: stringborderRadius
Type: stringborderColor
Type: stringborder
Type: stringborderTop
Type: stringborderRight
Type: stringborderBottom
Type: stringborderLeft
Type: string
Related
bootstrap styled-components styled-system
License
MIT © Lukas Aichbauer