diff --git a/Gruntfile.js b/Gruntfile.js
index 1f47d2b..0f2231a 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -15,10 +15,9 @@ module.exports = function(grunt) {
' * <%= pkg.name %>\n' +
' * v<%= pkg.version %>\n' +
' * <%= pkg.description %>\n' +
- ' * Copyright (c) <%= grunt.template.today("yyyy") %> <%= pkg.author.name %> - <%= pkg.homepage %>\n' +
+ ' * Copyright (c) 2017 - <%= grunt.template.today("yyyy") %> <%= pkg.author.name %> - <%= pkg.homepage %>\n' +
' * License: <%= pkg.license %>\n' +
- ' */\n\n',
- filename : 'bootstrap-tooltip-custom-class'
+ ' */\n\n'
},
sass: sassConfig,
less: lessConfig,
diff --git a/README.md b/README.md
index 4f25e4e..d224c35 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,9 @@
# Bootstrap Tooltip Custom Class
-Extend Bootstrap Tooltip plugin by adding custom classes to tooltips. Available for **Bootstrap 3** and **Bootstrap 4**.
+Extends Bootstrap Tooltips and Popovers by adding custom classes. Available for **Bootstrap 3** and **Bootstrap 4**.
-Define your own custom class or use the predefined custom classes: `.tooltip-primary`, `.tooltip-success`, `.tooltip-info`, `.tooltip-warning`, `.tooltip-danger`.
+Define your own custom class or use the predefined custom classes:
+- tooltips: `.tooltip-primary`, `.tooltip-success`, `.tooltip-info`, `.tooltip-warning`, `.tooltip-danger`.
+- popovers: `.popover-primary`, `.popover-success`, `.popover-info`, `.popover-warning`, `.popover-danger`.

