Px-popover
is a Predix UI component used for displaying additional information to a user. The popover is similar to a tooltip, but is invoked by clicking instead of hovering on a target component, and can also contain richer content than a basic tooltip.
- node.js
- npm
- bower
- webcomponents-lite.js polyfill
Node, npm, and bower are necessary to install the component and dependencies. webcomponents.js adds support for web components and custom elements to your application.
First, install the component via bower on the command line:
bower install px-popover --save
Second, import the component in your application with the following tag in your head:
<link rel="import" href="/bower_components/px-popover/px-popover.html"/>
Finally, use the component in your application:
Top popover
<div class="sample-container">
<button id="btnUp" type="button" name="button">Up</button>
<px-popover
for="btnUp"
orientation="top"
popover-title="Top Popover"
popover-body="Lorem ipsum dolor sit amet, consectetur elit, sed do eiusmod.">
</px-popover>
</div>
Bottom popover
<div class="sample-container">
<button id="btnUp" type="button" name="button">Bottom</button>
<px-popover
for="btnUp"
orientation="bottom"
popover-title="Bottom Popover"
popover-body="Lorem ipsum dolor sit amet, consectetur elit, sed do eiusmod.">
</px-popover>
</div>
Popover in a Relative position ancestor
<div class="sample-container" style="position:relative">
...
<div style="position:relative>"
<button id="btnRel" type="button" name="button">Bottom</button>
<px-popover
for="btnRel"
orientation="bottom"
popover-title="Bottom Popover"
popover-body="Lorem ipsum dolor sit amet, consectetur elit, sed do eiusmod."
position="relative" >
</px-popover>
</div>
...
</div>
The px-popover
component has a fixed width but will grow vertically relative to its contents.
Read the full API and view the demo here.
From the component's directory...
$ npm install
$ bower install
$ gulp sass
From the component's directory, to start a local server run:
$ gulp serve
Navigate to the root of that server (e.g. http://localhost:8080/) in a browser to open the API documentation page, with link to the "Demo" / working examples.
- Transformations on the target with position relative parent do not work. Instead, apply the transformation to the parent div so the popover gets it too.
Please use Github Issues to submit any bugs you might find.