@@ -21,7 +23,11 @@ yarn add bootstrap-tooltip-custom-class
## Setup
-**Use the appropriate files according to Bootstrap version that you use.**
+**The implementations for [Tooltips][1] and [Popovers][2] are independent. You can include them together or you can use them separately.**
+
+**Use the appropriate files according to Bootstrap version that you use: `bootstrap-v3`, `bootstrap-v4` or `bootstrap-v4-alpha`.**
+
+### Tooltips
#### CSS
Include `bootstrap-tooltip-custom-class.css` in your project or use the `.scss` file:
@@ -57,6 +63,41 @@ Include the script after Bootstrap's main javascript file:
```
+### Popovers
+#### CSS
+Include `bootstrap-popover-custom-class.css` in your project or use the `.scss` file:
+```html
+
+```
+#### SASS:
+```sass
+@import "bootstrap-popover-custom-class";
+```
+Use the mixin `popover-custom` to create styles for your custom popover:
+````sass
+.popover-custom {
+ @include popover-custom(#f2653c, #fff);
+}
+````
+
+#### Less (only for Bootstrap v3):
+```less
+@import "bootstrap-popover-custom-class.less";
+```
+Use the mixin `popover-custom`:
+````less
+.popover-custom {
+ .popover-custom(#f2653c, #fff);
+}
+````
+
+#### Javascript
+Include the script after Bootstrap's main javascript file:
+```html
+
+
+```
+
## Usage
- Use `data-custom-class` attribute:
@@ -64,22 +105,32 @@ Include the script after Bootstrap's main javascript file:
```html
```
+```html
+
+```
or
- Use `customClass` parameter on plugin initialization:
```javascript
$(function () {
- $('.my-element').tooltip({
+ $('.has-tooltip').tooltip({
customClass: 'tooltip-custom'
});
});
```
+```javascript
+$(function () {
+ $('.has-popover').popover({
+ customClass: 'popover-custom'
+ });
+});
+```
## Demo
#### Local
-Local demo files can be found in the `demo` folder of each project (`bootstrap-v3`, `bootstrap-v4`, `bootstrap-v4-alpha`).
+Local demo files can be found in the `demo` folder of each project.
First, execute the following instructions in the root:
```
@@ -96,3 +147,5 @@ $ npm run build-#project_alias# (or) npm run build-all
- Bootstrap 3: [Codepen](https://codepen.io/andreivictor/full/gmNeJq)
+[1]: #tooltips
+[2]: #popovers
diff --git a/bootstrap-v3/dist/css/bootstrap-tooltip-custom-class.min.css.map b/bootstrap-v3/dist/css/bootstrap-tooltip-custom-class.min.css.map
deleted file mode 100644
index e40af02..0000000
--- a/bootstrap-v3/dist/css/bootstrap-tooltip-custom-class.min.css.map
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "version": 3,
- "file": "bootstrap-tooltip-custom-class.min.css",
- "sources": [
- "../../src/scss/main.scss",
- "../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_variables.scss",
- "../../src/scss/bootstrap-tooltip-custom-class.scss",
- "../../src/scss/_variables.scss",
- "../../src/scss/_mixin.scss",
- "../../src/scss/_tooltips.scss"
- ],
- "names": [],
- "mappings": "AKGA,ADGE,gBCHc,CDGd,cAAc,AAAC,CACb,gBAAgB,CHUI,OAAqB,CGTzC,KAAK,CHugBqB,IAAI,CGtgB/B,ACNH,ADQE,gBCRc,ADQb,IAAI,CAAC,cAAc,AAAC,CACnB,gBAAgB,CHKI,OAAqB,CGJ1C,ACVH,ADYE,gBCZc,ADYb,MAAM,CAAC,cAAc,AAAC,CACrB,kBAAkB,CHCE,OAAqB,CGA1C,ACdH,ADgBE,gBChBc,ADgBb,KAAK,CAAC,cAAc,AAAC,CACpB,iBAAiB,CHHG,OAAqB,CGI1C,AClBH,ADoBE,gBCpBc,ADoBb,OAAO,CAAC,cAAc,AAAC,CACtB,mBAAmB,CHPC,OAAqB,CGQ1C,AClBH,ADDE,gBCCc,CDDd,cAAc,AAAC,CACb,gBAAgB,CHWI,OAAO,CGV3B,KAAK,CHugBqB,IAAI,CGtgB/B,ACFH,ADIE,gBCJc,ADIb,IAAI,CAAC,cAAc,AAAC,CACnB,gBAAgB,CHMI,OAAO,CGL5B,ACNH,ADQE,gBCRc,ADQb,MAAM,CAAC,cAAc,AAAC,CACrB,kBAAkB,CHEE,OAAO,CGD5B,ACVH,ADYE,gBCZc,ADYb,KAAK,CAAC,cAAc,AAAC,CACpB,iBAAiB,CHFG,OAAO,CGG5B,ACdH,ADgBE,gBChBc,ADgBb,OAAO,CAAC,cAAc,AAAC,CACtB,mBAAmB,CHNC,OAAO,CGO5B,ACdH,ADLE,aCKW,CDLX,cAAc,AAAC,CACb,gBAAgB,CHYI,OAAO,CGX3B,KAAK,CHugBqB,IAAI,CGtgB/B,ACEH,ADAE,aCAW,ADAV,IAAI,CAAC,cAAc,AAAC,CACnB,gBAAgB,CHOI,OAAO,CGN5B,ACFH,ADIE,aCJW,ADIV,MAAM,CAAC,cAAc,AAAC,CACrB,kBAAkB,CHGE,OAAO,CGF5B,ACNH,ADQE,aCRW,ADQV,KAAK,CAAC,cAAc,AAAC,CACpB,iBAAiB,CHDG,OAAO,CGE5B,ACVH,ADYE,aCZW,ADYV,OAAO,CAAC,cAAc,AAAC,CACtB,mBAAmB,CHLC,OAAO,CGM5B,ACVH,ADTE,gBCSc,CDTd,cAAc,AAAC,CACb,gBAAgB,CHaI,OAAO,CGZ3B,KAAK,CHugBqB,IAAI,CGtgB/B,ACMH,ADJE,gBCIc,ADJb,IAAI,CAAC,cAAc,AAAC,CACnB,gBAAgB,CHQI,OAAO,CGP5B,ACEH,ADAE,gBCAc,ADAb,MAAM,CAAC,cAAc,AAAC,CACrB,kBAAkB,CHIE,OAAO,CGH5B,ACFH,ADIE,gBCJc,ADIb,KAAK,CAAC,cAAc,AAAC,CACpB,iBAAiB,CHAG,OAAO,CGC5B,ACNH,ADQE,gBCRc,ADQb,OAAO,CAAC,cAAc,AAAC,CACtB,mBAAmB,CHJC,OAAO,CGK5B,ACNH,ADbE,eCaa,CDbb,cAAc,AAAC,CACb,gBAAgB,CHcI,OAAO,CGb3B,KAAK,CHugBqB,IAAI,CGtgB/B,ACUH,ADRE,eCQa,ADRZ,IAAI,CAAC,cAAc,AAAC,CACnB,gBAAgB,CHSI,OAAO,CGR5B,ACMH,ADJE,eCIa,ADJZ,MAAM,CAAC,cAAc,AAAC,CACrB,kBAAkB,CHKE,OAAO,CGJ5B,ACEH,ADAE,eCAa,ADAZ,KAAK,CAAC,cAAc,AAAC,CACpB,iBAAiB,CHCG,OAAO,CGA5B,ACFH,ADIE,eCJa,ADIZ,OAAO,CAAC,cAAc,AAAC,CACtB,mBAAmB,CHHC,OAAO,CGI5B"
-}
\ No newline at end of file
diff --git a/bootstrap-v3/dist/js/bootstrap-tooltip-custom-class.min.js b/bootstrap-v3/dist/js/bootstrap-tooltip-custom-class.min.js
deleted file mode 100644
index a73d4fa..0000000
--- a/bootstrap-v3/dist/js/bootstrap-tooltip-custom-class.min.js
+++ /dev/null
@@ -1,10 +0,0 @@
-/*!
- * bootstrap-tooltip-custom-class
- * v1.0.4
- * Extends Bootstrap Tooltip plugin by adding custom classes.
- * Copyright (c) 2019 Andrei Victor Bulearca - https://github.com/andreivictor/bootstrap-tooltip-custom-class#readme
- * License: MIT
- */
-
-
-!function(o){if(void 0===o.fn.tooltip.Constructor)throw new Error("Bootstrap Tooltip must be included first!");var t=o.fn.tooltip.Constructor;o.extend(t.DEFAULTS,{customClass:""});var s=t.prototype.show;t.prototype.show=function(){s.apply(this),this.options.customClass&&this.tip().addClass(this.options.customClass)}}(window.jQuery);
\ No newline at end of file
diff --git a/bootstrap-v3/package.json b/bootstrap-v3/package.json
index 3e35f36..1ba5f73 100644
--- a/bootstrap-v3/package.json
+++ b/bootstrap-v3/package.json
@@ -1,6 +1,6 @@
{
"name": "bootstrap-tooltip-custom-class",
- "description": "Extend Bootstrap Tooltip plugin by adding custom classes. For Bootstrap v3.",
+ "description": "Extends Bootstrap Tooltips and Popovers by adding custom classes. For Bootstrap v3.",
"repository": {
"type": "git",
"url": "git+https://github.com/andreivictor/bootstrap-tooltip-custom-class.git"
diff --git a/bootstrap-v3/popover/demo/demo.css b/bootstrap-v3/popover/demo/demo.css
new file mode 100644
index 0000000..3dba4b0
--- /dev/null
+++ b/bootstrap-v3/popover/demo/demo.css
@@ -0,0 +1,88 @@
+.popover-primary .popover-title {
+ background: #337ab7;
+ color: #fff;
+}
+
+.popover-success .popover-title {
+ background: #5cb85c;
+ color: #fff;
+}
+
+.popover-info .popover-title {
+ background: #5bc0de;
+ color: #fff;
+}
+
+.popover-warning .popover-title {
+ background: #f0ad4e;
+ color: #fff;
+}
+
+.popover-danger .popover-title {
+ background: #d9534f;
+ color: #fff;
+}
+
+.popover-custom .popover-title {
+ background: #f2653c;
+ color: #ffffff;
+}
+
+.popover-custom-alt .popover-title {
+ background: #5b2da3;
+ color: #ffffff;
+}
+
+body {
+ padding-top: 50px;
+}
+
+#topnav {
+ z-index: 1061;
+}
+
+#topnav .navbar-header {
+ float: left;
+}
+
+#topnav .navbar-right {
+ float: right !important;
+ margin: 0 -15px 0 0;
+}
+
+@media (max-width: 340px) {
+ #topnav .navbar-brand {
+ font-size: 14px;
+ }
+}
+
+#topnav .navbar-nav > li > a {
+ padding-top: 11px;
+ padding-bottom: 11px;
+}
+
+#topnav .navbar-nav > li > a > i {
+ font-size: 26px;
+}
+
+.bs-example {
+ position: relative;
+ margin: 15px;
+ padding: 15px 15px 25px;
+ border: 1px solid #ddd;
+ border-radius: 4px 4px 0 0;
+}
+
+.bs-example .btn {
+ margin: 5px;
+}
+
+.bs-example__title {
+ margin-bottom: 20px;
+}
+
+.bs-example--static .popover {
+ position: relative;
+ display: inline-block;
+ margin: 20px;
+}
diff --git a/bootstrap-v3/popover/demo/demo.js b/bootstrap-v3/popover/demo/demo.js
new file mode 100644
index 0000000..123383b
--- /dev/null
+++ b/bootstrap-v3/popover/demo/demo.js
@@ -0,0 +1,9 @@
+$(document).ready(function(){
+ $('.btn-default').popover();
+ $('.btn-custom').popover({
+ customClass: 'popover-custom'
+ });
+ $('.btn-custom-alt').popover({
+ customClass: 'popover-custom-alt'
+ });
+});
diff --git a/bootstrap-v3/popover/demo/demo.scss b/bootstrap-v3/popover/demo/demo.scss
new file mode 100644
index 0000000..926a6ed
--- /dev/null
+++ b/bootstrap-v3/popover/demo/demo.scss
@@ -0,0 +1,64 @@
+@import "../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/variables";
+@import "../src/scss/bootstrap-popover-custom-class";
+
+.popover-custom {
+ @include popover-custom(#f2653c, #ffffff);
+}
+
+.popover-custom-alt {
+ @include popover-custom(#5b2da3, #ffffff);
+}
+
+//== Demo layout
+//
+//##
+body {
+ padding-top: 50px;
+}
+
+#topnav {
+ z-index: ($zindex-popover + 1);
+
+ .navbar-header {
+ float: left;
+ }
+ .navbar-right {
+ float: right !important;
+ margin: 0 -15px 0 0;
+ }
+ @media (max-width: 340px) {
+ .navbar-brand {
+ font-size: $font-size-base;
+ }
+ }
+
+ .navbar-nav>li>a {
+ padding-top: 11px;
+ padding-bottom: 11px;
+ }
+
+ .navbar-nav>li>a>i {
+ font-size: 26px;
+ }
+}
+
+.bs-example {
+ position: relative;
+ margin: 15px;
+ padding: 15px 15px 25px;
+ border: 1px solid #ddd;
+ border-radius: 4px 4px 0 0;
+}
+.bs-example .btn {
+ margin: 5px;
+}
+
+.bs-example__title {
+ margin-bottom: 20px;
+}
+
+.bs-example--static .popover {
+ position: relative;
+ display: inline-block;
+ margin: 20px;
+}
diff --git a/bootstrap-v3/popover/demo/index.html b/bootstrap-v3/popover/demo/index.html
new file mode 100644
index 0000000..f534efb
--- /dev/null
+++ b/bootstrap-v3/popover/demo/index.html
@@ -0,0 +1,108 @@
+
+
+
+
+ Bootstrap Popover Custom Class
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Static examples
+
+
+
+
Popover primary example
+
+
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+
+
+
+
Popover success example
+
+
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+
+
+
+
Popover info example
+
+
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+
+
+
+
Popover warning example
+
+
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+
+
+
+
Popover danger example
+
+
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+
+
+
+
+
+
Popover custom example
+
+
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+
+
+
+
Another custom popover
+
+
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
+
+
+
+
+
+
Dinamic examples
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.css b/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.css
new file mode 100644
index 0000000..05872bd
--- /dev/null
+++ b/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.css
@@ -0,0 +1,33 @@
+/*!
+ * bootstrap-tooltip-custom-class
+ * v1.0.4
+ * Extends Bootstrap Tooltip and Popover plugins by adding custom classes.
+ * Copyright (c) 2017 - 2020 Andrei Victor Bulearca - https://github.com/andreivictor/bootstrap-tooltip-custom-class#readme
+ * License: MIT
+ */
+
+
+.popover-primary .popover-title {
+ background: #337ab7;
+ color: #fff;
+}
+
+.popover-success .popover-title {
+ background: #5cb85c;
+ color: #fff;
+}
+
+.popover-info .popover-title {
+ background: #5bc0de;
+ color: #fff;
+}
+
+.popover-warning .popover-title {
+ background: #f0ad4e;
+ color: #fff;
+}
+
+.popover-danger .popover-title {
+ background: #d9534f;
+ color: #fff;
+}
diff --git a/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.min.css b/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.min.css
new file mode 100644
index 0000000..0c7e669
--- /dev/null
+++ b/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.min.css
@@ -0,0 +1,12 @@
+/*!
+ * bootstrap-tooltip-custom-class
+ * v1.0.4
+ * Extends Bootstrap Tooltip and Popover plugins by adding custom classes.
+ * Copyright (c) 2017 - 2020 Andrei Victor Bulearca - https://github.com/andreivictor/bootstrap-tooltip-custom-class#readme
+ * License: MIT
+ */
+
+
+.popover-primary .popover-title{background:#337ab7;color:#fff}.popover-success .popover-title{background:#5cb85c;color:#fff}.popover-info .popover-title{background:#5bc0de;color:#fff}.popover-warning .popover-title{background:#f0ad4e;color:#fff}.popover-danger .popover-title{background:#d9534f;color:#fff}
+
+/*# sourceMappingURL=bootstrap-popover-custom-class.min.css.map */
\ No newline at end of file
diff --git a/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.min.css.map b/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.min.css.map
new file mode 100644
index 0000000..7aa1294
--- /dev/null
+++ b/bootstrap-v3/popover/dist/css/bootstrap-popover-custom-class.min.css.map
@@ -0,0 +1,14 @@
+{
+ "version": 3,
+ "file": "bootstrap-popover-custom-class.min.css",
+ "sources": [
+ "../../src/scss/main.scss",
+ "../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/_variables.scss",
+ "../../src/scss/bootstrap-popover-custom-class.scss",
+ "../../src/scss/_variables.scss",
+ "../../src/scss/_mixin.scss",
+ "../../src/scss/_popovers.scss"
+ ],
+ "names": [],
+ "mappings": "AKIA,ADCE,gBCDc,CDCd,cAAc,AAAC,CACb,UAAU,CHWU,OAAqB,CGVzC,KAAK,CDQyB,IAAI,CCPnC,ACAH,ADHE,gBCGc,CDHd,cAAc,AAAC,CACb,UAAU,CHYU,OAAO,CGX3B,KAAK,CDQyB,IAAI,CCPnC,ACIH,ADPE,aCOW,CDPX,cAAc,AAAC,CACb,UAAU,CHaU,OAAO,CGZ3B,KAAK,CDQyB,IAAI,CCPnC,ACQH,ADXE,gBCWc,CDXd,cAAc,AAAC,CACb,UAAU,CHcU,OAAO,CGb3B,KAAK,CDQyB,IAAI,CCPnC,ACYH,ADfE,eCea,CDfb,cAAc,AAAC,CACb,UAAU,CHeU,OAAO,CGd3B,KAAK,CDQyB,IAAI,CCPnC"
+}
\ No newline at end of file
diff --git a/bootstrap-v3/popover/dist/js/bootstrap-popover-custom-class.js b/bootstrap-v3/popover/dist/js/bootstrap-popover-custom-class.js
new file mode 100644
index 0000000..72a5db9
--- /dev/null
+++ b/bootstrap-v3/popover/dist/js/bootstrap-popover-custom-class.js
@@ -0,0 +1,34 @@
+/*!
+ * bootstrap-tooltip-custom-class
+ * v1.0.4
+ * Extends Bootstrap Tooltip and Popover plugins by adding custom classes.
+ * Copyright (c) 2017 - 2020 Andrei Victor Bulearca - https://github.com/andreivictor/bootstrap-tooltip-custom-class#readme
+ * License: MIT
+ */
+
+
+(function ($) {
+
+ if (!$.fn.popover) {
+ throw new Error('Bootstrap Popover must be included first!');
+ }
+
+ var Popover = $.fn.popover.Constructor;
+
+ $.extend(Popover.DEFAULTS, {
+ customClass: ''
+ });
+
+ var _show = Popover.prototype.show;
+
+ Popover.prototype.show = function () {
+
+ _show.apply(this);
+
+ if (this.options.customClass) {
+ var $tip = this.tip();
+ $tip.addClass(this.options.customClass);
+ }
+ };
+
+})(window.jQuery);
diff --git a/bootstrap-v3/popover/dist/js/bootstrap-popover-custom-class.min.js b/bootstrap-v3/popover/dist/js/bootstrap-popover-custom-class.min.js
new file mode 100644
index 0000000..0389238
--- /dev/null
+++ b/bootstrap-v3/popover/dist/js/bootstrap-popover-custom-class.min.js
@@ -0,0 +1,10 @@
+/*!
+ * bootstrap-tooltip-custom-class
+ * v1.0.4
+ * Extends Bootstrap Tooltip and Popover plugins by adding custom classes.
+ * Copyright (c) 2017 - 2020 Andrei Victor Bulearca - https://github.com/andreivictor/bootstrap-tooltip-custom-class#readme
+ * License: MIT
+ */
+
+
+!function(o){if(!o.fn.popover)throw new Error("Bootstrap Popover must be included first!");var t=o.fn.popover.Constructor;o.extend(t.DEFAULTS,{customClass:""});var s=t.prototype.show;t.prototype.show=function(){s.apply(this),this.options.customClass&&this.tip().addClass(this.options.customClass)}}(window.jQuery);
\ No newline at end of file
diff --git a/bootstrap-v3/popover/src/js/bootstrap-popover-custom-class.js b/bootstrap-v3/popover/src/js/bootstrap-popover-custom-class.js
new file mode 100644
index 0000000..c568dd0
--- /dev/null
+++ b/bootstrap-v3/popover/src/js/bootstrap-popover-custom-class.js
@@ -0,0 +1,25 @@
+(function ($) {
+
+ if (!$.fn.popover) {
+ throw new Error('Bootstrap Popover must be included first!');
+ }
+
+ var Popover = $.fn.popover.Constructor;
+
+ $.extend(Popover.DEFAULTS, {
+ customClass: ''
+ });
+
+ var _show = Popover.prototype.show;
+
+ Popover.prototype.show = function () {
+
+ _show.apply(this);
+
+ if (this.options.customClass) {
+ var $tip = this.tip();
+ $tip.addClass(this.options.customClass);
+ }
+ };
+
+})(window.jQuery);
diff --git a/bootstrap-v3/popover/src/less/bootstrap-popover-custom-class.less b/bootstrap-v3/popover/src/less/bootstrap-popover-custom-class.less
new file mode 100644
index 0000000..1bd274f
--- /dev/null
+++ b/bootstrap-v3/popover/src/less/bootstrap-popover-custom-class.less
@@ -0,0 +1,3 @@
+@import "variables.less";
+@import "mixin.less";
+@import "popovers.less";
diff --git a/bootstrap-v3/popover/src/less/main.less b/bootstrap-v3/popover/src/less/main.less
new file mode 100644
index 0000000..0d73ad1
--- /dev/null
+++ b/bootstrap-v3/popover/src/less/main.less
@@ -0,0 +1,2 @@
+@import "../../../node_modules/bootstrap/less/variables.less";
+@import "bootstrap-popover-custom-class.less";
diff --git a/bootstrap-v3/popover/src/less/mixin.less b/bootstrap-v3/popover/src/less/mixin.less
new file mode 100644
index 0000000..bbcf634
--- /dev/null
+++ b/bootstrap-v3/popover/src/less/mixin.less
@@ -0,0 +1,10 @@
+//== Popover Custom Mixin
+//
+//##
+
+.popover-custom(@title-bg, @title-color) {
+ .popover-title {
+ background: @title-bg;
+ color: @title-color;
+ }
+}
diff --git a/bootstrap-v3/popover/src/less/popovers.less b/bootstrap-v3/popover/src/less/popovers.less
new file mode 100644
index 0000000..dd6ef31
--- /dev/null
+++ b/bootstrap-v3/popover/src/less/popovers.less
@@ -0,0 +1,23 @@
+//== Styles for predefined Popover Custom Classes
+//
+//##
+
+.popover-primary {
+ .popover-custom(@popover-primary-title-bg, @popover-custom-title-color);
+}
+
+.popover-success {
+ .popover-custom(@popover-success-title-bg, @popover-custom-title-color);
+}
+
+.popover-info {
+ .popover-custom(@popover-info-title-bg, @popover-custom-title-color);
+}
+
+.popover-warning {
+ .popover-custom(@popover-warning-title-bg, @popover-custom-title-color);
+}
+
+.popover-danger {
+ .popover-custom(@popover-danger-title-bg, @popover-custom-title-color);
+}
diff --git a/bootstrap-v3/popover/src/less/variables.less b/bootstrap-v3/popover/src/less/variables.less
new file mode 100644
index 0000000..5f78e9c
--- /dev/null
+++ b/bootstrap-v3/popover/src/less/variables.less
@@ -0,0 +1,16 @@
+//== Define Bootstrap variables for Popover
+//
+//##
+
+// Popover primary background color
+@popover-primary-title-bg: @brand-primary;
+// Popover success background color
+@popover-success-title-bg: @brand-success;
+// Popover info background color
+@popover-info-title-bg: @brand-info;
+// Popover warning background color
+@popover-warning-title-bg: @brand-warning;
+// Popover danger background color
+@popover-danger-title-bg: @brand-danger;
+
+@popover-custom-title-color: #fff;
diff --git a/bootstrap-v3/popover/src/scss/_mixin.scss b/bootstrap-v3/popover/src/scss/_mixin.scss
new file mode 100644
index 0000000..5a91603
--- /dev/null
+++ b/bootstrap-v3/popover/src/scss/_mixin.scss
@@ -0,0 +1,10 @@
+//== Popover Custom Mixin
+//
+//##
+
+@mixin popover-custom($title-bg, $title-color) {
+ .popover-title {
+ background: $title-bg;
+ color: $title-color;
+ }
+}
diff --git a/bootstrap-v3/popover/src/scss/_popovers.scss b/bootstrap-v3/popover/src/scss/_popovers.scss
new file mode 100644
index 0000000..f0ae5a0
--- /dev/null
+++ b/bootstrap-v3/popover/src/scss/_popovers.scss
@@ -0,0 +1,23 @@
+//== Styles for predefined Popover Custom Classes
+//
+//##
+
+.popover-primary {
+ @include popover-custom($popover-primary-title-bg, $popover-custom-title-color);
+}
+
+.popover-success {
+ @include popover-custom($popover-success-title-bg, $popover-custom-title-color);
+}
+
+.popover-info {
+ @include popover-custom($popover-info-title-bg, $popover-custom-title-color);
+}
+
+.popover-warning {
+ @include popover-custom($popover-warning-title-bg, $popover-custom-title-color);
+}
+
+.popover-danger {
+ @include popover-custom($popover-danger-title-bg, $popover-custom-title-color);
+}
diff --git a/bootstrap-v3/popover/src/scss/_variables.scss b/bootstrap-v3/popover/src/scss/_variables.scss
new file mode 100644
index 0000000..8f33c95
--- /dev/null
+++ b/bootstrap-v3/popover/src/scss/_variables.scss
@@ -0,0 +1,16 @@
+//== Define Bootstrap variables for Popovers
+//
+//##
+
+// Popover primary background color
+$popover-primary-title-bg: $brand-primary !default;
+// Popover success background color
+$popover-success-title-bg: $brand-success !default;
+// Popover info background color
+$popover-info-title-bg: $brand-info !default;
+// Popover warning background color
+$popover-warning-title-bg: $brand-warning !default;
+// Popover danger background color
+$popover-danger-title-bg: $brand-danger !default;
+
+$popover-custom-title-color: #fff !default;
diff --git a/bootstrap-v3/popover/src/scss/bootstrap-popover-custom-class.scss b/bootstrap-v3/popover/src/scss/bootstrap-popover-custom-class.scss
new file mode 100644
index 0000000..12c029f
--- /dev/null
+++ b/bootstrap-v3/popover/src/scss/bootstrap-popover-custom-class.scss
@@ -0,0 +1,3 @@
+@import "variables";
+@import "mixin";
+@import "popovers";
diff --git a/bootstrap-v3/popover/src/scss/main.scss b/bootstrap-v3/popover/src/scss/main.scss
new file mode 100644
index 0000000..66c9146
--- /dev/null
+++ b/bootstrap-v3/popover/src/scss/main.scss
@@ -0,0 +1,2 @@
+@import "../../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/variables";
+@import "bootstrap-popover-custom-class";
diff --git a/bootstrap-v3/src/less/main.less b/bootstrap-v3/src/less/main.less
deleted file mode 100644
index 5a99e8b..0000000
--- a/bootstrap-v3/src/less/main.less
+++ /dev/null
@@ -1,2 +0,0 @@
-@import "../../node_modules/bootstrap/less/variables.less";
-@import "bootstrap-tooltip-custom-class.less";
diff --git a/bootstrap-v3/src/scss/main.scss b/bootstrap-v3/src/scss/main.scss
deleted file mode 100644
index 13215d7..0000000
--- a/bootstrap-v3/src/scss/main.scss
+++ /dev/null
@@ -1,2 +0,0 @@
-@import "../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/variables";
-@import "bootstrap-tooltip-custom-class";
diff --git a/bootstrap-v3/demo/demo.css b/bootstrap-v3/tooltip/demo/demo.css
similarity index 100%
rename from bootstrap-v3/demo/demo.css
rename to bootstrap-v3/tooltip/demo/demo.css
diff --git a/bootstrap-v3/demo/demo.js b/bootstrap-v3/tooltip/demo/demo.js
similarity index 100%
rename from bootstrap-v3/demo/demo.js
rename to bootstrap-v3/tooltip/demo/demo.js
diff --git a/bootstrap-v3/demo/demo.scss b/bootstrap-v3/tooltip/demo/demo.scss
similarity index 91%
rename from bootstrap-v3/demo/demo.scss
rename to bootstrap-v3/tooltip/demo/demo.scss
index 9ee5b85..bfa518a 100644
--- a/bootstrap-v3/demo/demo.scss
+++ b/bootstrap-v3/tooltip/demo/demo.scss
@@ -1,4 +1,4 @@
-@import "../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/variables";
+@import "../../node_modules/bootstrap-sass/assets/stylesheets/bootstrap/variables";
@import "../src/scss/bootstrap-tooltip-custom-class";
.tooltip-custom {
diff --git a/bootstrap-v3/demo/index.html b/bootstrap-v3/tooltip/demo/index.html
similarity index 92%
rename from bootstrap-v3/demo/index.html
rename to bootstrap-v3/tooltip/demo/index.html
index 027f6ce..d44c995 100644
--- a/bootstrap-v3/demo/index.html
+++ b/bootstrap-v3/tooltip/demo/index.html
@@ -6,7 +6,7 @@
-
+
@@ -80,9 +80,9 @@ Dinamic examples
-
-
-
+
+
+