mirror of
https://github.com/tenrok/bootstrap.git
synced 2026-06-17 19:21:23 +03:00
Merge branch 'v4-dev' into form-tweaks
This commit is contained in:
+2
-2
@@ -51,5 +51,5 @@ cdn:
|
|||||||
js_hash: "sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn"
|
js_hash: "sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn"
|
||||||
jquery: https://code.jquery.com/jquery-3.2.1.slim.min.js
|
jquery: https://code.jquery.com/jquery-3.2.1.slim.min.js
|
||||||
jquery_hash: "sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
|
jquery_hash: "sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
|
||||||
tether: https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js
|
popper: https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js
|
||||||
tether_hash: "sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb"
|
popper_hash: "sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc="
|
||||||
|
|||||||
+1
-1
@@ -31,6 +31,6 @@
|
|||||||
],
|
],
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"jquery": ">=1.9.1",
|
"jquery": ">=1.9.1",
|
||||||
"tether": "^1.4.0"
|
"popper.js": "^1.9.9"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Generated
+655
-379
File diff suppressed because it is too large
Load Diff
Vendored
+300
-60
@@ -246,51 +246,99 @@ html {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.col-1 {
|
.col-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-2 {
|
.col-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-3 {
|
.col-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-4 {
|
.col-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-5 {
|
.col-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-6 {
|
.col-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-7 {
|
.col-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-8 {
|
.col-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-9 {
|
.col-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-10 {
|
.col-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-11 {
|
.col-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-12 {
|
.col-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.pull-0 {
|
.pull-0 {
|
||||||
@@ -460,40 +508,88 @@ html {
|
|||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
.col-sm-1 {
|
.col-sm-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
.col-sm-2 {
|
.col-sm-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
.col-sm-3 {
|
.col-sm-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
.col-sm-4 {
|
.col-sm-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
.col-sm-5 {
|
.col-sm-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
.col-sm-6 {
|
.col-sm-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
.col-sm-7 {
|
.col-sm-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
.col-sm-8 {
|
.col-sm-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
.col-sm-9 {
|
.col-sm-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
.col-sm-10 {
|
.col-sm-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
.col-sm-11 {
|
.col-sm-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
.col-sm-12 {
|
.col-sm-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
.pull-sm-0 {
|
.pull-sm-0 {
|
||||||
right: auto;
|
right: auto;
|
||||||
@@ -630,40 +726,88 @@ html {
|
|||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
.col-md-1 {
|
.col-md-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
.col-md-2 {
|
.col-md-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
.col-md-3 {
|
.col-md-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
.col-md-4 {
|
.col-md-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
.col-md-5 {
|
.col-md-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
.col-md-6 {
|
.col-md-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
.col-md-7 {
|
.col-md-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
.col-md-8 {
|
.col-md-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
.col-md-9 {
|
.col-md-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
.col-md-10 {
|
.col-md-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
.col-md-11 {
|
.col-md-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
.col-md-12 {
|
.col-md-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
.pull-md-0 {
|
.pull-md-0 {
|
||||||
right: auto;
|
right: auto;
|
||||||
@@ -800,40 +944,88 @@ html {
|
|||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
.col-lg-1 {
|
.col-lg-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
.col-lg-2 {
|
.col-lg-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
.col-lg-3 {
|
.col-lg-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
.col-lg-4 {
|
.col-lg-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
.col-lg-5 {
|
.col-lg-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
.col-lg-6 {
|
.col-lg-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
.col-lg-7 {
|
.col-lg-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
.col-lg-8 {
|
.col-lg-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
.col-lg-9 {
|
.col-lg-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
.col-lg-10 {
|
.col-lg-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
.col-lg-11 {
|
.col-lg-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
.col-lg-12 {
|
.col-lg-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
.pull-lg-0 {
|
.pull-lg-0 {
|
||||||
right: auto;
|
right: auto;
|
||||||
@@ -970,40 +1162,88 @@ html {
|
|||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
.col-xl-1 {
|
.col-xl-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
.col-xl-2 {
|
.col-xl-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
.col-xl-3 {
|
.col-xl-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
.col-xl-4 {
|
.col-xl-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
.col-xl-5 {
|
.col-xl-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
.col-xl-6 {
|
.col-xl-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
.col-xl-7 {
|
.col-xl-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
.col-xl-8 {
|
.col-xl-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
.col-xl-9 {
|
.col-xl-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
.col-xl-10 {
|
.col-xl-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
.col-xl-11 {
|
.col-xl-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
.col-xl-12 {
|
.col-xl-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
.pull-xl-0 {
|
.pull-xl-0 {
|
||||||
right: auto;
|
right: auto;
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+4
@@ -20,6 +20,10 @@ html {
|
|||||||
width: device-width;
|
width: device-width;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
@@ -1 +1 @@
|
|||||||
html{-webkit-box-sizing:border-box;box-sizing:border-box;font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}*,::after,::before{-webkit-box-sizing:inherit;box-sizing:inherit}@-ms-viewport{width:device-width}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#292b2c;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0275d8;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#014c8c;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}[role=button],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#636c72;text-align:left;caption-side:bottom}th{text-align:left}label{display:inline-block;margin-bottom:.5rem}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}/*# sourceMappingURL=bootstrap-reboot.min.css.map */
|
html{-webkit-box-sizing:border-box;box-sizing:border-box;font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}*,::after,::before{-webkit-box-sizing:inherit;box-sizing:inherit}@-ms-viewport{width:device-width}article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#292b2c;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0275d8;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#014c8c;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}[role=button],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#636c72;text-align:left;caption-side:bottom}th{text-align:left}label{display:inline-block;margin-bottom:.5rem}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}/*# sourceMappingURL=bootstrap-reboot.min.css.map */
|
||||||
+1
-1
@@ -1 +1 @@
|
|||||||
{"version":3,"sources":["../../scss/_reboot.scss","dist/css/bootstrap-reboot.css","bootstrap-reboot.css","../../scss/mixins/_hover.scss"],"names":[],"mappings":"AAoBA,KACE,mBAAA,WAAA,WAAA,WACA,YAAA,WACA,YAAA,KACA,yBAAA,KACA,qBAAA,KACA,mBAAA,UACA,4BAAA,YAGF,ECjBA,QADA,SDqBE,mBAAA,QAAA,WAAA,QAKA,cAAgB,MAAA,aASlB,KACE,OAAA,EACA,YAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WACA,UAAA,KACA,YAAA,IACA,YAAA,IACA,MAAA,QACA,iBAAA,KExBF,sBFiCE,QAAA,YASF,GACE,mBAAA,YAAA,WAAA,YACA,OAAA,EACA,SAAA,QAYF,GAAA,GAAA,GAAA,GAAA,GAAA,GACE,WAAA,EACA,cAAA,MAOF,EACE,WAAA,EACA,cAAA,KC5CF,0BDsDA,YAEE,gBAAA,UACA,gBAAA,UAAA,OACA,OAAA,KACA,cAAA,EAGF,QACE,cAAA,KACA,WAAA,OACA,YAAA,QClDF,GDqDA,GCtDA,GDyDE,WAAA,EACA,cAAA,KAGF,MCrDA,MACA,MAFA,MD0DE,cAAA,EAGF,GACE,YAAA,IAGF,GACE,cAAA,MACA,YAAA,EAGF,WACE,OAAA,EAAA,EAAA,KAGF,IACE,WAAA,OAGF,ECtDA,ODwDE,YAAA,OAGF,MACE,UAAA,IAQF,IC3DA,ID6DE,SAAA,SACA,UAAA,IACA,YAAA,EACA,eAAA,SAGF,IAAM,OAAA,OACN,IAAM,IAAA,MAON,EACE,MAAA,QACA,gBAAA,KACA,iBAAA,YACA,6BAAA,QGhLE,QHmLA,MAAA,QACA,gBAAA,UAUJ,8BACE,MAAA,QACA,gBAAA,KGrLE,oCAAA,oCHwLA,MAAA,QACA,gBAAA,KANJ,oCAUI,QAAA,EC7DJ,KACA,IDqEA,ICpEA,KDwEE,YAAA,SAAA,CAAA,UACA,UAAA,IAGF,IAEE,WAAA,EAEA,cAAA,KAEA,SAAA,KAQF,OAEE,OAAA,EAAA,EAAA,KAQF,IACE,eAAA,OACA,aAAA,KAGF,eACE,SAAA,OC/EF,cD6FA,EC/FA,KACA,OAEA,MACA,MACA,OACA,QACA,SDiGE,iBAAA,aAAA,aAAA,aAQF,MACE,gBAAA,SAGF,QACE,YAAA,OACA,eAAA,OACA,MAAA,QACA,WAAA,KACA,aAAA,OAGF,GAEE,WAAA,KAQF,MAEE,QAAA,aACA,cAAA,MAOF,aACE,QAAA,IAAA,OACA,QAAA,IAAA,KAAA,yBC3GF,OD8GA,MC5GA,SADA,OAEA,SDgHE,OAAA,EACA,YAAA,QACA,UAAA,QACA,YAAA,QAGF,OC9GA,MDgHE,SAAA,QAGF,OC9GA,ODgHE,eAAA,KC1GF,aACA,cD+GA,OCjHA,mBDqHE,mBAAA,OC9GF,gCACA,+BACA,gCDgHA,yBAIE,QAAA,EACA,aAAA,KC/GF,qBDkHA,kBAEE,mBAAA,WAAA,WAAA,WACA,QAAA,EAIF,iBCjHA,2BACA,kBAFA,iBD2HE,mBAAA,QAGF,SACE,SAAA,KAEA,OAAA,SAGF,SAME,UAAA,EAEA,QAAA,EACA,OAAA,EACA,OAAA,EAKF,OACE,QAAA,MACA,MAAA,KACA,UAAA,KACA,QAAA,EACA,cAAA,MACA,UAAA,OACA,YAAA,QACA,MAAA,QACA,YAAA,OAGF,SACE,eAAA,SEnIF,yCDMA,yCDmIE,OAAA,KEpIF,cF4IE,eAAA,KACA,mBAAA,KExIF,4CDMA,yCD2IE,mBAAA,KAQF,6BACE,KAAA,QACA,mBAAA,OAOF,OACE,QAAA,aAGF,QACE,QAAA,UAGF,SACE,QAAA,KErJF,SF2JE,QAAA"}
|
{"version":3,"sources":["../../scss/_reboot.scss","dist/css/bootstrap-reboot.css","bootstrap-reboot.css","../../scss/mixins/_hover.scss"],"names":[],"mappings":"AAoBA,KACE,mBAAA,WAAA,WAAA,WACA,YAAA,WACA,YAAA,KACA,yBAAA,KACA,qBAAA,KACA,mBAAA,UACA,4BAAA,YAGF,ECjBA,QADA,SDqBE,mBAAA,QAAA,WAAA,QAKA,cAAgB,MAAA,aAIlB,QAAA,MAAA,OAAA,WAAA,OAAA,OAAA,OAAA,OAAA,KAAA,IAAA,QACE,QAAA,MAQF,KACE,OAAA,EACA,YAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WACA,UAAA,KACA,YAAA,IACA,YAAA,IACA,MAAA,QACA,iBAAA,KExBF,sBFiCE,QAAA,YASF,GACE,mBAAA,YAAA,WAAA,YACA,OAAA,EACA,SAAA,QAYF,GAAA,GAAA,GAAA,GAAA,GAAA,GACE,WAAA,EACA,cAAA,MAOF,EACE,WAAA,EACA,cAAA,KC5CF,0BDsDA,YAEE,gBAAA,UACA,gBAAA,UAAA,OACA,OAAA,KACA,cAAA,EAGF,QACE,cAAA,KACA,WAAA,OACA,YAAA,QClDF,GDqDA,GCtDA,GDyDE,WAAA,EACA,cAAA,KAGF,MCrDA,MACA,MAFA,MD0DE,cAAA,EAGF,GACE,YAAA,IAGF,GACE,cAAA,MACA,YAAA,EAGF,WACE,OAAA,EAAA,EAAA,KAGF,IACE,WAAA,OAGF,ECtDA,ODwDE,YAAA,OAGF,MACE,UAAA,IAQF,IC3DA,ID6DE,SAAA,SACA,UAAA,IACA,YAAA,EACA,eAAA,SAGF,IAAM,OAAA,OACN,IAAM,IAAA,MAON,EACE,MAAA,QACA,gBAAA,KACA,iBAAA,YACA,6BAAA,QGpLE,QHuLA,MAAA,QACA,gBAAA,UAUJ,8BACE,MAAA,QACA,gBAAA,KGzLE,oCAAA,oCH4LA,MAAA,QACA,gBAAA,KANJ,oCAUI,QAAA,EC7DJ,KACA,IDqEA,ICpEA,KDwEE,YAAA,SAAA,CAAA,UACA,UAAA,IAGF,IAEE,WAAA,EAEA,cAAA,KAEA,SAAA,KAQF,OAEE,OAAA,EAAA,EAAA,KAQF,IACE,eAAA,OACA,aAAA,KAGF,eACE,SAAA,OC/EF,cD6FA,EC/FA,KACA,OAEA,MACA,MACA,OACA,QACA,SDiGE,iBAAA,aAAA,aAAA,aAQF,MACE,gBAAA,SAGF,QACE,YAAA,OACA,eAAA,OACA,MAAA,QACA,WAAA,KACA,aAAA,OAGF,GAEE,WAAA,KAQF,MAEE,QAAA,aACA,cAAA,MAOF,aACE,QAAA,IAAA,OACA,QAAA,IAAA,KAAA,yBC3GF,OD8GA,MC5GA,SADA,OAEA,SDgHE,OAAA,EACA,YAAA,QACA,UAAA,QACA,YAAA,QAGF,OC9GA,MDgHE,SAAA,QAGF,OC9GA,ODgHE,eAAA,KC1GF,aACA,cD+GA,OCjHA,mBDqHE,mBAAA,OC9GF,gCACA,+BACA,gCDgHA,yBAIE,QAAA,EACA,aAAA,KC/GF,qBDkHA,kBAEE,mBAAA,WAAA,WAAA,WACA,QAAA,EAIF,iBCjHA,2BACA,kBAFA,iBD2HE,mBAAA,QAGF,SACE,SAAA,KAEA,OAAA,SAGF,SAME,UAAA,EAEA,QAAA,EACA,OAAA,EACA,OAAA,EAKF,OACE,QAAA,MACA,MAAA,KACA,UAAA,KACA,QAAA,EACA,cAAA,MACA,UAAA,OACA,YAAA,QACA,MAAA,QACA,YAAA,OAGF,SACE,eAAA,SEnIF,yCDMA,yCDmIE,OAAA,KEpIF,cF4IE,eAAA,KACA,mBAAA,KExIF,4CDMA,yCD2IE,mBAAA,KAQF,6BACE,KAAA,QACA,mBAAA,OAOF,OACE,QAAA,aAGF,QACE,QAAA,UAGF,SACE,QAAA,KErJF,SF2JE,QAAA"}
|
||||||
+433
-184
@@ -93,6 +93,10 @@ html {
|
|||||||
width: device-width;
|
width: device-width;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||||
@@ -855,51 +859,99 @@ pre code {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.col-1 {
|
.col-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-2 {
|
.col-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-3 {
|
.col-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-4 {
|
.col-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-5 {
|
.col-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-6 {
|
.col-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-7 {
|
.col-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-8 {
|
.col-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-9 {
|
.col-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-10 {
|
.col-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-11 {
|
.col-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.col-12 {
|
.col-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.pull-0 {
|
.pull-0 {
|
||||||
@@ -1069,40 +1121,88 @@ pre code {
|
|||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
.col-sm-1 {
|
.col-sm-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
.col-sm-2 {
|
.col-sm-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
.col-sm-3 {
|
.col-sm-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
.col-sm-4 {
|
.col-sm-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
.col-sm-5 {
|
.col-sm-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
.col-sm-6 {
|
.col-sm-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
.col-sm-7 {
|
.col-sm-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
.col-sm-8 {
|
.col-sm-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
.col-sm-9 {
|
.col-sm-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
.col-sm-10 {
|
.col-sm-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
.col-sm-11 {
|
.col-sm-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
.col-sm-12 {
|
.col-sm-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
.pull-sm-0 {
|
.pull-sm-0 {
|
||||||
right: auto;
|
right: auto;
|
||||||
@@ -1239,40 +1339,88 @@ pre code {
|
|||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
.col-md-1 {
|
.col-md-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
.col-md-2 {
|
.col-md-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
.col-md-3 {
|
.col-md-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
.col-md-4 {
|
.col-md-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
.col-md-5 {
|
.col-md-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
.col-md-6 {
|
.col-md-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
.col-md-7 {
|
.col-md-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
.col-md-8 {
|
.col-md-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
.col-md-9 {
|
.col-md-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
.col-md-10 {
|
.col-md-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
.col-md-11 {
|
.col-md-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
.col-md-12 {
|
.col-md-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
.pull-md-0 {
|
.pull-md-0 {
|
||||||
right: auto;
|
right: auto;
|
||||||
@@ -1409,40 +1557,88 @@ pre code {
|
|||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
.col-lg-1 {
|
.col-lg-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
.col-lg-2 {
|
.col-lg-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
.col-lg-3 {
|
.col-lg-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
.col-lg-4 {
|
.col-lg-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
.col-lg-5 {
|
.col-lg-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
.col-lg-6 {
|
.col-lg-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
.col-lg-7 {
|
.col-lg-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
.col-lg-8 {
|
.col-lg-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
.col-lg-9 {
|
.col-lg-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
.col-lg-10 {
|
.col-lg-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
.col-lg-11 {
|
.col-lg-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
.col-lg-12 {
|
.col-lg-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
.pull-lg-0 {
|
.pull-lg-0 {
|
||||||
right: auto;
|
right: auto;
|
||||||
@@ -1579,40 +1775,88 @@ pre code {
|
|||||||
width: auto;
|
width: auto;
|
||||||
}
|
}
|
||||||
.col-xl-1 {
|
.col-xl-1 {
|
||||||
width: 8.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 8.333333%;
|
||||||
|
-ms-flex: 0 0 8.333333%;
|
||||||
|
flex: 0 0 8.333333%;
|
||||||
|
max-width: 8.333333%;
|
||||||
}
|
}
|
||||||
.col-xl-2 {
|
.col-xl-2 {
|
||||||
width: 16.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 16.666667%;
|
||||||
|
-ms-flex: 0 0 16.666667%;
|
||||||
|
flex: 0 0 16.666667%;
|
||||||
|
max-width: 16.666667%;
|
||||||
}
|
}
|
||||||
.col-xl-3 {
|
.col-xl-3 {
|
||||||
width: 25%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 25%;
|
||||||
|
-ms-flex: 0 0 25%;
|
||||||
|
flex: 0 0 25%;
|
||||||
|
max-width: 25%;
|
||||||
}
|
}
|
||||||
.col-xl-4 {
|
.col-xl-4 {
|
||||||
width: 33.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 33.333333%;
|
||||||
|
-ms-flex: 0 0 33.333333%;
|
||||||
|
flex: 0 0 33.333333%;
|
||||||
|
max-width: 33.333333%;
|
||||||
}
|
}
|
||||||
.col-xl-5 {
|
.col-xl-5 {
|
||||||
width: 41.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 41.666667%;
|
||||||
|
-ms-flex: 0 0 41.666667%;
|
||||||
|
flex: 0 0 41.666667%;
|
||||||
|
max-width: 41.666667%;
|
||||||
}
|
}
|
||||||
.col-xl-6 {
|
.col-xl-6 {
|
||||||
width: 50%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 50%;
|
||||||
|
-ms-flex: 0 0 50%;
|
||||||
|
flex: 0 0 50%;
|
||||||
|
max-width: 50%;
|
||||||
}
|
}
|
||||||
.col-xl-7 {
|
.col-xl-7 {
|
||||||
width: 58.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 58.333333%;
|
||||||
|
-ms-flex: 0 0 58.333333%;
|
||||||
|
flex: 0 0 58.333333%;
|
||||||
|
max-width: 58.333333%;
|
||||||
}
|
}
|
||||||
.col-xl-8 {
|
.col-xl-8 {
|
||||||
width: 66.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 66.666667%;
|
||||||
|
-ms-flex: 0 0 66.666667%;
|
||||||
|
flex: 0 0 66.666667%;
|
||||||
|
max-width: 66.666667%;
|
||||||
}
|
}
|
||||||
.col-xl-9 {
|
.col-xl-9 {
|
||||||
width: 75%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 75%;
|
||||||
|
-ms-flex: 0 0 75%;
|
||||||
|
flex: 0 0 75%;
|
||||||
|
max-width: 75%;
|
||||||
}
|
}
|
||||||
.col-xl-10 {
|
.col-xl-10 {
|
||||||
width: 83.333333%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 83.333333%;
|
||||||
|
-ms-flex: 0 0 83.333333%;
|
||||||
|
flex: 0 0 83.333333%;
|
||||||
|
max-width: 83.333333%;
|
||||||
}
|
}
|
||||||
.col-xl-11 {
|
.col-xl-11 {
|
||||||
width: 91.666667%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 91.666667%;
|
||||||
|
-ms-flex: 0 0 91.666667%;
|
||||||
|
flex: 0 0 91.666667%;
|
||||||
|
max-width: 91.666667%;
|
||||||
}
|
}
|
||||||
.col-xl-12 {
|
.col-xl-12 {
|
||||||
width: 100%;
|
-webkit-box-flex: 0;
|
||||||
|
-webkit-flex: 0 0 100%;
|
||||||
|
-ms-flex: 0 0 100%;
|
||||||
|
flex: 0 0 100%;
|
||||||
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
.pull-xl-0 {
|
.pull-xl-0 {
|
||||||
right: auto;
|
right: auto;
|
||||||
@@ -2887,22 +3131,12 @@ tbody.collapse.show {
|
|||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
.show > .dropdown-menu {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.show > a {
|
.show > a {
|
||||||
outline: 0;
|
outline: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropdown-menu-right {
|
.dropdown-menu.show {
|
||||||
right: 0;
|
display: block;
|
||||||
left: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.dropdown-menu-left {
|
|
||||||
right: auto;
|
|
||||||
left: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropdown-header {
|
.dropdown-header {
|
||||||
@@ -2914,12 +3148,6 @@ tbody.collapse.show {
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropup .dropdown-menu {
|
|
||||||
top: auto;
|
|
||||||
bottom: 100%;
|
|
||||||
margin-bottom: 0.125rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn-group,
|
.btn-group,
|
||||||
.btn-group-vertical {
|
.btn-group-vertical {
|
||||||
position: relative;
|
position: relative;
|
||||||
@@ -3643,6 +3871,14 @@ tbody.collapse.show {
|
|||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.navbar-nav .dropdown-menu {
|
||||||
|
position: static !important;
|
||||||
|
float: none;
|
||||||
|
-webkit-transform: unset !important;
|
||||||
|
-o-transform: unset !important;
|
||||||
|
transform: unset !important;
|
||||||
|
}
|
||||||
|
|
||||||
.navbar-text {
|
.navbar-text {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding-top: 0.5rem;
|
padding-top: 0.5rem;
|
||||||
@@ -3680,10 +3916,6 @@ tbody.collapse.show {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 575px) {
|
@media (max-width: 575px) {
|
||||||
.navbar-expand-sm .navbar-nav .dropdown-menu {
|
|
||||||
position: static;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
.navbar-expand-sm > .container,
|
.navbar-expand-sm > .container,
|
||||||
.navbar-expand-sm > .container-fluid {
|
.navbar-expand-sm > .container-fluid {
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
@@ -3714,7 +3946,8 @@ tbody.collapse.show {
|
|||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
}
|
}
|
||||||
.navbar-expand-sm .navbar-nav .dropdown-menu {
|
.navbar-expand-sm .navbar-nav .dropdown-menu {
|
||||||
position: absolute;
|
position: absolute !important;
|
||||||
|
top: 100% !important;
|
||||||
}
|
}
|
||||||
.navbar-expand-sm .navbar-nav .nav-link {
|
.navbar-expand-sm .navbar-nav .nav-link {
|
||||||
padding-right: .5rem;
|
padding-right: .5rem;
|
||||||
@@ -3738,10 +3971,6 @@ tbody.collapse.show {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 767px) {
|
@media (max-width: 767px) {
|
||||||
.navbar-expand-md .navbar-nav .dropdown-menu {
|
|
||||||
position: static;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
.navbar-expand-md > .container,
|
.navbar-expand-md > .container,
|
||||||
.navbar-expand-md > .container-fluid {
|
.navbar-expand-md > .container-fluid {
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
@@ -3772,7 +4001,8 @@ tbody.collapse.show {
|
|||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
}
|
}
|
||||||
.navbar-expand-md .navbar-nav .dropdown-menu {
|
.navbar-expand-md .navbar-nav .dropdown-menu {
|
||||||
position: absolute;
|
position: absolute !important;
|
||||||
|
top: 100% !important;
|
||||||
}
|
}
|
||||||
.navbar-expand-md .navbar-nav .nav-link {
|
.navbar-expand-md .navbar-nav .nav-link {
|
||||||
padding-right: .5rem;
|
padding-right: .5rem;
|
||||||
@@ -3796,10 +4026,6 @@ tbody.collapse.show {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 991px) {
|
@media (max-width: 991px) {
|
||||||
.navbar-expand-lg .navbar-nav .dropdown-menu {
|
|
||||||
position: static;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
.navbar-expand-lg > .container,
|
.navbar-expand-lg > .container,
|
||||||
.navbar-expand-lg > .container-fluid {
|
.navbar-expand-lg > .container-fluid {
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
@@ -3830,7 +4056,8 @@ tbody.collapse.show {
|
|||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
}
|
}
|
||||||
.navbar-expand-lg .navbar-nav .dropdown-menu {
|
.navbar-expand-lg .navbar-nav .dropdown-menu {
|
||||||
position: absolute;
|
position: absolute !important;
|
||||||
|
top: 100% !important;
|
||||||
}
|
}
|
||||||
.navbar-expand-lg .navbar-nav .nav-link {
|
.navbar-expand-lg .navbar-nav .nav-link {
|
||||||
padding-right: .5rem;
|
padding-right: .5rem;
|
||||||
@@ -3854,10 +4081,6 @@ tbody.collapse.show {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 1199px) {
|
@media (max-width: 1199px) {
|
||||||
.navbar-expand-xl .navbar-nav .dropdown-menu {
|
|
||||||
position: static;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
.navbar-expand-xl > .container,
|
.navbar-expand-xl > .container,
|
||||||
.navbar-expand-xl > .container-fluid {
|
.navbar-expand-xl > .container-fluid {
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
@@ -3888,7 +4111,8 @@ tbody.collapse.show {
|
|||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
}
|
}
|
||||||
.navbar-expand-xl .navbar-nav .dropdown-menu {
|
.navbar-expand-xl .navbar-nav .dropdown-menu {
|
||||||
position: absolute;
|
position: absolute !important;
|
||||||
|
top: 100% !important;
|
||||||
}
|
}
|
||||||
.navbar-expand-xl .navbar-nav .nav-link {
|
.navbar-expand-xl .navbar-nav .nav-link {
|
||||||
padding-right: .5rem;
|
padding-right: .5rem;
|
||||||
@@ -3926,11 +4150,6 @@ tbody.collapse.show {
|
|||||||
justify-content: flex-start;
|
justify-content: flex-start;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-expand .navbar-nav .dropdown-menu {
|
|
||||||
position: static;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.navbar-expand > .container,
|
.navbar-expand > .container,
|
||||||
.navbar-expand > .container-fluid {
|
.navbar-expand > .container-fluid {
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
@@ -3946,7 +4165,8 @@ tbody.collapse.show {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.navbar-expand .navbar-nav .dropdown-menu {
|
.navbar-expand .navbar-nav .dropdown-menu {
|
||||||
position: absolute;
|
position: absolute !important;
|
||||||
|
top: 100% !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-expand .navbar-nav .nav-link {
|
.navbar-expand .navbar-nav .nav-link {
|
||||||
@@ -5210,6 +5430,7 @@ button.close {
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: 1070;
|
z-index: 1070;
|
||||||
display: block;
|
display: block;
|
||||||
|
margin: 0;
|
||||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
@@ -5233,62 +5454,80 @@ button.close {
|
|||||||
opacity: 0.9;
|
opacity: 0.9;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-top, .tooltip.bs-tether-element-attached-bottom {
|
.tooltip .arrow {
|
||||||
padding: 5px 0;
|
position: absolute;
|
||||||
margin-top: -3px;
|
display: block;
|
||||||
|
width: 5px;
|
||||||
|
height: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-top .tooltip-inner::before, .tooltip.bs-tether-element-attached-bottom .tooltip-inner::before {
|
.tooltip.bs-tooltip-top, .tooltip.bs-tooltip-auto[x-placement^="top"] {
|
||||||
|
padding: 5px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tooltip.bs-tooltip-top .arrow, .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow {
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 50%;
|
}
|
||||||
margin-left: -5px;
|
|
||||||
|
.tooltip.bs-tooltip-top .arrow::before, .tooltip.bs-tooltip-auto[x-placement^="top"] .arrow::before {
|
||||||
|
margin-left: -3px;
|
||||||
content: "";
|
content: "";
|
||||||
border-width: 5px 5px 0;
|
border-width: 5px 5px 0;
|
||||||
border-top-color: #000;
|
border-top-color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-right, .tooltip.bs-tether-element-attached-left {
|
.tooltip.bs-tooltip-right, .tooltip.bs-tooltip-auto[x-placement^="right"] {
|
||||||
padding: 0 5px;
|
padding: 0 5px;
|
||||||
margin-left: 3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-right .tooltip-inner::before, .tooltip.bs-tether-element-attached-left .tooltip-inner::before {
|
.tooltip.bs-tooltip-right .arrow, .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow {
|
||||||
top: 50%;
|
|
||||||
left: 0;
|
left: 0;
|
||||||
margin-top: -5px;
|
}
|
||||||
|
|
||||||
|
.tooltip.bs-tooltip-right .arrow::before, .tooltip.bs-tooltip-auto[x-placement^="right"] .arrow::before {
|
||||||
|
margin-top: -3px;
|
||||||
content: "";
|
content: "";
|
||||||
border-width: 5px 5px 5px 0;
|
border-width: 5px 5px 5px 0;
|
||||||
border-right-color: #000;
|
border-right-color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-bottom, .tooltip.bs-tether-element-attached-top {
|
.tooltip.bs-tooltip-bottom, .tooltip.bs-tooltip-auto[x-placement^="bottom"] {
|
||||||
padding: 5px 0;
|
padding: 5px 0;
|
||||||
margin-top: 3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-bottom .tooltip-inner::before, .tooltip.bs-tether-element-attached-top .tooltip-inner::before {
|
.tooltip.bs-tooltip-bottom .arrow, .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow {
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 50%;
|
}
|
||||||
margin-left: -5px;
|
|
||||||
|
.tooltip.bs-tooltip-bottom .arrow::before, .tooltip.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
|
||||||
|
margin-left: -3px;
|
||||||
content: "";
|
content: "";
|
||||||
border-width: 0 5px 5px;
|
border-width: 0 5px 5px;
|
||||||
border-bottom-color: #000;
|
border-bottom-color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-left, .tooltip.bs-tether-element-attached-right {
|
.tooltip.bs-tooltip-left, .tooltip.bs-tooltip-auto[x-placement^="left"] {
|
||||||
padding: 0 5px;
|
padding: 0 5px;
|
||||||
margin-left: -3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-left .tooltip-inner::before, .tooltip.bs-tether-element-attached-right .tooltip-inner::before {
|
.tooltip.bs-tooltip-left .arrow, .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow {
|
||||||
top: 50%;
|
|
||||||
right: 0;
|
right: 0;
|
||||||
margin-top: -5px;
|
}
|
||||||
|
|
||||||
|
.tooltip.bs-tooltip-left .arrow::before, .tooltip.bs-tooltip-auto[x-placement^="left"] .arrow::before {
|
||||||
|
right: 0;
|
||||||
|
margin-top: -3px;
|
||||||
content: "";
|
content: "";
|
||||||
border-width: 5px 0 5px 5px;
|
border-width: 5px 0 5px 5px;
|
||||||
border-left-color: #000;
|
border-left-color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.tooltip .arrow::before {
|
||||||
|
position: absolute;
|
||||||
|
border-color: transparent;
|
||||||
|
border-style: solid;
|
||||||
|
}
|
||||||
|
|
||||||
.tooltip-inner {
|
.tooltip-inner {
|
||||||
max-width: 200px;
|
max-width: 200px;
|
||||||
padding: 3px 8px;
|
padding: 3px 8px;
|
||||||
@@ -5298,14 +5537,6 @@ button.close {
|
|||||||
border-radius: 0.25rem;
|
border-radius: 0.25rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip-inner::before {
|
|
||||||
position: absolute;
|
|
||||||
width: 0;
|
|
||||||
height: 0;
|
|
||||||
border-color: transparent;
|
|
||||||
border-style: solid;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popover {
|
.popover {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
@@ -5337,70 +5568,105 @@ button.close {
|
|||||||
border-radius: 0.3rem;
|
border-radius: 0.3rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-top, .popover.bs-tether-element-attached-bottom {
|
.popover .arrow {
|
||||||
margin-top: -10px;
|
position: absolute;
|
||||||
|
display: block;
|
||||||
|
width: 10px;
|
||||||
|
height: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-top::before, .popover.popover-top::after, .popover.bs-tether-element-attached-bottom::before, .popover.bs-tether-element-attached-bottom::after {
|
.popover .arrow::before,
|
||||||
left: 50%;
|
.popover .arrow::after {
|
||||||
|
position: absolute;
|
||||||
|
display: block;
|
||||||
|
border-color: transparent;
|
||||||
|
border-style: solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover .arrow::before {
|
||||||
|
content: "";
|
||||||
|
border-width: 11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover .arrow::after {
|
||||||
|
content: "";
|
||||||
|
border-width: 11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover.bs-popover-top, .popover.bs-popover-auto[x-placement^="top"] {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover.bs-popover-top .arrow, .popover.bs-popover-auto[x-placement^="top"] .arrow {
|
||||||
|
bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover.bs-popover-top .arrow::before, .popover.bs-popover-auto[x-placement^="top"] .arrow::before,
|
||||||
|
.popover.bs-popover-top .arrow::after, .popover.bs-popover-auto[x-placement^="top"] .arrow::after {
|
||||||
border-bottom-width: 0;
|
border-bottom-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-top::before, .popover.bs-tether-element-attached-bottom::before {
|
.popover.bs-popover-top .arrow::before, .popover.bs-popover-auto[x-placement^="top"] .arrow::before {
|
||||||
bottom: -11px;
|
bottom: -11px;
|
||||||
margin-left: -11px;
|
margin-left: -6px;
|
||||||
border-top-color: rgba(0, 0, 0, 0.25);
|
border-top-color: rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-top::after, .popover.bs-tether-element-attached-bottom::after {
|
.popover.bs-popover-top .arrow::after, .popover.bs-popover-auto[x-placement^="top"] .arrow::after {
|
||||||
bottom: -10px;
|
bottom: -10px;
|
||||||
margin-left: -10px;
|
margin-left: -6px;
|
||||||
border-top-color: #fff;
|
border-top-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-right, .popover.bs-tether-element-attached-left {
|
.popover.bs-popover-right, .popover.bs-popover-auto[x-placement^="right"] {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-right::before, .popover.popover-right::after, .popover.bs-tether-element-attached-left::before, .popover.bs-tether-element-attached-left::after {
|
.popover.bs-popover-right .arrow, .popover.bs-popover-auto[x-placement^="right"] .arrow {
|
||||||
top: 50%;
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover.bs-popover-right .arrow::before, .popover.bs-popover-auto[x-placement^="right"] .arrow::before,
|
||||||
|
.popover.bs-popover-right .arrow::after, .popover.bs-popover-auto[x-placement^="right"] .arrow::after {
|
||||||
|
margin-top: -8px;
|
||||||
border-left-width: 0;
|
border-left-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-right::before, .popover.bs-tether-element-attached-left::before {
|
.popover.bs-popover-right .arrow::before, .popover.bs-popover-auto[x-placement^="right"] .arrow::before {
|
||||||
left: -11px;
|
left: -11px;
|
||||||
margin-top: -11px;
|
|
||||||
border-right-color: rgba(0, 0, 0, 0.25);
|
border-right-color: rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-right::after, .popover.bs-tether-element-attached-left::after {
|
.popover.bs-popover-right .arrow::after, .popover.bs-popover-auto[x-placement^="right"] .arrow::after {
|
||||||
left: -10px;
|
left: -10px;
|
||||||
margin-top: -10px;
|
|
||||||
border-right-color: #fff;
|
border-right-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom, .popover.bs-tether-element-attached-top {
|
.popover.bs-popover-bottom, .popover.bs-popover-auto[x-placement^="bottom"] {
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom::before, .popover.popover-bottom::after, .popover.bs-tether-element-attached-top::before, .popover.bs-tether-element-attached-top::after {
|
.popover.bs-popover-bottom .arrow, .popover.bs-popover-auto[x-placement^="bottom"] .arrow {
|
||||||
left: 50%;
|
top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover.bs-popover-bottom .arrow::before, .popover.bs-popover-auto[x-placement^="bottom"] .arrow::before,
|
||||||
|
.popover.bs-popover-bottom .arrow::after, .popover.bs-popover-auto[x-placement^="bottom"] .arrow::after {
|
||||||
|
margin-left: -7px;
|
||||||
border-top-width: 0;
|
border-top-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom::before, .popover.bs-tether-element-attached-top::before {
|
.popover.bs-popover-bottom .arrow::before, .popover.bs-popover-auto[x-placement^="bottom"] .arrow::before {
|
||||||
top: -11px;
|
top: -11px;
|
||||||
margin-left: -11px;
|
|
||||||
border-bottom-color: rgba(0, 0, 0, 0.25);
|
border-bottom-color: rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom::after, .popover.bs-tether-element-attached-top::after {
|
.popover.bs-popover-bottom .arrow::after, .popover.bs-popover-auto[x-placement^="bottom"] .arrow::after {
|
||||||
top: -10px;
|
top: -10px;
|
||||||
margin-left: -10px;
|
|
||||||
border-bottom-color: #fff;
|
border-bottom-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom .popover-title::before, .popover.bs-tether-element-attached-top .popover-title::before {
|
.popover.bs-popover-bottom .popover-title::before, .popover.bs-popover-auto[x-placement^="bottom"] .popover-title::before {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
@@ -5411,24 +5677,27 @@ button.close {
|
|||||||
border-bottom: 1px solid #f7f7f7;
|
border-bottom: 1px solid #f7f7f7;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-left, .popover.bs-tether-element-attached-right {
|
.popover.bs-popover-left, .popover.bs-popover-auto[x-placement^="left"] {
|
||||||
margin-left: -10px;
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-left::before, .popover.popover-left::after, .popover.bs-tether-element-attached-right::before, .popover.bs-tether-element-attached-right::after {
|
.popover.bs-popover-left .arrow, .popover.bs-popover-auto[x-placement^="left"] .arrow {
|
||||||
top: 50%;
|
right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover.bs-popover-left .arrow::before, .popover.bs-popover-auto[x-placement^="left"] .arrow::before,
|
||||||
|
.popover.bs-popover-left .arrow::after, .popover.bs-popover-auto[x-placement^="left"] .arrow::after {
|
||||||
|
margin-top: -8px;
|
||||||
border-right-width: 0;
|
border-right-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-left::before, .popover.bs-tether-element-attached-right::before {
|
.popover.bs-popover-left .arrow::before, .popover.bs-popover-auto[x-placement^="left"] .arrow::before {
|
||||||
right: -11px;
|
right: -11px;
|
||||||
margin-top: -11px;
|
|
||||||
border-left-color: rgba(0, 0, 0, 0.25);
|
border-left-color: rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-left::after, .popover.bs-tether-element-attached-right::after {
|
.popover.bs-popover-left .arrow::after, .popover.bs-popover-auto[x-placement^="left"] .arrow::after {
|
||||||
right: -10px;
|
right: -10px;
|
||||||
margin-top: -10px;
|
|
||||||
border-left-color: #fff;
|
border-left-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5452,26 +5721,6 @@ button.close {
|
|||||||
color: #292b2c;
|
color: #292b2c;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover::before,
|
|
||||||
.popover::after {
|
|
||||||
position: absolute;
|
|
||||||
display: block;
|
|
||||||
width: 0;
|
|
||||||
height: 0;
|
|
||||||
border-color: transparent;
|
|
||||||
border-style: solid;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popover::before {
|
|
||||||
content: "";
|
|
||||||
border-width: 11px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popover::after {
|
|
||||||
content: "";
|
|
||||||
border-width: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.carousel {
|
.carousel {
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+337
-175
File diff suppressed because it is too large
Load Diff
Vendored
+279
-2
File diff suppressed because one or more lines are too long
@@ -8,6 +8,7 @@
|
|||||||
- title: Options
|
- title: Options
|
||||||
- title: Build tools
|
- title: Build tools
|
||||||
- title: Best practices
|
- title: Best practices
|
||||||
|
- title: Webpack
|
||||||
- title: Accessibility
|
- title: Accessibility
|
||||||
|
|
||||||
- title: Layout
|
- title: Layout
|
||||||
|
|||||||
@@ -0,0 +1 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 612 612" width="128" height="128"><g id="solid"><g id="bg"><path fill="#fff" d="M510,5a97.3,97.3,0,0,1,97,97V510a97.3,97.3,0,0,1-97,97H102A97.3,97.3,0,0,1,5,510V102A97.3,97.3,0,0,1,102,5H510m0-5H102C45.9,0,0,45.9,0,102V510c0,56.1,45.9,102,102,102H510c56.1,0,102-45.9,102-102V102C612,45.9,566.1,0,510,0h0Z"/></g></g><path fill="#fff" d="M196.77,471.5V154.43H320.92c54.27,0,91,31.64,91,79.1,0,33-24.17,63.72-54.71,69.21v1.76c43.07,5.49,70.75,35.82,70.75,78,0,55.81-40,89-107.45,89H196.77Zm39.55-180.4H299.6c46.8,0,72.29-18.68,72.29-53,0-31.42-21.53-48.78-60-48.78H236.32V291.1Zm78.22,145.46c47.68,0,72.73-19.34,72.73-56s-25.93-55.37-76.46-55.37H236.32v111.4h78.22Z"/></svg>
|
||||||
|
After Width: | Height: | Size: 725 B |
@@ -14,7 +14,7 @@
|
|||||||
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="{{ site.baseurl }}/assets/js/vendor/jquery-slim.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="{{ site.baseurl }}/assets/js/vendor/jquery-slim.min.js"><\/script>')</script>
|
||||||
|
|
||||||
<script src="{{ site.baseurl }}/assets/js/vendor/tether.min.js"></script>
|
<script src="{{ site.baseurl }}/assets/js/vendor/popper.min.js"></script>
|
||||||
|
|
||||||
{% if site.github %}
|
{% if site.github %}
|
||||||
<script src="{{ site.baseurl }}/dist/js/bootstrap.min.js"></script>
|
<script src="{{ site.baseurl }}/dist/js/bootstrap.min.js"></script>
|
||||||
|
|||||||
+3
-3
@@ -14,14 +14,14 @@ Have a need for Bootstrap's brand resources? Great! We have only a few guideline
|
|||||||
|
|
||||||
## Mark and logo
|
## Mark and logo
|
||||||
|
|
||||||
Use either the Bootstrap mark (a capital **B**) or the standard logo (just **Bootstrap**). It should always appear in Helvetica Neue Bold. **Do not use the Twitter bird** in association with Bootstrap.
|
Use either the Bootstrap mark (a capital **B**) or the standard logo (just **Bootstrap**). It should always appear in San Francisco Display Semibold. **Do not use the Twitter bird** in association with Bootstrap.
|
||||||
|
|
||||||
<div class="bd-brand-logos">
|
<div class="bd-brand-logos">
|
||||||
<div class="bd-brand-item">
|
<div class="bd-brand-item">
|
||||||
<div class="bd-booticon bd-booticon-lg">B</div>
|
<img class="svg" src="{{ site.baseurl }}/assets/brand/bootstrap-solid.svg" alt="Bootstrap" width="144" height="144">
|
||||||
</div>
|
</div>
|
||||||
<div class="bd-brand-item inverse">
|
<div class="bd-brand-item inverse">
|
||||||
<div class="bd-booticon bd-booticon-lg bd-booticon-inverse">B</div>
|
<img class="svg" src="{{ site.baseurl }}/assets/brand/bootstrap-outline.svg" alt="Bootstrap" width="144" height="144">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="bd-brand-logos">
|
<div class="bd-brand-logos">
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Vendored
+3
File diff suppressed because one or more lines are too long
Vendored
-1
File diff suppressed because one or more lines are too long
@@ -1,25 +0,0 @@
|
|||||||
//
|
|
||||||
// Bootstrap "B" Booticon
|
|
||||||
//
|
|
||||||
|
|
||||||
.bd-booticon {
|
|
||||||
display: block;
|
|
||||||
width: 9rem;
|
|
||||||
height: 9rem;
|
|
||||||
font-size: 6.5rem;
|
|
||||||
line-height: 9rem;
|
|
||||||
color: #fff;
|
|
||||||
text-align: center;
|
|
||||||
cursor: default;
|
|
||||||
background-color: $bd-purple;
|
|
||||||
border-radius: 15%;
|
|
||||||
|
|
||||||
&.inverse {
|
|
||||||
color: $bd-purple;
|
|
||||||
background-color: #fff;
|
|
||||||
}
|
|
||||||
&.outline {
|
|
||||||
background-color: transparent;
|
|
||||||
border: 1px solid $bd-purple-light;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -298,6 +298,18 @@
|
|||||||
margin-top: .25rem;
|
margin-top: .25rem;
|
||||||
margin-bottom: .25rem;
|
margin-bottom: .25rem;
|
||||||
}
|
}
|
||||||
|
.bs-tooltip-top-docs,
|
||||||
|
.bs-tooltip-bottom-docs {
|
||||||
|
.arrow {
|
||||||
|
left: 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.bs-tooltip-right-docs,
|
||||||
|
.bs-tooltip-left-docs {
|
||||||
|
.arrow {
|
||||||
|
top: 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Popovers
|
// Popovers
|
||||||
.bd-example-popover-static {
|
.bd-example-popover-static {
|
||||||
@@ -311,6 +323,18 @@
|
|||||||
width: 260px;
|
width: 260px;
|
||||||
margin: 1.25rem;
|
margin: 1.25rem;
|
||||||
}
|
}
|
||||||
|
.bs-popover-top-docs,
|
||||||
|
.bs-popover-bottom-docs {
|
||||||
|
.arrow {
|
||||||
|
left: 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.bs-popover-right-docs,
|
||||||
|
.bs-popover-left-docs {
|
||||||
|
.arrow {
|
||||||
|
top: 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Tooltips
|
// Tooltips
|
||||||
.tooltip-demo a {
|
.tooltip-demo a {
|
||||||
|
|||||||
@@ -39,7 +39,6 @@ $bd-warning: #f0ad4e;
|
|||||||
$bd-info: #5bc0de;
|
$bd-info: #5bc0de;
|
||||||
|
|
||||||
// Load docs components
|
// Load docs components
|
||||||
@import "booticon";
|
|
||||||
@import "nav";
|
@import "nav";
|
||||||
@import "masthead";
|
@import "masthead";
|
||||||
@import "featurettes";
|
@import "featurettes";
|
||||||
|
|||||||
@@ -12,6 +12,13 @@ Dropdowns are toggleable, contextual overlays for displaying lists of links and
|
|||||||
* Will be replaced with the ToC, excluding the "Contents" header
|
* Will be replaced with the ToC, excluding the "Contents" header
|
||||||
{:toc}
|
{:toc}
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Things to know when using the popover plugin:
|
||||||
|
|
||||||
|
- Dropdown rely on the 3rd party library [Popper.js](https://popper.js.org) for positioning. You must include [popper.min.js](https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js) before bootstrap.js in order for dropdowns to work!
|
||||||
|
- Popper.js handle natively the flip of Dropdown when it's outside the viewport, if you want to disable that's behavior use `flip` attribute
|
||||||
|
|
||||||
## Examples
|
## Examples
|
||||||
|
|
||||||
Wrap the dropdown's toggle (your button or link) and the dropdown menu within `.dropdown`, or another element that declares `position: relative;`. Dropdowns can be triggered from `<a>` or `<button>` elements to better fit your potential needs.
|
Wrap the dropdown's toggle (your button or link) and the dropdown menu within `.dropdown`, or another element that declares `position: relative;`. Dropdowns can be triggered from `<a>` or `<button>` elements to better fit your potential needs.
|
||||||
@@ -19,7 +26,7 @@ Wrap the dropdown's toggle (your button or link) and the dropdown menu within `.
|
|||||||
{% callout info %}
|
{% callout info %}
|
||||||
### Dropdown menu accessibility
|
### Dropdown menu accessibility
|
||||||
|
|
||||||
The [<abbr title="Web Accessibility Initiative">WAI</abbr> <abbr title="Accessible Rich Internet Applications">ARIA</abbr>](https://www.w3.org/TR/wai-aria/) standard defines an actual [`role="menu"` widget](https://www.w3.org/TR/wai-aria/roles#menu), but this is specific to application-like menus which trigger actions or functions. <abbr title="Accessible Rich Internet Applications">ARIA</abbr> menus can only contain menu items, checkbox menu items, radio button menu items, radio button groups, and sub-menus.
|
The [<abbr title="Web Accessibility Initiative">WAI</abbr> <abbr title="Accessible Rich Internet Applications">ARIA</abbr>](https://www.w3.org/TR/wai-aria/) standard defines an actual [`role="menu"` widget](https://www.w3.org/TR/wai-aria/roles#menu), but this is specific to application-like menus which trigger actions or functions. <abbr title="Accessible Rich Internet Applications">ARIA</abbr> menus can only contain menu items, checkbox menu items, radio button menu items, radio button groups, and sub-menus.
|
||||||
|
|
||||||
Bootstrap's dropdowns, on the other hand, are designed to be generic and applicable to a variety of situations and markup structures. For instance, it is possible to create dropdowns that contain additional inputs and form controls, such as search fields or login forms. For this reason, Bootstrap does not expect (nor automatically add) any of the `role` and `aria-` attributes required for true <abbr title="Accessible Rich Internet Applications">ARIA</abbr> menus. Authors will have to include these more specific attributes themselves.
|
Bootstrap's dropdowns, on the other hand, are designed to be generic and applicable to a variety of situations and markup structures. For instance, it is possible to create dropdowns that contain additional inputs and form controls, such as search fields or login forms. For this reason, Bootstrap does not expect (nor automatically add) any of the `role` and `aria-` attributes required for true <abbr title="Accessible Rich Internet Applications">ARIA</abbr> menus. Authors will have to include these more specific attributes themselves.
|
||||||
|
|
||||||
@@ -527,13 +534,47 @@ Regardless of whether you call your dropdown via JavaScript or instead use the d
|
|||||||
|
|
||||||
### Options
|
### Options
|
||||||
|
|
||||||
*None.*
|
Options can be passed via data attributes or JavaScript. For data attributes, append the option name to `data-`, as in `data-placement=""`.
|
||||||
|
|
||||||
|
<table class="table table-bordered table-striped table-responsive">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th style="width: 100px;">Name</th>
|
||||||
|
<th style="width: 100px;">Type</th>
|
||||||
|
<th style="width: 50px;">Default</th>
|
||||||
|
<th>Description</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr>
|
||||||
|
<td>placement</td>
|
||||||
|
<td>string</td>
|
||||||
|
<td>'bottom'</td>
|
||||||
|
<td>
|
||||||
|
<p>How to position the popover - top | bottom.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>offset</td>
|
||||||
|
<td>number | string</td>
|
||||||
|
<td>0</td>
|
||||||
|
<td>Offset of the dropdown relative to its target. For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..offset.offset">offset docs</a>.</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>flip</td>
|
||||||
|
<td>boolean</td>
|
||||||
|
<td>true</td>
|
||||||
|
<td>Allow Dropdown to flip in case of an overlapping on the reference element. For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..flip.enabled">flip docs</a>.</td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
### Methods
|
### Methods
|
||||||
|
|
||||||
| Method | Description |
|
| Method | Description |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `$().dropdown('toggle')` | Toggles the dropdown menu of a given navbar or tabbed navigation. |
|
| `$().dropdown('toggle')` | Toggles the dropdown menu of a given navbar or tabbed navigation. |
|
||||||
|
| `$().dropdown('update')` | Updates the position of an element's dropdown. |
|
||||||
|
|
||||||
### Events
|
### Events
|
||||||
|
|
||||||
|
|||||||
+28
-17
@@ -17,7 +17,7 @@ Add small overlay content, like those found in iOS, to any element for housing s
|
|||||||
Things to know when using the popover plugin:
|
Things to know when using the popover plugin:
|
||||||
|
|
||||||
|
|
||||||
- Popovers rely on the 3rd party library [Tether](http://tether.io/) for positioning. You must include [tether.min.js](https://github.com/HubSpot/tether/blob/master/dist/js/tether.min.js) before bootstrap.js in order for popovers to work!
|
- Popovers rely on the 3rd party library [Popper.js](https://popper.js.org) for positioning. You must include [popper.min.js](https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js) before bootstrap.js in order for popovers to work!
|
||||||
- Popovers require the [tooltip plugin]({{ site.baseurl }}/components/tooltips/) as a dependency.
|
- Popovers require the [tooltip plugin]({{ site.baseurl }}/components/tooltips/) as a dependency.
|
||||||
- Popovers are opt-in for performance reasons, so **you must initialize them yourself**.
|
- Popovers are opt-in for performance reasons, so **you must initialize them yourself**.
|
||||||
- Zero-length `title` and `content` values will never show a popover.
|
- Zero-length `title` and `content` values will never show a popover.
|
||||||
@@ -25,6 +25,7 @@ Things to know when using the popover plugin:
|
|||||||
- Triggering popovers on hidden elements will not work.
|
- Triggering popovers on hidden elements will not work.
|
||||||
- Popovers for `.disabled` or `disabled` elements must be triggered on a wrapper element.
|
- Popovers for `.disabled` or `disabled` elements must be triggered on a wrapper element.
|
||||||
- When triggered from hyperlinks that span multiple lines, popovers will be centered. Use `white-space: nowrap;` on your `<a>`s to avoid this behavior.
|
- When triggered from hyperlinks that span multiple lines, popovers will be centered. Use `white-space: nowrap;` on your `<a>`s to avoid this behavior.
|
||||||
|
- Popovers must be hidden before their corresponding elements have been removed from the DOM.
|
||||||
|
|
||||||
Got all that? Great, let's see how they work with some examples.
|
Got all that? Great, let's see how they work with some examples.
|
||||||
|
|
||||||
@@ -55,29 +56,32 @@ $(function () {
|
|||||||
Four options are available: top, right, bottom, and left aligned.
|
Four options are available: top, right, bottom, and left aligned.
|
||||||
|
|
||||||
<div class="bd-example bd-example-popover-static">
|
<div class="bd-example bd-example-popover-static">
|
||||||
<div class="popover popover-top">
|
<div class="popover bs-popover-top bs-popover-top-docs">
|
||||||
|
<div class="arrow" x-arrow></div>
|
||||||
<h3 class="popover-title">Popover top</h3>
|
<h3 class="popover-title">Popover top</h3>
|
||||||
<div class="popover-content">
|
<div class="popover-content">
|
||||||
<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>
|
<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="popover popover-right">
|
<div class="popover bs-popover-right bs-popover-right-docs">
|
||||||
|
<div class="arrow" x-arrow></div>
|
||||||
<h3 class="popover-title">Popover right</h3>
|
<h3 class="popover-title">Popover right</h3>
|
||||||
<div class="popover-content">
|
<div class="popover-content">
|
||||||
<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>
|
<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="popover popover-bottom">
|
<div class="popover bs-popover-bottom bs-popover-bottom-docs">
|
||||||
|
<div class="arrow" x-arrow></div>
|
||||||
<h3 class="popover-title">Popover bottom</h3>
|
<h3 class="popover-title">Popover bottom</h3>
|
||||||
|
|
||||||
<div class="popover-content">
|
<div class="popover-content">
|
||||||
<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>
|
<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="popover popover-left">
|
<div class="popover bs-popover-left bs-popover-left-docs">
|
||||||
|
<div class="arrow" x-arrow></div>
|
||||||
<h3 class="popover-title">Popover left</h3>
|
<h3 class="popover-title">Popover left</h3>
|
||||||
<div class="popover-content">
|
<div class="popover-content">
|
||||||
<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>
|
<p>Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.</p>
|
||||||
@@ -217,7 +221,7 @@ Options can be passed via data attributes or JavaScript. For data attributes, ap
|
|||||||
<td>string | function</td>
|
<td>string | function</td>
|
||||||
<td>'right'</td>
|
<td>'right'</td>
|
||||||
<td>
|
<td>
|
||||||
<p>How to position the popover - top | bottom | left | right.</p>
|
<p>How to position the popover - auto | top | bottom | left | right.<br>When <code>auto</code> is specified, it will dynamically reorient the popover.</p>
|
||||||
<p>When a function is used to determine the placement, it is called with the popover DOM node as its first argument and the triggering element DOM node as its second. The <code>this</code> context is set to the popover instance.</p>
|
<p>When a function is used to determine the placement, it is called with the popover DOM node as its first argument and the triggering element DOM node as its second. The <code>this</code> context is set to the popover instance.</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -230,12 +234,12 @@ Options can be passed via data attributes or JavaScript. For data attributes, ap
|
|||||||
<tr>
|
<tr>
|
||||||
<td>template</td>
|
<td>template</td>
|
||||||
<td>string</td>
|
<td>string</td>
|
||||||
<td><code>'<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'</code></td>
|
<td><code>'<div class="popover" role="tooltip"><div class="arrow" x-arrow></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'</code></td>
|
||||||
<td>
|
<td>
|
||||||
<p>Base HTML to use when creating the popover.</p>
|
<p>Base HTML to use when creating the popover.</p>
|
||||||
<p>The popover's <code>title</code> will be injected into the <code>.popover-title</code>.</p>
|
<p>The popover's <code>title</code> will be injected into the <code>.popover-title</code>.</p>
|
||||||
<p>The popover's <code>content</code> will be injected into the <code>.popover-content</code>.</p>
|
<p>The popover's <code>content</code> will be injected into the <code>.popover-content</code>.</p>
|
||||||
<p><code>.popover-arrow</code> will become the popover's arrow.</p>
|
<p><code>.arrow</code> will become the popover's arrow.</p>
|
||||||
<p>The outermost wrapper element should have the <code>.popover</code> class.</p>
|
<p>The outermost wrapper element should have the <code>.popover</code> class.</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -255,16 +259,17 @@ Options can be passed via data attributes or JavaScript. For data attributes, ap
|
|||||||
<td>How popover is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.</td>
|
<td>How popover is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>constraints</td>
|
<td>offset</td>
|
||||||
<td>Array</td>
|
<td>number | string</td>
|
||||||
<td>'hover focus'</td>
|
<td>0</td>
|
||||||
<td>An array of constraints - passed through to Tether. For more information refer to Tether's <a href="http://tether.io/#constraints">constraint docs</a>.</td>
|
<td>Offset of the popover relative to its target. For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..offset.offset">offset docs</a>.</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>offset</td>
|
<td>fallbackPlacement</td>
|
||||||
<td>string</td>
|
<td>string | array</td>
|
||||||
<td>'0 0'</td>
|
<td>'flip'</td>
|
||||||
<td>Offset of the popover relative to its target. For more information refer to Tether's <a href="http://tether.io/#offset">offset docs</a>.</td>
|
<td>Allow to specify which position Popper will use on fallback. For more information refer to
|
||||||
|
Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..flip.behavior">behavior docs</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -327,6 +332,12 @@ Toggles the ability for an element's popover to be shown or hidden.
|
|||||||
|
|
||||||
{% highlight js %}$('#element').popover('toggleEnabled'){% endhighlight %}
|
{% highlight js %}$('#element').popover('toggleEnabled'){% endhighlight %}
|
||||||
|
|
||||||
|
#### `.popover('update')`
|
||||||
|
|
||||||
|
Updates the position of an element's popover.
|
||||||
|
|
||||||
|
{% highlight js %}$('#element').popover('update'){% endhighlight %}
|
||||||
|
|
||||||
### Events
|
### Events
|
||||||
|
|
||||||
<table class="table table-bordered table-striped table-responsive">
|
<table class="table table-bordered table-striped table-responsive">
|
||||||
|
|||||||
+30
-18
@@ -16,13 +16,14 @@ Inspired by the excellent Tipsy jQuery plugin written by Jason Frame. Tooltips a
|
|||||||
|
|
||||||
Things to know when using the tooltip plugin:
|
Things to know when using the tooltip plugin:
|
||||||
|
|
||||||
- Tooltips rely on the 3rd party library [Tether](http://tether.io/) for positioning. You must include [tether.min.js](https://github.com/HubSpot/tether/blob/master/dist/js/tether.min.js) before bootstrap.js in order for tooltips to work!
|
- Tooltips rely on the 3rd party library [Popper.js](https://popper.js.org) for positioning. You must include [popper.min.js](https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js) before bootstrap.js in order for tooltips to work!
|
||||||
- Tooltips are opt-in for performance reasons, so **you must initialize them yourself**.
|
- Tooltips are opt-in for performance reasons, so **you must initialize them yourself**.
|
||||||
- Tooltips with zero-length titles are never displayed.
|
- Tooltips with zero-length titles are never displayed.
|
||||||
- Specify `container: 'body'` to avoid rendering problems in more complex components (like our input groups, button groups, etc).
|
- Specify `container: 'body'` to avoid rendering problems in more complex components (like our input groups, button groups, etc).
|
||||||
- Triggering tooltips on hidden elements will not work.
|
- Triggering tooltips on hidden elements will not work.
|
||||||
- Tooltips for `.disabled` or `disabled` elements must be triggered on a wrapper element.
|
- Tooltips for `.disabled` or `disabled` elements must be triggered on a wrapper element.
|
||||||
- When triggered from hyperlinks that span multiple lines, tooltips will be centered. Use `white-space: nowrap;` on your `<a>`s to avoid this behavior.
|
- When triggered from hyperlinks that span multiple lines, tooltips will be centered. Use `white-space: nowrap;` on your `<a>`s to avoid this behavior.
|
||||||
|
- Tooltips must be hidden before their corresponding elements have been removed from the DOM.
|
||||||
|
|
||||||
Got all that? Great, let's see how they work with some examples.
|
Got all that? Great, let's see how they work with some examples.
|
||||||
|
|
||||||
@@ -50,22 +51,26 @@ Hover over the links below to see tooltips:
|
|||||||
Four options are available: top, right, bottom, and left aligned.
|
Four options are available: top, right, bottom, and left aligned.
|
||||||
|
|
||||||
<div class="bd-example bd-example-tooltip-static">
|
<div class="bd-example bd-example-tooltip-static">
|
||||||
<div class="tooltip tooltip-top" role="tooltip">
|
<div class="tooltip bs-tooltip-top bs-tooltip-top-docs" role="tooltip">
|
||||||
|
<div class="arrow" x-arrow></div>
|
||||||
<div class="tooltip-inner">
|
<div class="tooltip-inner">
|
||||||
Tooltip on the top
|
Tooltip on the top
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tooltip tooltip-right" role="tooltip">
|
<div class="tooltip bs-tooltip-right bs-tooltip-right-docs" role="tooltip">
|
||||||
|
<div class="arrow" x-arrow></div>
|
||||||
<div class="tooltip-inner">
|
<div class="tooltip-inner">
|
||||||
Tooltip on the right
|
Tooltip on the right
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tooltip tooltip-bottom" role="tooltip">
|
<div class="tooltip bs-tooltip-bottom bs-tooltip-bottom-docs" role="tooltip">
|
||||||
|
<div class="arrow" x-arrow></div>
|
||||||
<div class="tooltip-inner">
|
<div class="tooltip-inner">
|
||||||
Tooltip on the bottom
|
Tooltip on the bottom
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tooltip tooltip-left" role="tooltip">
|
<div class="tooltip bs-tooltip-left bs-tooltip-left-docs" role="tooltip">
|
||||||
|
<div class="arrow" x-arrow></div>
|
||||||
<div class="tooltip-inner">
|
<div class="tooltip-inner">
|
||||||
Tooltip on the left
|
Tooltip on the left
|
||||||
</div>
|
</div>
|
||||||
@@ -134,8 +139,8 @@ You should only add tooltips to HTML elements that are traditionally keyboard-fo
|
|||||||
<a href="#" data-toggle="tooltip" title="Some tooltip text!">Hover over me</a>
|
<a href="#" data-toggle="tooltip" title="Some tooltip text!">Hover over me</a>
|
||||||
|
|
||||||
<!-- Generated markup by the plugin -->
|
<!-- Generated markup by the plugin -->
|
||||||
<div class="tooltip tooltip-top" role="tooltip">
|
<div class="tooltip bs-tooltip-top" role="tooltip">
|
||||||
<div class="tooltip-arrow"></div>
|
<div class="arrow" x-arrow></div>
|
||||||
<div class="tooltip-inner">
|
<div class="tooltip-inner">
|
||||||
Some tooltip text!
|
Some tooltip text!
|
||||||
</div>
|
</div>
|
||||||
@@ -195,7 +200,7 @@ Options can be passed via data attributes or JavaScript. For data attributes, ap
|
|||||||
<td>string | function</td>
|
<td>string | function</td>
|
||||||
<td>'top'</td>
|
<td>'top'</td>
|
||||||
<td>
|
<td>
|
||||||
<p>How to position the tooltip - top | bottom | left | right.</p>
|
<p>How to position the tooltip - auto | top | bottom | left | right.<br>When <code>auto</code> is specified, it will dynamically reorient the tooltip.</p>
|
||||||
<p>When a function is used to determine the placement, it is called with the tooltip DOM node as its first argument and the triggering element DOM node as its second. The <code>this</code> context is set to the tooltip instance.</p>
|
<p>When a function is used to determine the placement, it is called with the tooltip DOM node as its first argument and the triggering element DOM node as its second. The <code>this</code> context is set to the tooltip instance.</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -208,11 +213,11 @@ Options can be passed via data attributes or JavaScript. For data attributes, ap
|
|||||||
<tr>
|
<tr>
|
||||||
<td>template</td>
|
<td>template</td>
|
||||||
<td>string</td>
|
<td>string</td>
|
||||||
<td><code>'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'</code></td>
|
<td><code>'<div class="tooltip" role="tooltip"><div class="arrow" x-arrow></div><div class="tooltip-inner"></div></div>'</code></td>
|
||||||
<td>
|
<td>
|
||||||
<p>Base HTML to use when creating the tooltip.</p>
|
<p>Base HTML to use when creating the tooltip.</p>
|
||||||
<p>The tooltip's <code>title</code> will be injected into the <code>.tooltip-inner</code>.</p>
|
<p>The tooltip's <code>title</code> will be injected into the <code>.tooltip-inner</code>.</p>
|
||||||
<p><code>.tooltip-arrow</code> will become the tooltip's arrow.</p>
|
<p><code>.arrow</code> will become the tooltip's arrow.</p>
|
||||||
<p>The outermost wrapper element should have the <code>.tooltip</code> class.</p>
|
<p>The outermost wrapper element should have the <code>.tooltip</code> class.</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@@ -232,16 +237,17 @@ Options can be passed via data attributes or JavaScript. For data attributes, ap
|
|||||||
<td>How tooltip is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.</td>
|
<td>How tooltip is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>constraints</td>
|
<td>offset</td>
|
||||||
<td>Array</td>
|
<td>number | string</td>
|
||||||
<td>[]</td>
|
<td>0</td>
|
||||||
<td>An array of constraints - passed through to Tether. For more information refer to Tether's <a href="http://tether.io/#constraints">constraint docs</a>.</td>
|
<td>Offset of the tooltip relative to its target. For more information refer to Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..offset.offset">offset docs</a>.</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>offset</td>
|
<td>fallbackPlacement</td>
|
||||||
<td>string</td>
|
<td>string | array</td>
|
||||||
<td>'0 0'</td>
|
<td>'flip'</td>
|
||||||
<td>Offset of the tooltip relative to its target. For more information refer to Tether's <a href="http://tether.io/#offset">offset docs</a>.</td>
|
<td>Allow to specify which position Popper will use on fallback. For more information refer to
|
||||||
|
Popper.js's <a href="https://popper.js.org/popper-documentation.html#modifiers..flip.behavior">behavior docs</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
@@ -303,6 +309,12 @@ Toggles the ability for an element's tooltip to be shown or hidden.
|
|||||||
|
|
||||||
{% highlight js %}$('#element').tooltip('toggleEnabled'){% endhighlight %}
|
{% highlight js %}$('#element').tooltip('toggleEnabled'){% endhighlight %}
|
||||||
|
|
||||||
|
#### `.tooltip('update')`
|
||||||
|
|
||||||
|
Updates the position of an element's tooltip.
|
||||||
|
|
||||||
|
{% highlight js %}$('#element').tooltip('update'){% endhighlight %}
|
||||||
|
|
||||||
### Events
|
### Events
|
||||||
|
|
||||||
<table class="table table-bordered table-striped table-responsive">
|
<table class="table table-bordered table-striped table-responsive">
|
||||||
|
|||||||
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+4
@@ -20,6 +20,10 @@ html {
|
|||||||
width: device-width;
|
width: device-width;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||||
|
|||||||
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
@@ -1 +1 @@
|
|||||||
html{-webkit-box-sizing:border-box;box-sizing:border-box;font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}*,::after,::before{-webkit-box-sizing:inherit;box-sizing:inherit}@-ms-viewport{width:device-width}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#292b2c;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0275d8;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#014c8c;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}[role=button],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#636c72;text-align:left;caption-side:bottom}th{text-align:left}label{display:inline-block;margin-bottom:.5rem}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}/*# sourceMappingURL=bootstrap-reboot.min.css.map */
|
html{-webkit-box-sizing:border-box;box-sizing:border-box;font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:transparent}*,::after,::before{-webkit-box-sizing:inherit;box-sizing:inherit}@-ms-viewport{width:device-width}article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:1rem;font-weight:400;line-height:1.5;color:#292b2c;background-color:#fff}[tabindex="-1"]:focus{outline:0!important}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;text-decoration:underline dotted;cursor:help;border-bottom:0}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0275d8;text-decoration:none;background-color:transparent;-webkit-text-decoration-skip:objects}a:hover{color:#014c8c;text-decoration:underline}a:not([href]):not([tabindex]){color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus,a:not([href]):not([tabindex]):hover{color:inherit;text-decoration:none}a:not([href]):not([tabindex]):focus{outline:0}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg:not(:root){overflow:hidden}[role=button],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation;touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#636c72;text-align:left;caption-side:bottom}th{text-align:left}label{display:inline-block;margin-bottom:.5rem}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}/*# sourceMappingURL=bootstrap-reboot.min.css.map */
|
||||||
+1
-1
@@ -1 +1 @@
|
|||||||
{"version":3,"sources":["../../scss/_reboot.scss","dist/css/bootstrap-reboot.css","bootstrap-reboot.css","../../scss/mixins/_hover.scss"],"names":[],"mappings":"AAoBA,KACE,mBAAA,WAAA,WAAA,WACA,YAAA,WACA,YAAA,KACA,yBAAA,KACA,qBAAA,KACA,mBAAA,UACA,4BAAA,YAGF,ECjBA,QADA,SDqBE,mBAAA,QAAA,WAAA,QAKA,cAAgB,MAAA,aASlB,KACE,OAAA,EACA,YAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WACA,UAAA,KACA,YAAA,IACA,YAAA,IACA,MAAA,QACA,iBAAA,KExBF,sBFiCE,QAAA,YASF,GACE,mBAAA,YAAA,WAAA,YACA,OAAA,EACA,SAAA,QAYF,GAAA,GAAA,GAAA,GAAA,GAAA,GACE,WAAA,EACA,cAAA,MAOF,EACE,WAAA,EACA,cAAA,KC5CF,0BDsDA,YAEE,gBAAA,UACA,gBAAA,UAAA,OACA,OAAA,KACA,cAAA,EAGF,QACE,cAAA,KACA,WAAA,OACA,YAAA,QClDF,GDqDA,GCtDA,GDyDE,WAAA,EACA,cAAA,KAGF,MCrDA,MACA,MAFA,MD0DE,cAAA,EAGF,GACE,YAAA,IAGF,GACE,cAAA,MACA,YAAA,EAGF,WACE,OAAA,EAAA,EAAA,KAGF,IACE,WAAA,OAGF,ECtDA,ODwDE,YAAA,OAGF,MACE,UAAA,IAQF,IC3DA,ID6DE,SAAA,SACA,UAAA,IACA,YAAA,EACA,eAAA,SAGF,IAAM,OAAA,OACN,IAAM,IAAA,MAON,EACE,MAAA,QACA,gBAAA,KACA,iBAAA,YACA,6BAAA,QGhLE,QHmLA,MAAA,QACA,gBAAA,UAUJ,8BACE,MAAA,QACA,gBAAA,KGrLE,oCAAA,oCHwLA,MAAA,QACA,gBAAA,KANJ,oCAUI,QAAA,EC7DJ,KACA,IDqEA,ICpEA,KDwEE,YAAA,SAAA,CAAA,UACA,UAAA,IAGF,IAEE,WAAA,EAEA,cAAA,KAEA,SAAA,KAQF,OAEE,OAAA,EAAA,EAAA,KAQF,IACE,eAAA,OACA,aAAA,KAGF,eACE,SAAA,OC/EF,cD6FA,EC/FA,KACA,OAEA,MACA,MACA,OACA,QACA,SDiGE,iBAAA,aAAA,aAAA,aAQF,MACE,gBAAA,SAGF,QACE,YAAA,OACA,eAAA,OACA,MAAA,QACA,WAAA,KACA,aAAA,OAGF,GAEE,WAAA,KAQF,MAEE,QAAA,aACA,cAAA,MAOF,aACE,QAAA,IAAA,OACA,QAAA,IAAA,KAAA,yBC3GF,OD8GA,MC5GA,SADA,OAEA,SDgHE,OAAA,EACA,YAAA,QACA,UAAA,QACA,YAAA,QAGF,OC9GA,MDgHE,SAAA,QAGF,OC9GA,ODgHE,eAAA,KC1GF,aACA,cD+GA,OCjHA,mBDqHE,mBAAA,OC9GF,gCACA,+BACA,gCDgHA,yBAIE,QAAA,EACA,aAAA,KC/GF,qBDkHA,kBAEE,mBAAA,WAAA,WAAA,WACA,QAAA,EAIF,iBCjHA,2BACA,kBAFA,iBD2HE,mBAAA,QAGF,SACE,SAAA,KAEA,OAAA,SAGF,SAME,UAAA,EAEA,QAAA,EACA,OAAA,EACA,OAAA,EAKF,OACE,QAAA,MACA,MAAA,KACA,UAAA,KACA,QAAA,EACA,cAAA,MACA,UAAA,OACA,YAAA,QACA,MAAA,QACA,YAAA,OAGF,SACE,eAAA,SEnIF,yCDMA,yCDmIE,OAAA,KEpIF,cF4IE,eAAA,KACA,mBAAA,KExIF,4CDMA,yCD2IE,mBAAA,KAQF,6BACE,KAAA,QACA,mBAAA,OAOF,OACE,QAAA,aAGF,QACE,QAAA,UAGF,SACE,QAAA,KErJF,SF2JE,QAAA"}
|
{"version":3,"sources":["..\\..\\scss\\_reboot.scss","dist\\css\\bootstrap-reboot.css","bootstrap-reboot.css","..\\..\\scss\\mixins\\_hover.scss"],"names":[],"mappings":"AAoBA,KACE,mBAAA,WAAA,WAAA,WACA,YAAA,WACA,YAAA,KACA,yBAAA,KACA,qBAAA,KACA,mBAAA,UACA,4BAAA,YAGF,ECjBA,QADA,SDqBE,mBAAA,QAAA,WAAA,QAKA,cAAgB,MAAA,aAIlB,QAAA,MAAA,OAAA,WAAA,OAAA,OAAA,OAAA,OAAA,KAAA,IAAA,QACE,QAAA,MAQF,KACE,OAAA,EACA,YAAA,aAAA,CAAA,kBAAA,CAAA,UAAA,CAAA,MAAA,CAAA,gBAAA,CAAA,KAAA,CAAA,WACA,UAAA,KACA,YAAA,IACA,YAAA,IACA,MAAA,QACA,iBAAA,KExBF,sBFiCE,QAAA,YASF,GACE,mBAAA,YAAA,WAAA,YACA,OAAA,EACA,SAAA,QAYF,GAAA,GAAA,GAAA,GAAA,GAAA,GACE,WAAA,EACA,cAAA,MAOF,EACE,WAAA,EACA,cAAA,KC5CF,0BDsDA,YAEE,gBAAA,UACA,gBAAA,UAAA,OACA,OAAA,KACA,cAAA,EAGF,QACE,cAAA,KACA,WAAA,OACA,YAAA,QClDF,GDqDA,GCtDA,GDyDE,WAAA,EACA,cAAA,KAGF,MCrDA,MACA,MAFA,MD0DE,cAAA,EAGF,GACE,YAAA,IAGF,GACE,cAAA,MACA,YAAA,EAGF,WACE,OAAA,EAAA,EAAA,KAGF,IACE,WAAA,OAGF,ECtDA,ODwDE,YAAA,OAGF,MACE,UAAA,IAQF,IC3DA,ID6DE,SAAA,SACA,UAAA,IACA,YAAA,EACA,eAAA,SAGF,IAAM,OAAA,OACN,IAAM,IAAA,MAON,EACE,MAAA,QACA,gBAAA,KACA,iBAAA,YACA,6BAAA,QGpLE,QHuLA,MAAA,QACA,gBAAA,UAUJ,8BACE,MAAA,QACA,gBAAA,KGzLE,oCAAA,oCH4LA,MAAA,QACA,gBAAA,KANJ,oCAUI,QAAA,EC7DJ,KACA,IDqEA,ICpEA,KDwEE,YAAA,SAAA,CAAA,UACA,UAAA,IAGF,IAEE,WAAA,EAEA,cAAA,KAEA,SAAA,KAQF,OAEE,OAAA,EAAA,EAAA,KAQF,IACE,eAAA,OACA,aAAA,KAGF,eACE,SAAA,OC/EF,cD6FA,EC/FA,KACA,OAEA,MACA,MACA,OACA,QACA,SDiGE,iBAAA,aAAA,aAAA,aAQF,MACE,gBAAA,SAGF,QACE,YAAA,OACA,eAAA,OACA,MAAA,QACA,WAAA,KACA,aAAA,OAGF,GAEE,WAAA,KAQF,MAEE,QAAA,aACA,cAAA,MAOF,aACE,QAAA,IAAA,OACA,QAAA,IAAA,KAAA,yBC3GF,OD8GA,MC5GA,SADA,OAEA,SDgHE,OAAA,EACA,YAAA,QACA,UAAA,QACA,YAAA,QAGF,OC9GA,MDgHE,SAAA,QAGF,OC9GA,ODgHE,eAAA,KC1GF,aACA,cD+GA,OCjHA,mBDqHE,mBAAA,OC9GF,gCACA,+BACA,gCDgHA,yBAIE,QAAA,EACA,aAAA,KC/GF,qBDkHA,kBAEE,mBAAA,WAAA,WAAA,WACA,QAAA,EAIF,iBCjHA,2BACA,kBAFA,iBD2HE,mBAAA,QAGF,SACE,SAAA,KAEA,OAAA,SAGF,SAME,UAAA,EAEA,QAAA,EACA,OAAA,EACA,OAAA,EAKF,OACE,QAAA,MACA,MAAA,KACA,UAAA,KACA,QAAA,EACA,cAAA,MACA,UAAA,OACA,YAAA,QACA,MAAA,QACA,YAAA,OAGF,SACE,eAAA,SEnIF,yCDMA,yCDmIE,OAAA,KEpIF,cF4IE,eAAA,KACA,mBAAA,KExIF,4CDMA,yCD2IE,mBAAA,KAQF,6BACE,KAAA,QACA,mBAAA,OAOF,OACE,QAAA,aAGF,QACE,QAAA,UAGF,SACE,QAAA,KErJF,SF2JE,QAAA"}
|
||||||
+70
-71
@@ -93,6 +93,10 @@ html {
|
|||||||
width: device-width;
|
width: device-width;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||||
@@ -2887,24 +2891,24 @@ tbody.collapse.show {
|
|||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
}
|
}
|
||||||
|
|
||||||
.show > .dropdown-menu {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.show > a {
|
.show > a {
|
||||||
outline: 0;
|
outline: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropdown-menu-right {
|
.dropdown-menu-right {
|
||||||
right: 0;
|
right: 0;
|
||||||
left: auto;
|
left: auto !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropdown-menu-left {
|
.dropdown-menu-left {
|
||||||
right: auto;
|
right: auto !important;
|
||||||
left: 0;
|
left: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.dropdown-menu.show {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
.dropdown-header {
|
.dropdown-header {
|
||||||
display: block;
|
display: block;
|
||||||
padding: 0.5rem 1.5rem;
|
padding: 0.5rem 1.5rem;
|
||||||
@@ -2914,12 +2918,6 @@ tbody.collapse.show {
|
|||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
.dropup .dropdown-menu {
|
|
||||||
top: auto;
|
|
||||||
bottom: 100%;
|
|
||||||
margin-bottom: 0.125rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn-group,
|
.btn-group,
|
||||||
.btn-group-vertical {
|
.btn-group-vertical {
|
||||||
position: relative;
|
position: relative;
|
||||||
@@ -5210,6 +5208,7 @@ button.close {
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: 1070;
|
z-index: 1070;
|
||||||
display: block;
|
display: block;
|
||||||
|
margin: 0;
|
||||||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
@@ -5233,12 +5232,11 @@ button.close {
|
|||||||
opacity: 0.9;
|
opacity: 0.9;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-top, .tooltip.bs-tether-element-attached-bottom {
|
.tooltip.bs-tooltip-top {
|
||||||
padding: 5px 0;
|
padding: 5px 0;
|
||||||
margin-top: -3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-top .tooltip-inner::before, .tooltip.bs-tether-element-attached-bottom .tooltip-inner::before {
|
.tooltip.bs-tooltip-top .arrow::before {
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
margin-left: -5px;
|
margin-left: -5px;
|
||||||
@@ -5247,12 +5245,11 @@ button.close {
|
|||||||
border-top-color: #000;
|
border-top-color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-right, .tooltip.bs-tether-element-attached-left {
|
.tooltip.bs-tooltip-right {
|
||||||
padding: 0 5px;
|
padding: 0 5px;
|
||||||
margin-left: 3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-right .tooltip-inner::before, .tooltip.bs-tether-element-attached-left .tooltip-inner::before {
|
.tooltip.bs-tooltip-right .arrow::before {
|
||||||
top: 50%;
|
top: 50%;
|
||||||
left: 0;
|
left: 0;
|
||||||
margin-top: -5px;
|
margin-top: -5px;
|
||||||
@@ -5261,12 +5258,11 @@ button.close {
|
|||||||
border-right-color: #000;
|
border-right-color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-bottom, .tooltip.bs-tether-element-attached-top {
|
.tooltip.bs-tooltip-bottom {
|
||||||
padding: 5px 0;
|
padding: 5px 0;
|
||||||
margin-top: 3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-bottom .tooltip-inner::before, .tooltip.bs-tether-element-attached-top .tooltip-inner::before {
|
.tooltip.bs-tooltip-bottom .arrow::before {
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
margin-left: -5px;
|
margin-left: -5px;
|
||||||
@@ -5275,12 +5271,11 @@ button.close {
|
|||||||
border-bottom-color: #000;
|
border-bottom-color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-left, .tooltip.bs-tether-element-attached-right {
|
.tooltip.bs-tooltip-left {
|
||||||
padding: 0 5px;
|
padding: 0 5px;
|
||||||
margin-left: -3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip.tooltip-left .tooltip-inner::before, .tooltip.bs-tether-element-attached-right .tooltip-inner::before {
|
.tooltip.bs-tooltip-left .arrow::before {
|
||||||
top: 50%;
|
top: 50%;
|
||||||
right: 0;
|
right: 0;
|
||||||
margin-top: -5px;
|
margin-top: -5px;
|
||||||
@@ -5289,6 +5284,14 @@ button.close {
|
|||||||
border-left-color: #000;
|
border-left-color: #000;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.tooltip .arrow::before {
|
||||||
|
position: absolute;
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
border-color: transparent;
|
||||||
|
border-style: solid;
|
||||||
|
}
|
||||||
|
|
||||||
.tooltip-inner {
|
.tooltip-inner {
|
||||||
max-width: 200px;
|
max-width: 200px;
|
||||||
padding: 3px 8px;
|
padding: 3px 8px;
|
||||||
@@ -5298,14 +5301,6 @@ button.close {
|
|||||||
border-radius: 0.25rem;
|
border-radius: 0.25rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tooltip-inner::before {
|
|
||||||
position: absolute;
|
|
||||||
width: 0;
|
|
||||||
height: 0;
|
|
||||||
border-color: transparent;
|
|
||||||
border-style: solid;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popover {
|
.popover {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
@@ -5337,70 +5332,93 @@ button.close {
|
|||||||
border-radius: 0.3rem;
|
border-radius: 0.3rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-top, .popover.bs-tether-element-attached-bottom {
|
.popover .arrow::before,
|
||||||
margin-top: -10px;
|
.popover .arrow::after {
|
||||||
|
position: absolute;
|
||||||
|
display: block;
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
border-color: transparent;
|
||||||
|
border-style: solid;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-top::before, .popover.popover-top::after, .popover.bs-tether-element-attached-bottom::before, .popover.bs-tether-element-attached-bottom::after {
|
.popover .arrow::before {
|
||||||
|
content: "";
|
||||||
|
border-width: 11px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover .arrow::after {
|
||||||
|
content: "";
|
||||||
|
border-width: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover.bs-popover-top {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popover.bs-popover-top .arrow::before,
|
||||||
|
.popover.bs-popover-top .arrow::after {
|
||||||
left: 50%;
|
left: 50%;
|
||||||
border-bottom-width: 0;
|
border-bottom-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-top::before, .popover.bs-tether-element-attached-bottom::before {
|
.popover.bs-popover-top .arrow::before {
|
||||||
bottom: -11px;
|
bottom: -11px;
|
||||||
margin-left: -11px;
|
margin-left: -11px;
|
||||||
border-top-color: rgba(0, 0, 0, 0.25);
|
border-top-color: rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-top::after, .popover.bs-tether-element-attached-bottom::after {
|
.popover.bs-popover-top .arrow::after {
|
||||||
bottom: -10px;
|
bottom: -10px;
|
||||||
margin-left: -10px;
|
margin-left: -10px;
|
||||||
border-top-color: #fff;
|
border-top-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-right, .popover.bs-tether-element-attached-left {
|
.popover.bs-popover-right {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-right::before, .popover.popover-right::after, .popover.bs-tether-element-attached-left::before, .popover.bs-tether-element-attached-left::after {
|
.popover.bs-popover-right .arrow::before,
|
||||||
|
.popover.bs-popover-right .arrow::after {
|
||||||
top: 50%;
|
top: 50%;
|
||||||
border-left-width: 0;
|
border-left-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-right::before, .popover.bs-tether-element-attached-left::before {
|
.popover.bs-popover-right .arrow::before {
|
||||||
left: -11px;
|
left: -11px;
|
||||||
margin-top: -11px;
|
margin-top: -11px;
|
||||||
border-right-color: rgba(0, 0, 0, 0.25);
|
border-right-color: rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-right::after, .popover.bs-tether-element-attached-left::after {
|
.popover.bs-popover-right .arrow::after {
|
||||||
left: -10px;
|
left: -10px;
|
||||||
margin-top: -10px;
|
margin-top: -10px;
|
||||||
border-right-color: #fff;
|
border-right-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom, .popover.bs-tether-element-attached-top {
|
.popover.bs-popover-bottom {
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom::before, .popover.popover-bottom::after, .popover.bs-tether-element-attached-top::before, .popover.bs-tether-element-attached-top::after {
|
.popover.bs-popover-bottom .arrow::before,
|
||||||
|
.popover.bs-popover-bottom .arrow::after {
|
||||||
left: 50%;
|
left: 50%;
|
||||||
border-top-width: 0;
|
border-top-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom::before, .popover.bs-tether-element-attached-top::before {
|
.popover.bs-popover-bottom .arrow::before {
|
||||||
top: -11px;
|
top: -11px;
|
||||||
margin-left: -11px;
|
margin-left: -11px;
|
||||||
border-bottom-color: rgba(0, 0, 0, 0.25);
|
border-bottom-color: rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom::after, .popover.bs-tether-element-attached-top::after {
|
.popover.bs-popover-bottom .arrow::after {
|
||||||
top: -10px;
|
top: -10px;
|
||||||
margin-left: -10px;
|
margin-left: -10px;
|
||||||
border-bottom-color: #fff;
|
border-bottom-color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-bottom .popover-title::before, .popover.bs-tether-element-attached-top .popover-title::before {
|
.popover.bs-popover-bottom .popover-title::before {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 50%;
|
left: 50%;
|
||||||
@@ -5411,22 +5429,23 @@ button.close {
|
|||||||
border-bottom: 1px solid #f7f7f7;
|
border-bottom: 1px solid #f7f7f7;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-left, .popover.bs-tether-element-attached-right {
|
.popover.bs-popover-left {
|
||||||
margin-left: -10px;
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-left::before, .popover.popover-left::after, .popover.bs-tether-element-attached-right::before, .popover.bs-tether-element-attached-right::after {
|
.popover.bs-popover-left .arrow::before,
|
||||||
|
.popover.bs-popover-left .arrow::after {
|
||||||
top: 50%;
|
top: 50%;
|
||||||
border-right-width: 0;
|
border-right-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-left::before, .popover.bs-tether-element-attached-right::before {
|
.popover.bs-popover-left .arrow::before {
|
||||||
right: -11px;
|
right: -11px;
|
||||||
margin-top: -11px;
|
margin-top: -11px;
|
||||||
border-left-color: rgba(0, 0, 0, 0.25);
|
border-left-color: rgba(0, 0, 0, 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover.popover-left::after, .popover.bs-tether-element-attached-right::after {
|
.popover.bs-popover-left .arrow::after {
|
||||||
right: -10px;
|
right: -10px;
|
||||||
margin-top: -10px;
|
margin-top: -10px;
|
||||||
border-left-color: #fff;
|
border-left-color: #fff;
|
||||||
@@ -5452,26 +5471,6 @@ button.close {
|
|||||||
color: #292b2c;
|
color: #292b2c;
|
||||||
}
|
}
|
||||||
|
|
||||||
.popover::before,
|
|
||||||
.popover::after {
|
|
||||||
position: absolute;
|
|
||||||
display: block;
|
|
||||||
width: 0;
|
|
||||||
height: 0;
|
|
||||||
border-color: transparent;
|
|
||||||
border-style: solid;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popover::before {
|
|
||||||
content: "";
|
|
||||||
border-width: 11px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popover::after {
|
|
||||||
content: "";
|
|
||||||
border-width: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.carousel {
|
.carousel {
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+307
-174
@@ -438,6 +438,9 @@ var Button = function ($) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (triggerChangeEvent) {
|
if (triggerChangeEvent) {
|
||||||
|
if (input.hasAttribute('disabled') || rootElement.hasAttribute('disabled') || input.classList.contains('disabled') || rootElement.classList.contains('disabled')) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
input.checked = !$(this._element).hasClass(ClassName.ACTIVE);
|
input.checked = !$(this._element).hasClass(ClassName.ACTIVE);
|
||||||
$(input).trigger('change');
|
$(input).trigger('change');
|
||||||
}
|
}
|
||||||
@@ -1086,9 +1089,8 @@ var Collapse = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
var Selector = {
|
var Selector = {
|
||||||
ACTIVES: '.card > .show, .card > .collapsing',
|
ACTIVES: '.show, .collapsing',
|
||||||
DATA_TOGGLE: '[data-toggle="collapse"]',
|
DATA_TOGGLE: '[data-toggle="collapse"]'
|
||||||
DATA_CHILDREN: 'data-children'
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1105,20 +1107,13 @@ var Collapse = function ($) {
|
|||||||
this._element = element;
|
this._element = element;
|
||||||
this._config = this._getConfig(config);
|
this._config = this._getConfig(config);
|
||||||
this._triggerArray = $.makeArray($('[data-toggle="collapse"][href="#' + element.id + '"],' + ('[data-toggle="collapse"][data-target="#' + element.id + '"]')));
|
this._triggerArray = $.makeArray($('[data-toggle="collapse"][href="#' + element.id + '"],' + ('[data-toggle="collapse"][data-target="#' + element.id + '"]')));
|
||||||
|
|
||||||
this._parent = this._config.parent ? this._getParent() : null;
|
this._parent = this._config.parent ? this._getParent() : null;
|
||||||
|
|
||||||
if (!this._config.parent) {
|
if (!this._config.parent) {
|
||||||
this._addAriaAndCollapsedClass(this._element, this._triggerArray);
|
this._addAriaAndCollapsedClass(this._element, this._triggerArray);
|
||||||
}
|
}
|
||||||
|
|
||||||
this._selectorActives = Selector.ACTIVES;
|
|
||||||
if (this._parent) {
|
|
||||||
var childrenSelector = this._parent.hasAttribute(Selector.DATA_CHILDREN) ? this._parent.getAttribute(Selector.DATA_CHILDREN) : null;
|
|
||||||
if (childrenSelector !== null) {
|
|
||||||
this._selectorActives = childrenSelector + ' > .show, ' + childrenSelector + ' > .collapsing';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this._config.toggle) {
|
if (this._config.toggle) {
|
||||||
this.toggle();
|
this.toggle();
|
||||||
}
|
}
|
||||||
@@ -1147,7 +1142,7 @@ var Collapse = function ($) {
|
|||||||
var activesData = void 0;
|
var activesData = void 0;
|
||||||
|
|
||||||
if (this._parent) {
|
if (this._parent) {
|
||||||
actives = $.makeArray($(this._parent).find(this._selectorActives));
|
actives = $.makeArray($(this._parent).children().children(Selector.ACTIVES));
|
||||||
if (!actives.length) {
|
if (!actives.length) {
|
||||||
actives = null;
|
actives = null;
|
||||||
}
|
}
|
||||||
@@ -1381,6 +1376,8 @@ var Collapse = function ($) {
|
|||||||
return Collapse;
|
return Collapse;
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
|
/* global Popper */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
* Bootstrap (v4.0.0-alpha.6): dropdown.js
|
* Bootstrap (v4.0.0-alpha.6): dropdown.js
|
||||||
@@ -1390,6 +1387,14 @@ var Collapse = function ($) {
|
|||||||
|
|
||||||
var Dropdown = function ($) {
|
var Dropdown = function ($) {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check for Popper dependency
|
||||||
|
* Popper - https://popper.js.org
|
||||||
|
*/
|
||||||
|
if (typeof Popper === 'undefined') {
|
||||||
|
throw new Error('Bootstrap dropdown require Popper.js (https://popper.js.org)');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
* Constants
|
* Constants
|
||||||
@@ -1434,6 +1439,23 @@ var Dropdown = function ($) {
|
|||||||
VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled)'
|
VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled)'
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var AttachmentMap = {
|
||||||
|
TOP: 'top-start',
|
||||||
|
BOTTOM: 'bottom-start'
|
||||||
|
};
|
||||||
|
|
||||||
|
var Default = {
|
||||||
|
placement: AttachmentMap.BOTTOM,
|
||||||
|
offset: 0,
|
||||||
|
flip: true
|
||||||
|
};
|
||||||
|
|
||||||
|
var DefaultType = {
|
||||||
|
placement: 'string',
|
||||||
|
offset: '(number|string)',
|
||||||
|
flip: 'boolean'
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
* Class Definition
|
* Class Definition
|
||||||
@@ -1441,10 +1463,13 @@ var Dropdown = function ($) {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var Dropdown = function () {
|
var Dropdown = function () {
|
||||||
function Dropdown(element) {
|
function Dropdown(element, config) {
|
||||||
_classCallCheck(this, Dropdown);
|
_classCallCheck(this, Dropdown);
|
||||||
|
|
||||||
this._element = element;
|
this._element = element;
|
||||||
|
this._popper = null;
|
||||||
|
this._config = this._getConfig(config);
|
||||||
|
this._menu = this._getMenuElement();
|
||||||
|
|
||||||
this._addEventListeners();
|
this._addEventListeners();
|
||||||
}
|
}
|
||||||
@@ -1454,30 +1479,44 @@ var Dropdown = function ($) {
|
|||||||
// public
|
// public
|
||||||
|
|
||||||
Dropdown.prototype.toggle = function toggle() {
|
Dropdown.prototype.toggle = function toggle() {
|
||||||
if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {
|
if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {
|
||||||
return false;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var parent = Dropdown._getParentFromElement(this);
|
var parent = Dropdown._getParentFromElement(this._element);
|
||||||
var isActive = $(parent).hasClass(ClassName.SHOW);
|
var isActive = $(this._menu).hasClass(ClassName.SHOW);
|
||||||
|
|
||||||
Dropdown._clearMenus();
|
Dropdown._clearMenus();
|
||||||
|
|
||||||
if (isActive) {
|
if (isActive) {
|
||||||
return false;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var relatedTarget = {
|
var relatedTarget = {
|
||||||
relatedTarget: this
|
relatedTarget: this._element
|
||||||
};
|
};
|
||||||
var showEvent = $.Event(Event.SHOW, relatedTarget);
|
var showEvent = $.Event(Event.SHOW, relatedTarget);
|
||||||
|
|
||||||
$(parent).trigger(showEvent);
|
$(parent).trigger(showEvent);
|
||||||
|
|
||||||
if (showEvent.isDefaultPrevented()) {
|
if (showEvent.isDefaultPrevented()) {
|
||||||
return false;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Handle dropup
|
||||||
|
var dropdownPlacement = $(this._element).parent().hasClass('dropup') ? AttachmentMap.TOP : this._config.placement;
|
||||||
|
this._popper = new Popper(this._element, this._menu, {
|
||||||
|
placement: dropdownPlacement,
|
||||||
|
modifiers: {
|
||||||
|
offset: {
|
||||||
|
offset: this._config.offset
|
||||||
|
},
|
||||||
|
flip: {
|
||||||
|
enabled: this._config.flip
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// if this is a touch-enabled device we add extra
|
// if this is a touch-enabled device we add extra
|
||||||
// empty mouseover listeners to the body's immediate children;
|
// empty mouseover listeners to the body's immediate children;
|
||||||
// only needed because of broken event delegation on iOS
|
// only needed because of broken event delegation on iOS
|
||||||
@@ -1486,25 +1525,61 @@ var Dropdown = function ($) {
|
|||||||
$('body').children().on('mouseover', null, $.noop);
|
$('body').children().on('mouseover', null, $.noop);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.focus();
|
this._element.focus();
|
||||||
this.setAttribute('aria-expanded', true);
|
this._element.setAttribute('aria-expanded', true);
|
||||||
|
|
||||||
$(parent).toggleClass(ClassName.SHOW);
|
$(this._menu).toggleClass(ClassName.SHOW);
|
||||||
$(parent).trigger($.Event(Event.SHOWN, relatedTarget));
|
$(parent).toggleClass(ClassName.SHOW).trigger($.Event(Event.SHOWN, relatedTarget));
|
||||||
|
|
||||||
return false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Dropdown.prototype.dispose = function dispose() {
|
Dropdown.prototype.dispose = function dispose() {
|
||||||
$.removeData(this._element, DATA_KEY);
|
$.removeData(this._element, DATA_KEY);
|
||||||
$(this._element).off(EVENT_KEY);
|
$(this._element).off(EVENT_KEY);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
|
this._menu = null;
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.destroy();
|
||||||
|
}
|
||||||
|
this._popper = null;
|
||||||
|
};
|
||||||
|
|
||||||
|
Dropdown.prototype.update = function update() {
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.scheduleUpdate();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
// private
|
// private
|
||||||
|
|
||||||
Dropdown.prototype._addEventListeners = function _addEventListeners() {
|
Dropdown.prototype._addEventListeners = function _addEventListeners() {
|
||||||
$(this._element).on(Event.CLICK, this.toggle);
|
var _this9 = this;
|
||||||
|
|
||||||
|
$(this._element).on(Event.CLICK, function (event) {
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
_this9.toggle();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
Dropdown.prototype._getConfig = function _getConfig(config) {
|
||||||
|
var elementData = $(this._element).data();
|
||||||
|
if (elementData.placement !== undefined) {
|
||||||
|
elementData.placement = AttachmentMap[elementData.placement.toUpperCase()];
|
||||||
|
}
|
||||||
|
|
||||||
|
config = $.extend({}, this.constructor.Default, $(this._element).data(), config);
|
||||||
|
|
||||||
|
Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
|
||||||
|
|
||||||
|
return config;
|
||||||
|
};
|
||||||
|
|
||||||
|
Dropdown.prototype._getMenuElement = function _getMenuElement() {
|
||||||
|
if (!this._menu) {
|
||||||
|
var parent = Dropdown._getParentFromElement(this._element);
|
||||||
|
this._menu = $(parent).find(Selector.MENU)[0];
|
||||||
|
}
|
||||||
|
return this._menu;
|
||||||
};
|
};
|
||||||
|
|
||||||
// static
|
// static
|
||||||
@@ -1512,9 +1587,10 @@ var Dropdown = function ($) {
|
|||||||
Dropdown._jQueryInterface = function _jQueryInterface(config) {
|
Dropdown._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
var data = $(this).data(DATA_KEY);
|
var data = $(this).data(DATA_KEY);
|
||||||
|
var _config = (typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object' ? config : null;
|
||||||
|
|
||||||
if (!data) {
|
if (!data) {
|
||||||
data = new Dropdown(this);
|
data = new Dropdown(this, _config);
|
||||||
$(this).data(DATA_KEY, data);
|
$(this).data(DATA_KEY, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1522,7 +1598,7 @@ var Dropdown = function ($) {
|
|||||||
if (data[config] === undefined) {
|
if (data[config] === undefined) {
|
||||||
throw new Error('No method named "' + config + '"');
|
throw new Error('No method named "' + config + '"');
|
||||||
}
|
}
|
||||||
data[config].call(this);
|
data[config]();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -1533,13 +1609,18 @@ var Dropdown = function ($) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var toggles = $.makeArray($(Selector.DATA_TOGGLE));
|
var toggles = $.makeArray($(Selector.DATA_TOGGLE));
|
||||||
|
|
||||||
for (var i = 0; i < toggles.length; i++) {
|
for (var i = 0; i < toggles.length; i++) {
|
||||||
var parent = Dropdown._getParentFromElement(toggles[i]);
|
var parent = Dropdown._getParentFromElement(toggles[i]);
|
||||||
|
var context = $(toggles[i]).data(DATA_KEY);
|
||||||
var relatedTarget = {
|
var relatedTarget = {
|
||||||
relatedTarget: toggles[i]
|
relatedTarget: toggles[i]
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (!context) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
var dropdownMenu = context._menu;
|
||||||
if (!$(parent).hasClass(ClassName.SHOW)) {
|
if (!$(parent).hasClass(ClassName.SHOW)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -1562,6 +1643,7 @@ var Dropdown = function ($) {
|
|||||||
|
|
||||||
toggles[i].setAttribute('aria-expanded', 'false');
|
toggles[i].setAttribute('aria-expanded', 'false');
|
||||||
|
|
||||||
|
$(dropdownMenu).removeClass(ClassName.SHOW);
|
||||||
$(parent).removeClass(ClassName.SHOW).trigger($.Event(Event.HIDDEN, relatedTarget));
|
$(parent).removeClass(ClassName.SHOW).trigger($.Event(Event.HIDDEN, relatedTarget));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -1633,6 +1715,16 @@ var Dropdown = function ($) {
|
|||||||
get: function get() {
|
get: function get() {
|
||||||
return VERSION;
|
return VERSION;
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
key: 'Default',
|
||||||
|
get: function get() {
|
||||||
|
return Default;
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'DefaultType',
|
||||||
|
get: function get() {
|
||||||
|
return DefaultType;
|
||||||
|
}
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
return Dropdown;
|
return Dropdown;
|
||||||
@@ -1644,7 +1736,11 @@ var Dropdown = function ($) {
|
|||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
$(document).on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler).on(Event.CLICK_DATA_API + ' ' + Event.KEYUP_DATA_API, Dropdown._clearMenus).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, Dropdown.prototype.toggle).on(Event.CLICK_DATA_API, Selector.FORM_CHILD, function (e) {
|
$(document).on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler).on(Event.CLICK_DATA_API + ' ' + Event.KEYUP_DATA_API, Dropdown._clearMenus).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
Dropdown._jQueryInterface.call($(this), 'toggle');
|
||||||
|
}).on(Event.CLICK_DATA_API, Selector.FORM_CHILD, function (e) {
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -1763,7 +1859,7 @@ var Modal = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype.show = function show(relatedTarget) {
|
Modal.prototype.show = function show(relatedTarget) {
|
||||||
var _this9 = this;
|
var _this10 = this;
|
||||||
|
|
||||||
if (this._isTransitioning) {
|
if (this._isTransitioning) {
|
||||||
return;
|
return;
|
||||||
@@ -1794,24 +1890,24 @@ var Modal = function ($) {
|
|||||||
this._setResizeEvent();
|
this._setResizeEvent();
|
||||||
|
|
||||||
$(this._element).on(Event.CLICK_DISMISS, Selector.DATA_DISMISS, function (event) {
|
$(this._element).on(Event.CLICK_DISMISS, Selector.DATA_DISMISS, function (event) {
|
||||||
return _this9.hide(event);
|
return _this10.hide(event);
|
||||||
});
|
});
|
||||||
|
|
||||||
$(this._dialog).on(Event.MOUSEDOWN_DISMISS, function () {
|
$(this._dialog).on(Event.MOUSEDOWN_DISMISS, function () {
|
||||||
$(_this9._element).one(Event.MOUSEUP_DISMISS, function (event) {
|
$(_this10._element).one(Event.MOUSEUP_DISMISS, function (event) {
|
||||||
if ($(event.target).is(_this9._element)) {
|
if ($(event.target).is(_this10._element)) {
|
||||||
_this9._ignoreBackdropClick = true;
|
_this10._ignoreBackdropClick = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
this._showBackdrop(function () {
|
this._showBackdrop(function () {
|
||||||
return _this9._showElement(relatedTarget);
|
return _this10._showElement(relatedTarget);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype.hide = function hide(event) {
|
Modal.prototype.hide = function hide(event) {
|
||||||
var _this10 = this;
|
var _this11 = this;
|
||||||
|
|
||||||
if (event) {
|
if (event) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
@@ -1850,7 +1946,7 @@ var Modal = function ($) {
|
|||||||
if (transition) {
|
if (transition) {
|
||||||
|
|
||||||
$(this._element).one(Util.TRANSITION_END, function (event) {
|
$(this._element).one(Util.TRANSITION_END, function (event) {
|
||||||
return _this10._hideModal(event);
|
return _this11._hideModal(event);
|
||||||
}).emulateTransitionEnd(TRANSITION_DURATION);
|
}).emulateTransitionEnd(TRANSITION_DURATION);
|
||||||
} else {
|
} else {
|
||||||
this._hideModal();
|
this._hideModal();
|
||||||
@@ -1885,7 +1981,7 @@ var Modal = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype._showElement = function _showElement(relatedTarget) {
|
Modal.prototype._showElement = function _showElement(relatedTarget) {
|
||||||
var _this11 = this;
|
var _this12 = this;
|
||||||
|
|
||||||
var transition = Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE);
|
var transition = Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE);
|
||||||
|
|
||||||
@@ -1913,11 +2009,11 @@ var Modal = function ($) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
var transitionComplete = function transitionComplete() {
|
var transitionComplete = function transitionComplete() {
|
||||||
if (_this11._config.focus) {
|
if (_this12._config.focus) {
|
||||||
_this11._element.focus();
|
_this12._element.focus();
|
||||||
}
|
}
|
||||||
_this11._isTransitioning = false;
|
_this12._isTransitioning = false;
|
||||||
$(_this11._element).trigger(shownEvent);
|
$(_this12._element).trigger(shownEvent);
|
||||||
};
|
};
|
||||||
|
|
||||||
if (transition) {
|
if (transition) {
|
||||||
@@ -1928,24 +2024,24 @@ var Modal = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype._enforceFocus = function _enforceFocus() {
|
Modal.prototype._enforceFocus = function _enforceFocus() {
|
||||||
var _this12 = this;
|
var _this13 = this;
|
||||||
|
|
||||||
$(document).off(Event.FOCUSIN) // guard against infinite focus loop
|
$(document).off(Event.FOCUSIN) // guard against infinite focus loop
|
||||||
.on(Event.FOCUSIN, function (event) {
|
.on(Event.FOCUSIN, function (event) {
|
||||||
if (document !== event.target && _this12._element !== event.target && !$(_this12._element).has(event.target).length) {
|
if (document !== event.target && _this13._element !== event.target && !$(_this13._element).has(event.target).length) {
|
||||||
_this12._element.focus();
|
_this13._element.focus();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype._setEscapeEvent = function _setEscapeEvent() {
|
Modal.prototype._setEscapeEvent = function _setEscapeEvent() {
|
||||||
var _this13 = this;
|
var _this14 = this;
|
||||||
|
|
||||||
if (this._isShown && this._config.keyboard) {
|
if (this._isShown && this._config.keyboard) {
|
||||||
$(this._element).on(Event.KEYDOWN_DISMISS, function (event) {
|
$(this._element).on(Event.KEYDOWN_DISMISS, function (event) {
|
||||||
if (event.which === ESCAPE_KEYCODE) {
|
if (event.which === ESCAPE_KEYCODE) {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
_this13.hide();
|
_this14.hide();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else if (!this._isShown) {
|
} else if (!this._isShown) {
|
||||||
@@ -1954,11 +2050,11 @@ var Modal = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype._setResizeEvent = function _setResizeEvent() {
|
Modal.prototype._setResizeEvent = function _setResizeEvent() {
|
||||||
var _this14 = this;
|
var _this15 = this;
|
||||||
|
|
||||||
if (this._isShown) {
|
if (this._isShown) {
|
||||||
$(window).on(Event.RESIZE, function (event) {
|
$(window).on(Event.RESIZE, function (event) {
|
||||||
return _this14.handleUpdate(event);
|
return _this15.handleUpdate(event);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
$(window).off(Event.RESIZE);
|
$(window).off(Event.RESIZE);
|
||||||
@@ -1966,16 +2062,16 @@ var Modal = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype._hideModal = function _hideModal() {
|
Modal.prototype._hideModal = function _hideModal() {
|
||||||
var _this15 = this;
|
var _this16 = this;
|
||||||
|
|
||||||
this._element.style.display = 'none';
|
this._element.style.display = 'none';
|
||||||
this._element.setAttribute('aria-hidden', true);
|
this._element.setAttribute('aria-hidden', true);
|
||||||
this._isTransitioning = false;
|
this._isTransitioning = false;
|
||||||
this._showBackdrop(function () {
|
this._showBackdrop(function () {
|
||||||
$(document.body).removeClass(ClassName.OPEN);
|
$(document.body).removeClass(ClassName.OPEN);
|
||||||
_this15._resetAdjustments();
|
_this16._resetAdjustments();
|
||||||
_this15._resetScrollbar();
|
_this16._resetScrollbar();
|
||||||
$(_this15._element).trigger(Event.HIDDEN);
|
$(_this16._element).trigger(Event.HIDDEN);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -1987,7 +2083,7 @@ var Modal = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype._showBackdrop = function _showBackdrop(callback) {
|
Modal.prototype._showBackdrop = function _showBackdrop(callback) {
|
||||||
var _this16 = this;
|
var _this17 = this;
|
||||||
|
|
||||||
var animate = $(this._element).hasClass(ClassName.FADE) ? ClassName.FADE : '';
|
var animate = $(this._element).hasClass(ClassName.FADE) ? ClassName.FADE : '';
|
||||||
|
|
||||||
@@ -2004,17 +2100,17 @@ var Modal = function ($) {
|
|||||||
$(this._backdrop).appendTo(document.body);
|
$(this._backdrop).appendTo(document.body);
|
||||||
|
|
||||||
$(this._element).on(Event.CLICK_DISMISS, function (event) {
|
$(this._element).on(Event.CLICK_DISMISS, function (event) {
|
||||||
if (_this16._ignoreBackdropClick) {
|
if (_this17._ignoreBackdropClick) {
|
||||||
_this16._ignoreBackdropClick = false;
|
_this17._ignoreBackdropClick = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (event.target !== event.currentTarget) {
|
if (event.target !== event.currentTarget) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (_this16._config.backdrop === 'static') {
|
if (_this17._config.backdrop === 'static') {
|
||||||
_this16._element.focus();
|
_this17._element.focus();
|
||||||
} else {
|
} else {
|
||||||
_this16.hide();
|
_this17.hide();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -2038,7 +2134,7 @@ var Modal = function ($) {
|
|||||||
$(this._backdrop).removeClass(ClassName.SHOW);
|
$(this._backdrop).removeClass(ClassName.SHOW);
|
||||||
|
|
||||||
var callbackRemove = function callbackRemove() {
|
var callbackRemove = function callbackRemove() {
|
||||||
_this16._removeBackdrop();
|
_this17._removeBackdrop();
|
||||||
if (callback) {
|
if (callback) {
|
||||||
callback();
|
callback();
|
||||||
}
|
}
|
||||||
@@ -2082,7 +2178,7 @@ var Modal = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Modal.prototype._setScrollbar = function _setScrollbar() {
|
Modal.prototype._setScrollbar = function _setScrollbar() {
|
||||||
var _this17 = this;
|
var _this18 = this;
|
||||||
|
|
||||||
if (this._isBodyOverflowing) {
|
if (this._isBodyOverflowing) {
|
||||||
// Note: DOMNode.style.paddingRight returns the actual value or '' if not set
|
// Note: DOMNode.style.paddingRight returns the actual value or '' if not set
|
||||||
@@ -2092,14 +2188,14 @@ var Modal = function ($) {
|
|||||||
$(Selector.FIXED_CONTENT).each(function (index, element) {
|
$(Selector.FIXED_CONTENT).each(function (index, element) {
|
||||||
var actualPadding = $(element)[0].style.paddingRight;
|
var actualPadding = $(element)[0].style.paddingRight;
|
||||||
var calculatedPadding = $(element).css('padding-right');
|
var calculatedPadding = $(element).css('padding-right');
|
||||||
$(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this17._scrollbarWidth + 'px');
|
$(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this18._scrollbarWidth + 'px');
|
||||||
});
|
});
|
||||||
|
|
||||||
// Adjust navbar-toggler margin
|
// Adjust navbar-toggler margin
|
||||||
$(Selector.NAVBAR_TOGGLER).each(function (index, element) {
|
$(Selector.NAVBAR_TOGGLER).each(function (index, element) {
|
||||||
var actualMargin = $(element)[0].style.marginRight;
|
var actualMargin = $(element)[0].style.marginRight;
|
||||||
var calculatedMargin = $(element).css('margin-right');
|
var calculatedMargin = $(element).css('margin-right');
|
||||||
$(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) + _this17._scrollbarWidth + 'px');
|
$(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) + _this18._scrollbarWidth + 'px');
|
||||||
});
|
});
|
||||||
|
|
||||||
// Adjust body padding
|
// Adjust body padding
|
||||||
@@ -2188,7 +2284,7 @@ var Modal = function ($) {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
|
$(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
|
||||||
var _this18 = this;
|
var _this19 = this;
|
||||||
|
|
||||||
var target = void 0;
|
var target = void 0;
|
||||||
var selector = Util.getSelectorFromElement(this);
|
var selector = Util.getSelectorFromElement(this);
|
||||||
@@ -2210,8 +2306,8 @@ var Modal = function ($) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$target.one(Event.HIDDEN, function () {
|
$target.one(Event.HIDDEN, function () {
|
||||||
if ($(_this18).is(':visible')) {
|
if ($(_this19).is(':visible')) {
|
||||||
_this18.focus();
|
_this19.focus();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -2305,7 +2401,7 @@ var ScrollSpy = function ($) {
|
|||||||
|
|
||||||
var ScrollSpy = function () {
|
var ScrollSpy = function () {
|
||||||
function ScrollSpy(element, config) {
|
function ScrollSpy(element, config) {
|
||||||
var _this19 = this;
|
var _this20 = this;
|
||||||
|
|
||||||
_classCallCheck(this, ScrollSpy);
|
_classCallCheck(this, ScrollSpy);
|
||||||
|
|
||||||
@@ -2319,7 +2415,7 @@ var ScrollSpy = function ($) {
|
|||||||
this._scrollHeight = 0;
|
this._scrollHeight = 0;
|
||||||
|
|
||||||
$(this._scrollElement).on(Event.SCROLL, function (event) {
|
$(this._scrollElement).on(Event.SCROLL, function (event) {
|
||||||
return _this19._process(event);
|
return _this20._process(event);
|
||||||
});
|
});
|
||||||
|
|
||||||
this.refresh();
|
this.refresh();
|
||||||
@@ -2331,7 +2427,7 @@ var ScrollSpy = function ($) {
|
|||||||
// public
|
// public
|
||||||
|
|
||||||
ScrollSpy.prototype.refresh = function refresh() {
|
ScrollSpy.prototype.refresh = function refresh() {
|
||||||
var _this20 = this;
|
var _this21 = this;
|
||||||
|
|
||||||
var autoMethod = this._scrollElement !== this._scrollElement.window ? OffsetMethod.POSITION : OffsetMethod.OFFSET;
|
var autoMethod = this._scrollElement !== this._scrollElement.window ? OffsetMethod.POSITION : OffsetMethod.OFFSET;
|
||||||
|
|
||||||
@@ -2367,8 +2463,8 @@ var ScrollSpy = function ($) {
|
|||||||
}).sort(function (a, b) {
|
}).sort(function (a, b) {
|
||||||
return a[0] - b[0];
|
return a[0] - b[0];
|
||||||
}).forEach(function (item) {
|
}).forEach(function (item) {
|
||||||
_this20._offsets.push(item[0]);
|
_this21._offsets.push(item[0]);
|
||||||
_this20._targets.push(item[1]);
|
_this21._targets.push(item[1]);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -2615,7 +2711,7 @@ var Tab = function ($) {
|
|||||||
// public
|
// public
|
||||||
|
|
||||||
Tab.prototype.show = function show() {
|
Tab.prototype.show = function show() {
|
||||||
var _this21 = this;
|
var _this22 = this;
|
||||||
|
|
||||||
if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName.ACTIVE) || $(this._element).hasClass(ClassName.DISABLED)) {
|
if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName.ACTIVE) || $(this._element).hasClass(ClassName.DISABLED)) {
|
||||||
return;
|
return;
|
||||||
@@ -2657,7 +2753,7 @@ var Tab = function ($) {
|
|||||||
|
|
||||||
var complete = function complete() {
|
var complete = function complete() {
|
||||||
var hiddenEvent = $.Event(Event.HIDDEN, {
|
var hiddenEvent = $.Event(Event.HIDDEN, {
|
||||||
relatedTarget: _this21._element
|
relatedTarget: _this22._element
|
||||||
});
|
});
|
||||||
|
|
||||||
var shownEvent = $.Event(Event.SHOWN, {
|
var shownEvent = $.Event(Event.SHOWN, {
|
||||||
@@ -2665,7 +2761,7 @@ var Tab = function ($) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
$(previous).trigger(hiddenEvent);
|
$(previous).trigger(hiddenEvent);
|
||||||
$(_this21._element).trigger(shownEvent);
|
$(_this22._element).trigger(shownEvent);
|
||||||
};
|
};
|
||||||
|
|
||||||
if (target) {
|
if (target) {
|
||||||
@@ -2676,20 +2772,20 @@ var Tab = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Tab.prototype.dispose = function dispose() {
|
Tab.prototype.dispose = function dispose() {
|
||||||
$.removeClass(this._element, DATA_KEY);
|
$.removeData(this._element, DATA_KEY);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
// private
|
// private
|
||||||
|
|
||||||
Tab.prototype._activate = function _activate(element, container, callback) {
|
Tab.prototype._activate = function _activate(element, container, callback) {
|
||||||
var _this22 = this;
|
var _this23 = this;
|
||||||
|
|
||||||
var active = $(container).find(Selector.ACTIVE)[0];
|
var active = $(container).find(Selector.ACTIVE)[0];
|
||||||
var isTransitioning = callback && Util.supportsTransitionEnd() && active && $(active).hasClass(ClassName.FADE);
|
var isTransitioning = callback && Util.supportsTransitionEnd() && active && $(active).hasClass(ClassName.FADE);
|
||||||
|
|
||||||
var complete = function complete() {
|
var complete = function complete() {
|
||||||
return _this22._transitionComplete(element, active, isTransitioning, callback);
|
return _this23._transitionComplete(element, active, isTransitioning, callback);
|
||||||
};
|
};
|
||||||
|
|
||||||
if (active && isTransitioning) {
|
if (active && isTransitioning) {
|
||||||
@@ -2799,7 +2895,7 @@ var Tab = function ($) {
|
|||||||
return Tab;
|
return Tab;
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* global Tether */
|
/* global Popper */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --------------------------------------------------------------------------
|
* --------------------------------------------------------------------------
|
||||||
@@ -2811,11 +2907,11 @@ var Tab = function ($) {
|
|||||||
var Tooltip = function ($) {
|
var Tooltip = function ($) {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check for Tether dependency
|
* Check for Popper dependency
|
||||||
* Tether - http://tether.io/
|
* Popper - https://popper.js.org
|
||||||
*/
|
*/
|
||||||
if (typeof Tether === 'undefined') {
|
if (typeof Popper === 'undefined') {
|
||||||
throw new Error('Bootstrap tooltips require Tether (http://tether.io/)');
|
throw new Error('Bootstrap tooltips require Popper.js (https://popper.js.org)');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -2830,22 +2926,8 @@ var Tooltip = function ($) {
|
|||||||
var EVENT_KEY = '.' + DATA_KEY;
|
var EVENT_KEY = '.' + DATA_KEY;
|
||||||
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
||||||
var TRANSITION_DURATION = 150;
|
var TRANSITION_DURATION = 150;
|
||||||
var CLASS_PREFIX = 'bs-tether';
|
var CLASS_PREFIX = 'bs-tooltip';
|
||||||
var TETHER_PREFIX_REGEX = new RegExp('(^|\\s)' + CLASS_PREFIX + '\\S+', 'g');
|
var BSCLS_PREFIX_REGEX = new RegExp('(^|\\s)' + CLASS_PREFIX + '\\S+', 'g');
|
||||||
|
|
||||||
var Default = {
|
|
||||||
animation: true,
|
|
||||||
template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-inner"></div></div>',
|
|
||||||
trigger: 'hover focus',
|
|
||||||
title: '',
|
|
||||||
delay: 0,
|
|
||||||
html: false,
|
|
||||||
selector: false,
|
|
||||||
placement: 'top',
|
|
||||||
offset: '0 0',
|
|
||||||
constraints: [],
|
|
||||||
container: false
|
|
||||||
};
|
|
||||||
|
|
||||||
var DefaultType = {
|
var DefaultType = {
|
||||||
animation: 'boolean',
|
animation: 'boolean',
|
||||||
@@ -2856,16 +2938,30 @@ var Tooltip = function ($) {
|
|||||||
html: 'boolean',
|
html: 'boolean',
|
||||||
selector: '(string|boolean)',
|
selector: '(string|boolean)',
|
||||||
placement: '(string|function)',
|
placement: '(string|function)',
|
||||||
offset: 'string',
|
offset: '(number|string)',
|
||||||
constraints: 'array',
|
container: '(string|element|boolean)',
|
||||||
container: '(string|element|boolean)'
|
fallbackPlacement: '(string|array)'
|
||||||
};
|
};
|
||||||
|
|
||||||
var AttachmentMap = {
|
var AttachmentMap = {
|
||||||
TOP: 'bottom center',
|
TOP: 'top',
|
||||||
RIGHT: 'middle left',
|
RIGHT: 'right',
|
||||||
BOTTOM: 'top center',
|
BOTTOM: 'bottom',
|
||||||
LEFT: 'middle right'
|
LEFT: 'left'
|
||||||
|
};
|
||||||
|
|
||||||
|
var Default = {
|
||||||
|
animation: true,
|
||||||
|
template: '<div class="tooltip" role="tooltip">' + '<div class="arrow"></div>' + '<div class="tooltip-inner"></div></div>',
|
||||||
|
trigger: 'hover focus',
|
||||||
|
title: '',
|
||||||
|
delay: 0,
|
||||||
|
html: false,
|
||||||
|
selector: false,
|
||||||
|
placement: 'top',
|
||||||
|
offset: 0,
|
||||||
|
container: false,
|
||||||
|
fallbackPlacement: 'flip'
|
||||||
};
|
};
|
||||||
|
|
||||||
var HoverState = {
|
var HoverState = {
|
||||||
@@ -2896,11 +2992,6 @@ var Tooltip = function ($) {
|
|||||||
TOOLTIP_INNER: '.tooltip-inner'
|
TOOLTIP_INNER: '.tooltip-inner'
|
||||||
};
|
};
|
||||||
|
|
||||||
var TetherClass = {
|
|
||||||
element: false,
|
|
||||||
enabled: false
|
|
||||||
};
|
|
||||||
|
|
||||||
var Trigger = {
|
var Trigger = {
|
||||||
HOVER: 'hover',
|
HOVER: 'hover',
|
||||||
FOCUS: 'focus',
|
FOCUS: 'focus',
|
||||||
@@ -2923,7 +3014,7 @@ var Tooltip = function ($) {
|
|||||||
this._timeout = 0;
|
this._timeout = 0;
|
||||||
this._hoverState = '';
|
this._hoverState = '';
|
||||||
this._activeTrigger = {};
|
this._activeTrigger = {};
|
||||||
this._tether = null;
|
this._popper = null;
|
||||||
|
|
||||||
// protected
|
// protected
|
||||||
this.element = element;
|
this.element = element;
|
||||||
@@ -2980,8 +3071,6 @@ var Tooltip = function ($) {
|
|||||||
Tooltip.prototype.dispose = function dispose() {
|
Tooltip.prototype.dispose = function dispose() {
|
||||||
clearTimeout(this._timeout);
|
clearTimeout(this._timeout);
|
||||||
|
|
||||||
this.cleanupTether();
|
|
||||||
|
|
||||||
$.removeData(this.element, this.constructor.DATA_KEY);
|
$.removeData(this.element, this.constructor.DATA_KEY);
|
||||||
|
|
||||||
$(this.element).off(this.constructor.EVENT_KEY);
|
$(this.element).off(this.constructor.EVENT_KEY);
|
||||||
@@ -2995,7 +3084,10 @@ var Tooltip = function ($) {
|
|||||||
this._timeout = null;
|
this._timeout = null;
|
||||||
this._hoverState = null;
|
this._hoverState = null;
|
||||||
this._activeTrigger = null;
|
this._activeTrigger = null;
|
||||||
this._tether = null;
|
if (this._popper !== null) {
|
||||||
|
this._popper.destroy();
|
||||||
|
}
|
||||||
|
this._popper = null;
|
||||||
|
|
||||||
this.element = null;
|
this.element = null;
|
||||||
this.config = null;
|
this.config = null;
|
||||||
@@ -3003,7 +3095,7 @@ var Tooltip = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype.show = function show() {
|
Tooltip.prototype.show = function show() {
|
||||||
var _this23 = this;
|
var _this24 = this;
|
||||||
|
|
||||||
if ($(this.element).css('display') === 'none') {
|
if ($(this.element).css('display') === 'none') {
|
||||||
throw new Error('Please use show on visible elements');
|
throw new Error('Please use show on visible elements');
|
||||||
@@ -3034,6 +3126,7 @@ var Tooltip = function ($) {
|
|||||||
var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
|
var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
|
||||||
|
|
||||||
var attachment = this._getAttachment(placement);
|
var attachment = this._getAttachment(placement);
|
||||||
|
this.addAttachmentClass(attachment);
|
||||||
|
|
||||||
var container = this.config.container === false ? document.body : $(this.config.container);
|
var container = this.config.container === false ? document.body : $(this.config.container);
|
||||||
|
|
||||||
@@ -3045,20 +3138,26 @@ var Tooltip = function ($) {
|
|||||||
|
|
||||||
$(this.element).trigger(this.constructor.Event.INSERTED);
|
$(this.element).trigger(this.constructor.Event.INSERTED);
|
||||||
|
|
||||||
this._tether = new Tether({
|
this._popper = new Popper(this.element, tip, {
|
||||||
attachment: attachment,
|
placement: attachment,
|
||||||
element: tip,
|
modifiers: {
|
||||||
target: this.element,
|
offset: {
|
||||||
classes: TetherClass,
|
offset: this.config.offset
|
||||||
classPrefix: CLASS_PREFIX,
|
},
|
||||||
offset: this.config.offset,
|
flip: {
|
||||||
constraints: this.config.constraints,
|
behavior: this.config.fallbackPlacement
|
||||||
addTargetClasses: false
|
}
|
||||||
|
},
|
||||||
|
onCreate: function onCreate(data) {
|
||||||
|
if (data.originalPlacement !== data.placement) {
|
||||||
|
_this24._handlePopperPlacementChange(data);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onUpdate: function onUpdate(data) {
|
||||||
|
_this24._handlePopperPlacementChange(data);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
Util.reflow(tip);
|
|
||||||
this._tether.position();
|
|
||||||
|
|
||||||
$(tip).addClass(ClassName.SHOW);
|
$(tip).addClass(ClassName.SHOW);
|
||||||
|
|
||||||
// if this is a touch-enabled device we add extra
|
// if this is a touch-enabled device we add extra
|
||||||
@@ -3070,39 +3169,43 @@ var Tooltip = function ($) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var complete = function complete() {
|
var complete = function complete() {
|
||||||
var prevHoverState = _this23._hoverState;
|
if (_this24.config.animation) {
|
||||||
_this23._hoverState = null;
|
_this24._fixTransition();
|
||||||
|
}
|
||||||
|
var prevHoverState = _this24._hoverState;
|
||||||
|
_this24._hoverState = null;
|
||||||
|
|
||||||
$(_this23.element).trigger(_this23.constructor.Event.SHOWN);
|
$(_this24.element).trigger(_this24.constructor.Event.SHOWN);
|
||||||
|
|
||||||
if (prevHoverState === HoverState.OUT) {
|
if (prevHoverState === HoverState.OUT) {
|
||||||
_this23._leave(null, _this23);
|
_this24._leave(null, _this24);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
|
if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
|
||||||
$(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION);
|
$(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION);
|
||||||
return;
|
} else {
|
||||||
|
complete();
|
||||||
}
|
}
|
||||||
|
|
||||||
complete();
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype.hide = function hide(callback) {
|
Tooltip.prototype.hide = function hide(callback) {
|
||||||
var _this24 = this;
|
var _this25 = this;
|
||||||
|
|
||||||
var tip = this.getTipElement();
|
var tip = this.getTipElement();
|
||||||
var hideEvent = $.Event(this.constructor.Event.HIDE);
|
var hideEvent = $.Event(this.constructor.Event.HIDE);
|
||||||
var complete = function complete() {
|
var complete = function complete() {
|
||||||
if (_this24._hoverState !== HoverState.SHOW && tip.parentNode) {
|
if (_this25._hoverState !== HoverState.SHOW && tip.parentNode) {
|
||||||
tip.parentNode.removeChild(tip);
|
tip.parentNode.removeChild(tip);
|
||||||
}
|
}
|
||||||
|
|
||||||
_this24._cleanTipClass();
|
_this25._cleanTipClass();
|
||||||
_this24.element.removeAttribute('aria-describedby');
|
_this25.element.removeAttribute('aria-describedby');
|
||||||
$(_this24.element).trigger(_this24.constructor.Event.HIDDEN);
|
$(_this25.element).trigger(_this25.constructor.Event.HIDDEN);
|
||||||
_this24.cleanupTether();
|
if (_this25._popper !== null) {
|
||||||
|
_this25._popper.destroy();
|
||||||
|
}
|
||||||
|
|
||||||
if (callback) {
|
if (callback) {
|
||||||
callback();
|
callback();
|
||||||
@@ -3137,24 +3240,30 @@ var Tooltip = function ($) {
|
|||||||
this._hoverState = '';
|
this._hoverState = '';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype.update = function update() {
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.scheduleUpdate();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// protected
|
// protected
|
||||||
|
|
||||||
Tooltip.prototype.isWithContent = function isWithContent() {
|
Tooltip.prototype.isWithContent = function isWithContent() {
|
||||||
return Boolean(this.getTitle());
|
return Boolean(this.getTitle());
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype.addAttachmentClass = function addAttachmentClass(attachment) {
|
||||||
|
$(this.getTipElement()).addClass(CLASS_PREFIX + '-' + attachment);
|
||||||
|
};
|
||||||
|
|
||||||
Tooltip.prototype.getTipElement = function getTipElement() {
|
Tooltip.prototype.getTipElement = function getTipElement() {
|
||||||
return this.tip = this.tip || $(this.config.template)[0];
|
return this.tip = this.tip || $(this.config.template)[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype.setContent = function setContent() {
|
Tooltip.prototype.setContent = function setContent() {
|
||||||
var $tip = $(this.getTipElement());
|
var $tip = $(this.getTipElement());
|
||||||
|
|
||||||
this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle());
|
this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle());
|
||||||
|
|
||||||
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
|
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
|
||||||
|
|
||||||
this.cleanupTether();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype.setElementContent = function setElementContent($element, content) {
|
Tooltip.prototype.setElementContent = function setElementContent($element, content) {
|
||||||
@@ -3183,49 +3292,35 @@ var Tooltip = function ($) {
|
|||||||
return title;
|
return title;
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype.cleanupTether = function cleanupTether() {
|
|
||||||
if (this._tether) {
|
|
||||||
this._tether.destroy();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// private
|
// private
|
||||||
|
|
||||||
Tooltip.prototype._getAttachment = function _getAttachment(placement) {
|
Tooltip.prototype._getAttachment = function _getAttachment(placement) {
|
||||||
return AttachmentMap[placement.toUpperCase()];
|
return AttachmentMap[placement.toUpperCase()];
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype._cleanTipClass = function _cleanTipClass() {
|
|
||||||
var $tip = $(this.getTipElement());
|
|
||||||
var tabClass = $tip.attr('class').match(TETHER_PREFIX_REGEX);
|
|
||||||
if (tabClass !== null && tabClass.length > 0) {
|
|
||||||
$tip.removeClass(tabClass.join(''));
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
Tooltip.prototype._setListeners = function _setListeners() {
|
Tooltip.prototype._setListeners = function _setListeners() {
|
||||||
var _this25 = this;
|
var _this26 = this;
|
||||||
|
|
||||||
var triggers = this.config.trigger.split(' ');
|
var triggers = this.config.trigger.split(' ');
|
||||||
|
|
||||||
triggers.forEach(function (trigger) {
|
triggers.forEach(function (trigger) {
|
||||||
if (trigger === 'click') {
|
if (trigger === 'click') {
|
||||||
$(_this25.element).on(_this25.constructor.Event.CLICK, _this25.config.selector, function (event) {
|
$(_this26.element).on(_this26.constructor.Event.CLICK, _this26.config.selector, function (event) {
|
||||||
return _this25.toggle(event);
|
return _this26.toggle(event);
|
||||||
});
|
});
|
||||||
} else if (trigger !== Trigger.MANUAL) {
|
} else if (trigger !== Trigger.MANUAL) {
|
||||||
var eventIn = trigger === Trigger.HOVER ? _this25.constructor.Event.MOUSEENTER : _this25.constructor.Event.FOCUSIN;
|
var eventIn = trigger === Trigger.HOVER ? _this26.constructor.Event.MOUSEENTER : _this26.constructor.Event.FOCUSIN;
|
||||||
var eventOut = trigger === Trigger.HOVER ? _this25.constructor.Event.MOUSELEAVE : _this25.constructor.Event.FOCUSOUT;
|
var eventOut = trigger === Trigger.HOVER ? _this26.constructor.Event.MOUSELEAVE : _this26.constructor.Event.FOCUSOUT;
|
||||||
|
|
||||||
$(_this25.element).on(eventIn, _this25.config.selector, function (event) {
|
$(_this26.element).on(eventIn, _this26.config.selector, function (event) {
|
||||||
return _this25._enter(event);
|
return _this26._enter(event);
|
||||||
}).on(eventOut, _this25.config.selector, function (event) {
|
}).on(eventOut, _this26.config.selector, function (event) {
|
||||||
return _this25._leave(event);
|
return _this26._leave(event);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
$(_this25.element).closest('.modal').on('hide.bs.modal', function () {
|
$(_this26.element).closest('.modal').on('hide.bs.modal', function () {
|
||||||
return _this25.hide();
|
return _this26.hide();
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -3363,6 +3458,32 @@ var Tooltip = function ($) {
|
|||||||
return config;
|
return config;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype._cleanTipClass = function _cleanTipClass() {
|
||||||
|
var $tip = $(this.getTipElement());
|
||||||
|
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
||||||
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
|
$tip.removeClass(tabClass.join(''));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype._handlePopperPlacementChange = function _handlePopperPlacementChange(data) {
|
||||||
|
this._cleanTipClass();
|
||||||
|
this.addAttachmentClass(this._getAttachment(data.placement));
|
||||||
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype._fixTransition = function _fixTransition() {
|
||||||
|
var tip = this.getTipElement();
|
||||||
|
var initConfigAnimation = this.config.animation;
|
||||||
|
if (tip.getAttribute('x-placement') !== null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$(tip).removeClass(ClassName.FADE);
|
||||||
|
this.config.animation = false;
|
||||||
|
this.hide();
|
||||||
|
this.show();
|
||||||
|
this.config.animation = initConfigAnimation;
|
||||||
|
};
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|
||||||
Tooltip._jQueryInterface = function _jQueryInterface(config) {
|
Tooltip._jQueryInterface = function _jQueryInterface(config) {
|
||||||
@@ -3464,12 +3585,14 @@ var Popover = function ($) {
|
|||||||
var DATA_KEY = 'bs.popover';
|
var DATA_KEY = 'bs.popover';
|
||||||
var EVENT_KEY = '.' + DATA_KEY;
|
var EVENT_KEY = '.' + DATA_KEY;
|
||||||
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
||||||
|
var CLASS_PREFIX = 'bs-popover';
|
||||||
|
var BSCLS_PREFIX_REGEX = new RegExp('(^|\\s)' + CLASS_PREFIX + '\\S+', 'g');
|
||||||
|
|
||||||
var Default = $.extend({}, Tooltip.Default, {
|
var Default = $.extend({}, Tooltip.Default, {
|
||||||
placement: 'right',
|
placement: 'right',
|
||||||
trigger: 'click',
|
trigger: 'click',
|
||||||
content: '',
|
content: '',
|
||||||
template: '<div class="popover" role="tooltip">' + '<h3 class="popover-title"></h3>' + '<div class="popover-content"></div></div>'
|
template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-title"></h3>' + '<div class="popover-content"></div></div>'
|
||||||
});
|
});
|
||||||
|
|
||||||
var DefaultType = $.extend({}, Tooltip.DefaultType, {
|
var DefaultType = $.extend({}, Tooltip.DefaultType, {
|
||||||
@@ -3520,6 +3643,10 @@ var Popover = function ($) {
|
|||||||
return this.getTitle() || this._getContent();
|
return this.getTitle() || this._getContent();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Popover.prototype.addAttachmentClass = function addAttachmentClass(attachment) {
|
||||||
|
$(this.getTipElement()).addClass(CLASS_PREFIX + '-' + attachment);
|
||||||
|
};
|
||||||
|
|
||||||
Popover.prototype.getTipElement = function getTipElement() {
|
Popover.prototype.getTipElement = function getTipElement() {
|
||||||
return this.tip = this.tip || $(this.config.template)[0];
|
return this.tip = this.tip || $(this.config.template)[0];
|
||||||
};
|
};
|
||||||
@@ -3532,8 +3659,6 @@ var Popover = function ($) {
|
|||||||
this.setElementContent($tip.find(Selector.CONTENT), this._getContent());
|
this.setElementContent($tip.find(Selector.CONTENT), this._getContent());
|
||||||
|
|
||||||
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
|
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
|
||||||
|
|
||||||
this.cleanupTether();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// private
|
// private
|
||||||
@@ -3542,6 +3667,14 @@ var Popover = function ($) {
|
|||||||
return this.element.getAttribute('data-content') || (typeof this.config.content === 'function' ? this.config.content.call(this.element) : this.config.content);
|
return this.element.getAttribute('data-content') || (typeof this.config.content === 'function' ? this.config.content.call(this.element) : this.config.content);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Popover.prototype._cleanTipClass = function _cleanTipClass() {
|
||||||
|
var $tip = $(this.getTipElement());
|
||||||
|
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
||||||
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
|
$tip.removeClass(tabClass.join(''));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|
||||||
Popover._jQueryInterface = function _jQueryInterface(config) {
|
Popover._jQueryInterface = function _jQueryInterface(config) {
|
||||||
|
|||||||
Vendored
+279
-2
File diff suppressed because one or more lines are too long
@@ -118,7 +118,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../assets/js/vendor/holder.min.js"></script>
|
<script src="../../assets/js/vendor/holder.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
$(function () {
|
$(function () {
|
||||||
|
|||||||
@@ -158,7 +158,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -176,7 +176,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- Just to make our placeholder images work. Don't actually copy the next line! -->
|
<!-- Just to make our placeholder images work. Don't actually copy the next line! -->
|
||||||
<script src="../../assets/js/vendor/holder.min.js"></script>
|
<script src="../../assets/js/vendor/holder.min.js"></script>
|
||||||
|
|||||||
@@ -60,7 +60,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -254,7 +254,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -93,7 +93,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -96,7 +96,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -351,7 +351,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -127,7 +127,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -66,7 +66,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -64,7 +64,7 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
|
|||||||
@@ -39,9 +39,8 @@
|
|||||||
<!-- Placed at the end of the document so the pages load faster -->
|
<!-- Placed at the end of the document so the pages load faster -->
|
||||||
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
|
||||||
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
<script>window.jQuery || document.write('<script src="../../assets/js/vendor/jquery.min.js"><\/script>')</script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.9.9/umd/popper.min.js" integrity="sha256-c477vRLKQv1jt9o7w6TTBzFyFznTaZjoMLTDFi7Hlxc=" crossorigin="anonymous"></script>
|
||||||
<script src="../../dist/js/bootstrap.min.js"></script>
|
<script src="../../dist/js/bootstrap.min.js"></script>
|
||||||
<script src="../../assets/js/vendor/tether.min.js"></script>
|
|
||||||
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
<!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
|
||||||
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
<script src="../../assets/js/ie10-viewport-bug-workaround.js"></script>
|
||||||
<script src="tooltip-viewport.js"></script>
|
<script src="tooltip-viewport.js"></script>
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ Our [package.json](https://github.com/twbs/bootstrap/blob/master/package.json) i
|
|||||||
|
|
||||||
Bootstrap uses [Autoprefixer][autoprefixer] (included in our build process) to automatically add vendor prefixes to some CSS properties at build time. Doing so saves us time and code by allowing us to write key parts of our CSS a single time while eliminating the need for vendor mixins like those found in v3.
|
Bootstrap uses [Autoprefixer][autoprefixer] (included in our build process) to automatically add vendor prefixes to some CSS properties at build time. Doing so saves us time and code by allowing us to write key parts of our CSS a single time while eliminating the need for vendor mixins like those found in v3.
|
||||||
|
|
||||||
We maintain the list of browsers supported through Autoprefixer in a separate file within our GitHub repository. See [`/build/postcss.js`](https://github.com/twbs/bootstrap/blob/v4-dev/build/postcss.js) for details.
|
We maintain the list of browsers supported through Autoprefixer in a separate file within our GitHub repository. See [`/build/postcss.config.js`](https://github.com/twbs/bootstrap/blob/v4-dev/build/postcss.config.js) for details.
|
||||||
|
|
||||||
## Local documentation
|
## Local documentation
|
||||||
|
|
||||||
|
|||||||
@@ -25,11 +25,11 @@ Copy-paste the stylesheet `<link>` into your `<head>` before all other styleshee
|
|||||||
<link rel="stylesheet" href="{{ site.cdn.css }}" integrity="{{ site.cdn.css_hash }}" crossorigin="anonymous">
|
<link rel="stylesheet" href="{{ site.cdn.css }}" integrity="{{ site.cdn.css_hash }}" crossorigin="anonymous">
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
Add our JavaScript plugins, jQuery, and Tether near the end of your pages, right before the closing `</body>` tag. Be sure to place jQuery and Tether first, as our code depends on them. While we use [jQuery's slim build](https://blog.jquery.com/2016/06/09/jquery-3-0-final-released/) in our docs, the full version is also supported.
|
Add our JavaScript plugins, jQuery, and Popper.js near the end of your pages, right before the closing `</body>` tag. Be sure to place jQuery and Popper.js first, as our code depends on them. While we use [jQuery's slim build](https://blog.jquery.com/2016/06/09/jquery-3-0-final-released/) in our docs, the full version is also supported.
|
||||||
|
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
|
||||||
<script src="{{ site.cdn.tether }}" integrity="{{ site.cdn.tether_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.popper }}" integrity="{{ site.cdn.popper_hash }}" crossorigin="anonymous"></script>
|
||||||
<script src="{{ site.cdn.js }}" integrity="{{ site.cdn.js_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.js }}" integrity="{{ site.cdn.js_hash }}" crossorigin="anonymous"></script>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
|
|
||||||
@@ -53,9 +53,9 @@ Be sure to have your pages set up with the latest design and development standar
|
|||||||
<body>
|
<body>
|
||||||
<h1>Hello, world!</h1>
|
<h1>Hello, world!</h1>
|
||||||
|
|
||||||
<!-- jQuery first, then Tether, then Bootstrap JS. -->
|
<!-- jQuery first, then Popper.js, then Bootstrap JS. -->
|
||||||
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
|
||||||
<script src="{{ site.cdn.tether }}" integrity="{{ site.cdn.tether_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.popper }}" integrity="{{ site.cdn.popper_hash }}" crossorigin="anonymous"></script>
|
||||||
<script src="{{ site.cdn.js }}" integrity="{{ site.cdn.js_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.js }}" integrity="{{ site.cdn.js_hash }}" crossorigin="anonymous"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -0,0 +1,106 @@
|
|||||||
|
---
|
||||||
|
layout: docs
|
||||||
|
title: Webpack
|
||||||
|
description: Learn how to install Bootstrap using webpack 2
|
||||||
|
group: getting-started
|
||||||
|
---
|
||||||
|
|
||||||
|
Use [webpack v2.x](https://webpack.js.org/) to bundle Bootstrap into your project.
|
||||||
|
|
||||||
|
|
||||||
|
## Contents
|
||||||
|
|
||||||
|
* Will be replaced with the ToC, excluding the "Contents" header
|
||||||
|
{:toc}
|
||||||
|
|
||||||
|
## Installing Bootstrap
|
||||||
|
|
||||||
|
[Install bootstrap](/getting-started/download/#npm) as a node module using npm.
|
||||||
|
|
||||||
|
## Importing JavaScript
|
||||||
|
|
||||||
|
Import [Bootstrap's JavaScript](/getting-started/javascript/) by adding this line to your app's entry point (usally `index.js` or `app.js`):
|
||||||
|
|
||||||
|
{% highlight js %}
|
||||||
|
import 'bootstrap';
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
Alternatively, you may **import plugins individually** as needed:
|
||||||
|
|
||||||
|
{% highlight js %}
|
||||||
|
import 'bootstrap/js/dist/util';
|
||||||
|
import 'bootstrap/js/dist/dropdown';
|
||||||
|
...
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
Bootstrap is dependent on [jQuery](https://jquery.com/) and [Popper](https://popper.js.org/), so npm will install them for you if needed. But they must be explicitly provided by webpack. Add the following code to the `plugins` section in your webpack config file:
|
||||||
|
|
||||||
|
{% highlight js %}
|
||||||
|
plugins: [
|
||||||
|
...
|
||||||
|
new webpack.ProvidePlugin({
|
||||||
|
$: 'jquery',
|
||||||
|
jQuery: 'jquery',
|
||||||
|
'window.jQuery': 'jquery',
|
||||||
|
Popper: ['popper.js', 'default'],
|
||||||
|
// In case you imported plugins individually, you must also require them here:
|
||||||
|
Util: "exports-loader?Util!bootstrap/js/dist/util",
|
||||||
|
Dropdown: "exports-loader?Dropdown!bootstrap/js/dist/dropdown",
|
||||||
|
...
|
||||||
|
})
|
||||||
|
...
|
||||||
|
]
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
{% callout warning %}
|
||||||
|
Notice that if you chose to **import plugins individually**, you must also install [exports-loader](https://github.com/webpack-contrib/exports-loader)
|
||||||
|
{% endcallout %}
|
||||||
|
|
||||||
|
## Importing Styles
|
||||||
|
|
||||||
|
### Importing Precompiled SASS
|
||||||
|
|
||||||
|
To enjoy the full potential of Bootstrap and customize it to your needs, use the source files as a part of your project's bundling process.
|
||||||
|
|
||||||
|
First, create your own `_custom.scss` and use it to override the [built-in custom variables](/getting-started/options/). Then, use your main sass file to import your custom variables, followed by Bootstrap:
|
||||||
|
{% highlight scss %}
|
||||||
|
@import "custom";
|
||||||
|
@import "~bootstrap/scss/bootstrap";
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
For Bootstrap to compile, make sure you install and use the required loaders: [sass-loader](https://github.com/webpack-contrib/sass-loader), [postcss-loader](https://github.com/postcss/postcss-loader) with [Autoprefixer](https://github.com/postcss/autoprefixer#webpack) and [postcss-flexbugs-fixes](https://github.com/luisrudge/postcss-flexbugs-fixes). With minimal setup, your webpack config should include this rule or similar:
|
||||||
|
|
||||||
|
{% highlight js %}
|
||||||
|
...
|
||||||
|
{
|
||||||
|
test: /\.(scss)$/,
|
||||||
|
use: [{
|
||||||
|
loader: 'style-loader', // inject CSS to page
|
||||||
|
}, {
|
||||||
|
loader: 'css-loader', // translates CSS into CommonJS modules
|
||||||
|
}, {
|
||||||
|
loader: 'postcss-loader', // Run post css actions
|
||||||
|
options: {
|
||||||
|
plugins: function () { // post css plugins, can be exported to postcss.config.js
|
||||||
|
return [
|
||||||
|
require('precss'),
|
||||||
|
require('autoprefixer')
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
loader: 'sass-loader' // compiles SASS to CSS
|
||||||
|
}]
|
||||||
|
},
|
||||||
|
...
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
### Importing Compiled CSS
|
||||||
|
|
||||||
|
Alternatively, you may use Bootstrap's ready-to-use css by simply adding this line to your project's entry point:
|
||||||
|
|
||||||
|
{% highlight js %}
|
||||||
|
import 'bootstrap/dist/css/bootstrap.min.css';
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
In this case you may use your existing rule for `css` without any special modifications to webpack config.
|
||||||
+3
-3
@@ -4,7 +4,7 @@ layout: home
|
|||||||
|
|
||||||
<main class="bd-masthead" id="content" role="main">
|
<main class="bd-masthead" id="content" role="main">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<span class="bd-booticon outline">B</span>
|
{% include bootstrap-icon.html %}
|
||||||
<p class="lead">Bootstrap is the most popular HTML, CSS, and JS framework in the world for building responsive, mobile-first projects on the web.</p>
|
<p class="lead">Bootstrap is the most popular HTML, CSS, and JS framework in the world for building responsive, mobile-first projects on the web.</p>
|
||||||
<p class="lead">
|
<p class="lead">
|
||||||
<a href="{{ site.baseurl }}/getting-started/download/" class="btn btn-lg" onclick="ga('send', 'event', 'Jumbotron actions', 'Download', 'Download {{ site.current_version }}');">Download Bootstrap</a>
|
<a href="{{ site.baseurl }}/getting-started/download/" class="btn btn-lg" onclick="ga('send', 'event', 'Jumbotron actions', 'Download', 'Download {{ site.current_version }}');">Download Bootstrap</a>
|
||||||
@@ -29,11 +29,11 @@ layout: home
|
|||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6 mb-3">
|
<div class="col-sm-6 mb-3">
|
||||||
<h4>Bootstrap CDN</h4>
|
<h4>Bootstrap CDN</h4>
|
||||||
<p>When you just need to include Bootstrap's compiled CSS and JS, use the Bootstrap CDN, free from the Max CDN folks.</p>
|
<p>When you just need to include Bootstrap's compiled CSS and JS, use the Bootstrap CDN, free from the MaxCDN folks.</p>
|
||||||
{% highlight html %}
|
{% highlight html %}
|
||||||
<link rel="stylesheet" href="{{ site.cdn.css }}" integrity="{{ site.cdn.css_hash }}" crossorigin="anonymous">
|
<link rel="stylesheet" href="{{ site.cdn.css }}" integrity="{{ site.cdn.css_hash }}" crossorigin="anonymous">
|
||||||
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.jquery }}" integrity="{{ site.cdn.jquery_hash }}" crossorigin="anonymous"></script>
|
||||||
<script src="{{ site.cdn.tether }}" integrity="{{ site.cdn.tether_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.popper }}" integrity="{{ site.cdn.popper_hash }}" crossorigin="anonymous"></script>
|
||||||
<script src="{{ site.cdn.js }}" integrity="{{ site.cdn.js_hash }}" crossorigin="anonymous"></script>
|
<script src="{{ site.cdn.js }}" integrity="{{ site.cdn.js_hash }}" crossorigin="anonymous"></script>
|
||||||
{% endhighlight %}
|
{% endhighlight %}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
+3
-3
@@ -144,7 +144,7 @@ For example, here are two grid layouts that apply to every device and viewport,
|
|||||||
1 of 2
|
1 of 2
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
1 of 2
|
2 of 2
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
@@ -152,10 +152,10 @@ For example, here are two grid layouts that apply to every device and viewport,
|
|||||||
1 of 3
|
1 of 3
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
1 of 3
|
2 of 3
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
1 of 3
|
3 of 3
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
+1
-8
@@ -97,6 +97,7 @@ New to Bootstrap 4 is the Reboot, a new stylesheet that builds on Normalize with
|
|||||||
- `.form-group` no longer applies styles from the `.row` via mixin, so `.row` is now required for horizontal grid layouts (e.g., `<div class="form-group row">`).
|
- `.form-group` no longer applies styles from the `.row` via mixin, so `.row` is now required for horizontal grid layouts (e.g., `<div class="form-group row">`).
|
||||||
- Added new `.form-control-label` class to vertically center labels with `.form-control`s.
|
- Added new `.form-control-label` class to vertically center labels with `.form-control`s.
|
||||||
- Added custom forms support (for checkboxes, radios, selects, and file inputs).
|
- Added custom forms support (for checkboxes, radios, selects, and file inputs).
|
||||||
|
- Renamed `.has-error` to `.has-danger`.
|
||||||
|
|
||||||
### Buttons
|
### Buttons
|
||||||
|
|
||||||
@@ -196,14 +197,6 @@ Dropped entirely for the new card component.
|
|||||||
- `.panel-warning` to `.card-warning` and `.card-inverse` (or use `.bg-warning` on `.card-header`)
|
- `.panel-warning` to `.card-warning` and `.card-inverse` (or use `.bg-warning` on `.card-header`)
|
||||||
- `.panel-danger` to `.card-danger` and `.card-inverse` (or use `.bg-danger` on `.card-header`)
|
- `.panel-danger` to `.card-danger` and `.card-inverse` (or use `.bg-danger` on `.card-header`)
|
||||||
|
|
||||||
### Tooltips
|
|
||||||
|
|
||||||
- Removed support for `auto` placement options.
|
|
||||||
|
|
||||||
### Popovers
|
|
||||||
|
|
||||||
- Removed support for `auto` placement options.
|
|
||||||
|
|
||||||
### Carousel
|
### Carousel
|
||||||
|
|
||||||
- Overhauled the entire component to simplify design and styling. We have fewer styles for you to override, new indicators, and new icons.
|
- Overhauled the entire component to simplify design and styling. We have fewer styles for you to override, new indicators, and new icons.
|
||||||
|
|||||||
Vendored
+3
@@ -82,6 +82,9 @@ var Button = function ($) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (triggerChangeEvent) {
|
if (triggerChangeEvent) {
|
||||||
|
if (input.hasAttribute('disabled') || rootElement.hasAttribute('disabled') || input.classList.contains('disabled') || rootElement.classList.contains('disabled')) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
input.checked = !$(this._element).hasClass(ClassName.ACTIVE);
|
input.checked = !$(this._element).hasClass(ClassName.ACTIVE);
|
||||||
$(input).trigger('change');
|
$(input).trigger('change');
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+4
-12
@@ -58,9 +58,8 @@ var Collapse = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
var Selector = {
|
var Selector = {
|
||||||
ACTIVES: '.card > .show, .card > .collapsing',
|
ACTIVES: '.show, .collapsing',
|
||||||
DATA_TOGGLE: '[data-toggle="collapse"]',
|
DATA_TOGGLE: '[data-toggle="collapse"]'
|
||||||
DATA_CHILDREN: 'data-children'
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -77,20 +76,13 @@ var Collapse = function ($) {
|
|||||||
this._element = element;
|
this._element = element;
|
||||||
this._config = this._getConfig(config);
|
this._config = this._getConfig(config);
|
||||||
this._triggerArray = $.makeArray($('[data-toggle="collapse"][href="#' + element.id + '"],' + ('[data-toggle="collapse"][data-target="#' + element.id + '"]')));
|
this._triggerArray = $.makeArray($('[data-toggle="collapse"][href="#' + element.id + '"],' + ('[data-toggle="collapse"][data-target="#' + element.id + '"]')));
|
||||||
|
|
||||||
this._parent = this._config.parent ? this._getParent() : null;
|
this._parent = this._config.parent ? this._getParent() : null;
|
||||||
|
|
||||||
if (!this._config.parent) {
|
if (!this._config.parent) {
|
||||||
this._addAriaAndCollapsedClass(this._element, this._triggerArray);
|
this._addAriaAndCollapsedClass(this._element, this._triggerArray);
|
||||||
}
|
}
|
||||||
|
|
||||||
this._selectorActives = Selector.ACTIVES;
|
|
||||||
if (this._parent) {
|
|
||||||
var childrenSelector = this._parent.hasAttribute(Selector.DATA_CHILDREN) ? this._parent.getAttribute(Selector.DATA_CHILDREN) : null;
|
|
||||||
if (childrenSelector !== null) {
|
|
||||||
this._selectorActives = childrenSelector + ' > .show, ' + childrenSelector + ' > .collapsing';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this._config.toggle) {
|
if (this._config.toggle) {
|
||||||
this.toggle();
|
this.toggle();
|
||||||
}
|
}
|
||||||
@@ -119,7 +111,7 @@ var Collapse = function ($) {
|
|||||||
var activesData = void 0;
|
var activesData = void 0;
|
||||||
|
|
||||||
if (this._parent) {
|
if (this._parent) {
|
||||||
actives = $.makeArray($(this._parent).find(this._selectorActives));
|
actives = $.makeArray($(this._parent).children().children(Selector.ACTIVES));
|
||||||
if (!actives.length) {
|
if (!actives.length) {
|
||||||
actives = null;
|
actives = null;
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+150
-21
@@ -1,3 +1,5 @@
|
|||||||
|
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
|
||||||
|
|
||||||
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
||||||
|
|
||||||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||||
@@ -11,6 +13,14 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|||||||
|
|
||||||
var Dropdown = function ($) {
|
var Dropdown = function ($) {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check for Popper dependency
|
||||||
|
* Popper - https://popper.js.org
|
||||||
|
*/
|
||||||
|
if (typeof Popper === 'undefined') {
|
||||||
|
throw new Error('Bootstrap dropdown require Popper.js (https://popper.js.org)');
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
* Constants
|
* Constants
|
||||||
@@ -44,7 +54,10 @@ var Dropdown = function ($) {
|
|||||||
|
|
||||||
var ClassName = {
|
var ClassName = {
|
||||||
DISABLED: 'disabled',
|
DISABLED: 'disabled',
|
||||||
SHOW: 'show'
|
SHOW: 'show',
|
||||||
|
DROPUP: 'dropup',
|
||||||
|
MENURIGHT: 'dropdown-menu-right',
|
||||||
|
MENULEFT: 'dropdown-menu-left'
|
||||||
};
|
};
|
||||||
|
|
||||||
var Selector = {
|
var Selector = {
|
||||||
@@ -55,6 +68,25 @@ var Dropdown = function ($) {
|
|||||||
VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled)'
|
VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled)'
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var AttachmentMap = {
|
||||||
|
TOP: 'top-start',
|
||||||
|
TOPEND: 'top-end',
|
||||||
|
BOTTOM: 'bottom-start',
|
||||||
|
BOTTOMEND: 'bottom-end'
|
||||||
|
};
|
||||||
|
|
||||||
|
var Default = {
|
||||||
|
placement: AttachmentMap.BOTTOM,
|
||||||
|
offset: 0,
|
||||||
|
flip: true
|
||||||
|
};
|
||||||
|
|
||||||
|
var DefaultType = {
|
||||||
|
placement: 'string',
|
||||||
|
offset: '(number|string)',
|
||||||
|
flip: 'boolean'
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
* Class Definition
|
* Class Definition
|
||||||
@@ -62,10 +94,13 @@ var Dropdown = function ($) {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var Dropdown = function () {
|
var Dropdown = function () {
|
||||||
function Dropdown(element) {
|
function Dropdown(element, config) {
|
||||||
_classCallCheck(this, Dropdown);
|
_classCallCheck(this, Dropdown);
|
||||||
|
|
||||||
this._element = element;
|
this._element = element;
|
||||||
|
this._popper = null;
|
||||||
|
this._config = this._getConfig(config);
|
||||||
|
this._menu = this._getMenuElement();
|
||||||
|
|
||||||
this._addEventListeners();
|
this._addEventListeners();
|
||||||
}
|
}
|
||||||
@@ -75,30 +110,49 @@ var Dropdown = function ($) {
|
|||||||
// public
|
// public
|
||||||
|
|
||||||
Dropdown.prototype.toggle = function toggle() {
|
Dropdown.prototype.toggle = function toggle() {
|
||||||
if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {
|
if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {
|
||||||
return false;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var parent = Dropdown._getParentFromElement(this);
|
var parent = Dropdown._getParentFromElement(this._element);
|
||||||
var isActive = $(parent).hasClass(ClassName.SHOW);
|
var isActive = $(this._menu).hasClass(ClassName.SHOW);
|
||||||
|
|
||||||
Dropdown._clearMenus();
|
Dropdown._clearMenus();
|
||||||
|
|
||||||
if (isActive) {
|
if (isActive) {
|
||||||
return false;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var relatedTarget = {
|
var relatedTarget = {
|
||||||
relatedTarget: this
|
relatedTarget: this._element
|
||||||
};
|
};
|
||||||
var showEvent = $.Event(Event.SHOW, relatedTarget);
|
var showEvent = $.Event(Event.SHOW, relatedTarget);
|
||||||
|
|
||||||
$(parent).trigger(showEvent);
|
$(parent).trigger(showEvent);
|
||||||
|
|
||||||
if (showEvent.isDefaultPrevented()) {
|
if (showEvent.isDefaultPrevented()) {
|
||||||
return false;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var element = this._element;
|
||||||
|
// for dropup with alignment we use the parent as popper container
|
||||||
|
if ($(parent).hasClass(ClassName.DROPUP)) {
|
||||||
|
if ($(this._menu).hasClass(ClassName.MENULEFT) || $(this._menu).hasClass(ClassName.MENURIGHT)) {
|
||||||
|
element = parent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this._popper = new Popper(element, this._menu, {
|
||||||
|
placement: this._getPlacement(),
|
||||||
|
modifiers: {
|
||||||
|
offset: {
|
||||||
|
offset: this._config.offset
|
||||||
|
},
|
||||||
|
flip: {
|
||||||
|
enabled: this._config.flip
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// if this is a touch-enabled device we add extra
|
// if this is a touch-enabled device we add extra
|
||||||
// empty mouseover listeners to the body's immediate children;
|
// empty mouseover listeners to the body's immediate children;
|
||||||
// only needed because of broken event delegation on iOS
|
// only needed because of broken event delegation on iOS
|
||||||
@@ -107,25 +161,79 @@ var Dropdown = function ($) {
|
|||||||
$('body').children().on('mouseover', null, $.noop);
|
$('body').children().on('mouseover', null, $.noop);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.focus();
|
this._element.focus();
|
||||||
this.setAttribute('aria-expanded', true);
|
this._element.setAttribute('aria-expanded', true);
|
||||||
|
|
||||||
$(parent).toggleClass(ClassName.SHOW);
|
$(this._menu).toggleClass(ClassName.SHOW);
|
||||||
$(parent).trigger($.Event(Event.SHOWN, relatedTarget));
|
$(parent).toggleClass(ClassName.SHOW).trigger($.Event(Event.SHOWN, relatedTarget));
|
||||||
|
|
||||||
return false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Dropdown.prototype.dispose = function dispose() {
|
Dropdown.prototype.dispose = function dispose() {
|
||||||
$.removeData(this._element, DATA_KEY);
|
$.removeData(this._element, DATA_KEY);
|
||||||
$(this._element).off(EVENT_KEY);
|
$(this._element).off(EVENT_KEY);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
|
this._menu = null;
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.destroy();
|
||||||
|
}
|
||||||
|
this._popper = null;
|
||||||
|
};
|
||||||
|
|
||||||
|
Dropdown.prototype.update = function update() {
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.scheduleUpdate();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
// private
|
// private
|
||||||
|
|
||||||
Dropdown.prototype._addEventListeners = function _addEventListeners() {
|
Dropdown.prototype._addEventListeners = function _addEventListeners() {
|
||||||
$(this._element).on(Event.CLICK, this.toggle);
|
var _this = this;
|
||||||
|
|
||||||
|
$(this._element).on(Event.CLICK, function (event) {
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
_this.toggle();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
Dropdown.prototype._getConfig = function _getConfig(config) {
|
||||||
|
var elementData = $(this._element).data();
|
||||||
|
if (elementData.placement !== undefined) {
|
||||||
|
elementData.placement = AttachmentMap[elementData.placement.toUpperCase()];
|
||||||
|
}
|
||||||
|
|
||||||
|
config = $.extend({}, this.constructor.Default, $(this._element).data(), config);
|
||||||
|
|
||||||
|
Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
|
||||||
|
|
||||||
|
return config;
|
||||||
|
};
|
||||||
|
|
||||||
|
Dropdown.prototype._getMenuElement = function _getMenuElement() {
|
||||||
|
if (!this._menu) {
|
||||||
|
var parent = Dropdown._getParentFromElement(this._element);
|
||||||
|
this._menu = $(parent).find(Selector.MENU)[0];
|
||||||
|
}
|
||||||
|
return this._menu;
|
||||||
|
};
|
||||||
|
|
||||||
|
Dropdown.prototype._getPlacement = function _getPlacement() {
|
||||||
|
var $parentDropdown = $(this._element).parent();
|
||||||
|
var placement = this._config.placement;
|
||||||
|
|
||||||
|
// Handle dropup
|
||||||
|
if ($parentDropdown.hasClass(ClassName.DROPUP) || this._config.placement === AttachmentMap.TOP) {
|
||||||
|
placement = AttachmentMap.TOP;
|
||||||
|
if ($(this._menu).hasClass(ClassName.MENURIGHT)) {
|
||||||
|
placement = AttachmentMap.TOPEND;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if ($(this._menu).hasClass(ClassName.MENURIGHT)) {
|
||||||
|
placement = AttachmentMap.BOTTOMEND;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return placement;
|
||||||
};
|
};
|
||||||
|
|
||||||
// static
|
// static
|
||||||
@@ -133,9 +241,10 @@ var Dropdown = function ($) {
|
|||||||
Dropdown._jQueryInterface = function _jQueryInterface(config) {
|
Dropdown._jQueryInterface = function _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
var data = $(this).data(DATA_KEY);
|
var data = $(this).data(DATA_KEY);
|
||||||
|
var _config = (typeof config === 'undefined' ? 'undefined' : _typeof(config)) === 'object' ? config : null;
|
||||||
|
|
||||||
if (!data) {
|
if (!data) {
|
||||||
data = new Dropdown(this);
|
data = new Dropdown(this, _config);
|
||||||
$(this).data(DATA_KEY, data);
|
$(this).data(DATA_KEY, data);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -143,7 +252,7 @@ var Dropdown = function ($) {
|
|||||||
if (data[config] === undefined) {
|
if (data[config] === undefined) {
|
||||||
throw new Error('No method named "' + config + '"');
|
throw new Error('No method named "' + config + '"');
|
||||||
}
|
}
|
||||||
data[config].call(this);
|
data[config]();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -154,13 +263,18 @@ var Dropdown = function ($) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var toggles = $.makeArray($(Selector.DATA_TOGGLE));
|
var toggles = $.makeArray($(Selector.DATA_TOGGLE));
|
||||||
|
|
||||||
for (var i = 0; i < toggles.length; i++) {
|
for (var i = 0; i < toggles.length; i++) {
|
||||||
var parent = Dropdown._getParentFromElement(toggles[i]);
|
var parent = Dropdown._getParentFromElement(toggles[i]);
|
||||||
|
var context = $(toggles[i]).data(DATA_KEY);
|
||||||
var relatedTarget = {
|
var relatedTarget = {
|
||||||
relatedTarget: toggles[i]
|
relatedTarget: toggles[i]
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (!context) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
var dropdownMenu = context._menu;
|
||||||
if (!$(parent).hasClass(ClassName.SHOW)) {
|
if (!$(parent).hasClass(ClassName.SHOW)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
@@ -183,6 +297,7 @@ var Dropdown = function ($) {
|
|||||||
|
|
||||||
toggles[i].setAttribute('aria-expanded', 'false');
|
toggles[i].setAttribute('aria-expanded', 'false');
|
||||||
|
|
||||||
|
$(dropdownMenu).removeClass(ClassName.SHOW);
|
||||||
$(parent).removeClass(ClassName.SHOW).trigger($.Event(Event.HIDDEN, relatedTarget));
|
$(parent).removeClass(ClassName.SHOW).trigger($.Event(Event.HIDDEN, relatedTarget));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -254,6 +369,16 @@ var Dropdown = function ($) {
|
|||||||
get: function get() {
|
get: function get() {
|
||||||
return VERSION;
|
return VERSION;
|
||||||
}
|
}
|
||||||
|
}, {
|
||||||
|
key: 'Default',
|
||||||
|
get: function get() {
|
||||||
|
return Default;
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'DefaultType',
|
||||||
|
get: function get() {
|
||||||
|
return DefaultType;
|
||||||
|
}
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
return Dropdown;
|
return Dropdown;
|
||||||
@@ -265,7 +390,11 @@ var Dropdown = function ($) {
|
|||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
$(document).on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler).on(Event.CLICK_DATA_API + ' ' + Event.KEYUP_DATA_API, Dropdown._clearMenus).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, Dropdown.prototype.toggle).on(Event.CLICK_DATA_API, Selector.FORM_CHILD, function (e) {
|
$(document).on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler).on(Event.CLICK_DATA_API + ' ' + Event.KEYUP_DATA_API, Dropdown._clearMenus).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
Dropdown._jQueryInterface.call($(this), 'toggle');
|
||||||
|
}).on(Event.CLICK_DATA_API, Selector.FORM_CHILD, function (e) {
|
||||||
e.stopPropagation();
|
e.stopPropagation();
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -283,5 +412,5 @@ var Dropdown = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return Dropdown;
|
return Dropdown;
|
||||||
}(jQuery);
|
}(jQuery); /* global Popper */
|
||||||
//# sourceMappingURL=dropdown.js.map
|
//# sourceMappingURL=dropdown.js.map
|
||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+15
-3
@@ -28,12 +28,14 @@ var Popover = function ($) {
|
|||||||
var DATA_KEY = 'bs.popover';
|
var DATA_KEY = 'bs.popover';
|
||||||
var EVENT_KEY = '.' + DATA_KEY;
|
var EVENT_KEY = '.' + DATA_KEY;
|
||||||
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
||||||
|
var CLASS_PREFIX = 'bs-popover';
|
||||||
|
var BSCLS_PREFIX_REGEX = new RegExp('(^|\\s)' + CLASS_PREFIX + '\\S+', 'g');
|
||||||
|
|
||||||
var Default = $.extend({}, Tooltip.Default, {
|
var Default = $.extend({}, Tooltip.Default, {
|
||||||
placement: 'right',
|
placement: 'right',
|
||||||
trigger: 'click',
|
trigger: 'click',
|
||||||
content: '',
|
content: '',
|
||||||
template: '<div class="popover" role="tooltip">' + '<h3 class="popover-title"></h3>' + '<div class="popover-content"></div></div>'
|
template: '<div class="popover" role="tooltip">' + '<div class="arrow" x-arrow></div>' + '<h3 class="popover-title"></h3>' + '<div class="popover-content"></div></div>'
|
||||||
});
|
});
|
||||||
|
|
||||||
var DefaultType = $.extend({}, Tooltip.DefaultType, {
|
var DefaultType = $.extend({}, Tooltip.DefaultType, {
|
||||||
@@ -84,6 +86,10 @@ var Popover = function ($) {
|
|||||||
return this.getTitle() || this._getContent();
|
return this.getTitle() || this._getContent();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Popover.prototype.addAttachmentClass = function addAttachmentClass(attachment) {
|
||||||
|
$(this.getTipElement()).addClass(CLASS_PREFIX + '-' + attachment);
|
||||||
|
};
|
||||||
|
|
||||||
Popover.prototype.getTipElement = function getTipElement() {
|
Popover.prototype.getTipElement = function getTipElement() {
|
||||||
return this.tip = this.tip || $(this.config.template)[0];
|
return this.tip = this.tip || $(this.config.template)[0];
|
||||||
};
|
};
|
||||||
@@ -96,8 +102,6 @@ var Popover = function ($) {
|
|||||||
this.setElementContent($tip.find(Selector.CONTENT), this._getContent());
|
this.setElementContent($tip.find(Selector.CONTENT), this._getContent());
|
||||||
|
|
||||||
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
|
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
|
||||||
|
|
||||||
this.cleanupTether();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// private
|
// private
|
||||||
@@ -106,6 +110,14 @@ var Popover = function ($) {
|
|||||||
return this.element.getAttribute('data-content') || (typeof this.config.content === 'function' ? this.config.content.call(this.element) : this.config.content);
|
return this.element.getAttribute('data-content') || (typeof this.config.content === 'function' ? this.config.content.call(this.element) : this.config.content);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Popover.prototype._cleanTipClass = function _cleanTipClass() {
|
||||||
|
var $tip = $(this.getTipElement());
|
||||||
|
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
||||||
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
|
$tip.removeClass(tabClass.join(''));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|
||||||
Popover._jQueryInterface = function _jQueryInterface(config) {
|
Popover._jQueryInterface = function _jQueryInterface(config) {
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+1
-1
@@ -129,7 +129,7 @@ var Tab = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
Tab.prototype.dispose = function dispose() {
|
Tab.prototype.dispose = function dispose() {
|
||||||
$.removeClass(this._element, DATA_KEY);
|
$.removeData(this._element, DATA_KEY);
|
||||||
this._element = null;
|
this._element = null;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+97
-71
@@ -14,11 +14,11 @@ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Cons
|
|||||||
var Tooltip = function ($) {
|
var Tooltip = function ($) {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check for Tether dependency
|
* Check for Popper dependency
|
||||||
* Tether - http://tether.io/
|
* Popper - https://popper.js.org
|
||||||
*/
|
*/
|
||||||
if (typeof Tether === 'undefined') {
|
if (typeof Popper === 'undefined') {
|
||||||
throw new Error('Bootstrap tooltips require Tether (http://tether.io/)');
|
throw new Error('Bootstrap tooltips require Popper.js (https://popper.js.org)');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -33,22 +33,8 @@ var Tooltip = function ($) {
|
|||||||
var EVENT_KEY = '.' + DATA_KEY;
|
var EVENT_KEY = '.' + DATA_KEY;
|
||||||
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
var JQUERY_NO_CONFLICT = $.fn[NAME];
|
||||||
var TRANSITION_DURATION = 150;
|
var TRANSITION_DURATION = 150;
|
||||||
var CLASS_PREFIX = 'bs-tether';
|
var CLASS_PREFIX = 'bs-tooltip';
|
||||||
var TETHER_PREFIX_REGEX = new RegExp('(^|\\s)' + CLASS_PREFIX + '\\S+', 'g');
|
var BSCLS_PREFIX_REGEX = new RegExp('(^|\\s)' + CLASS_PREFIX + '\\S+', 'g');
|
||||||
|
|
||||||
var Default = {
|
|
||||||
animation: true,
|
|
||||||
template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-inner"></div></div>',
|
|
||||||
trigger: 'hover focus',
|
|
||||||
title: '',
|
|
||||||
delay: 0,
|
|
||||||
html: false,
|
|
||||||
selector: false,
|
|
||||||
placement: 'top',
|
|
||||||
offset: '0 0',
|
|
||||||
constraints: [],
|
|
||||||
container: false
|
|
||||||
};
|
|
||||||
|
|
||||||
var DefaultType = {
|
var DefaultType = {
|
||||||
animation: 'boolean',
|
animation: 'boolean',
|
||||||
@@ -59,16 +45,31 @@ var Tooltip = function ($) {
|
|||||||
html: 'boolean',
|
html: 'boolean',
|
||||||
selector: '(string|boolean)',
|
selector: '(string|boolean)',
|
||||||
placement: '(string|function)',
|
placement: '(string|function)',
|
||||||
offset: 'string',
|
offset: '(number|string)',
|
||||||
constraints: 'array',
|
container: '(string|element|boolean)',
|
||||||
container: '(string|element|boolean)'
|
fallbackPlacement: '(string|array)'
|
||||||
};
|
};
|
||||||
|
|
||||||
var AttachmentMap = {
|
var AttachmentMap = {
|
||||||
TOP: 'bottom center',
|
AUTO: 'auto',
|
||||||
RIGHT: 'middle left',
|
TOP: 'top',
|
||||||
BOTTOM: 'top center',
|
RIGHT: 'right',
|
||||||
LEFT: 'middle right'
|
BOTTOM: 'bottom',
|
||||||
|
LEFT: 'left'
|
||||||
|
};
|
||||||
|
|
||||||
|
var Default = {
|
||||||
|
animation: true,
|
||||||
|
template: '<div class="tooltip" role="tooltip">' + '<div class="arrow" x-arrow></div>' + '<div class="tooltip-inner"></div></div>',
|
||||||
|
trigger: 'hover focus',
|
||||||
|
title: '',
|
||||||
|
delay: 0,
|
||||||
|
html: false,
|
||||||
|
selector: false,
|
||||||
|
placement: 'top',
|
||||||
|
offset: 0,
|
||||||
|
container: false,
|
||||||
|
fallbackPlacement: 'flip'
|
||||||
};
|
};
|
||||||
|
|
||||||
var HoverState = {
|
var HoverState = {
|
||||||
@@ -99,11 +100,6 @@ var Tooltip = function ($) {
|
|||||||
TOOLTIP_INNER: '.tooltip-inner'
|
TOOLTIP_INNER: '.tooltip-inner'
|
||||||
};
|
};
|
||||||
|
|
||||||
var TetherClass = {
|
|
||||||
element: false,
|
|
||||||
enabled: false
|
|
||||||
};
|
|
||||||
|
|
||||||
var Trigger = {
|
var Trigger = {
|
||||||
HOVER: 'hover',
|
HOVER: 'hover',
|
||||||
FOCUS: 'focus',
|
FOCUS: 'focus',
|
||||||
@@ -126,7 +122,7 @@ var Tooltip = function ($) {
|
|||||||
this._timeout = 0;
|
this._timeout = 0;
|
||||||
this._hoverState = '';
|
this._hoverState = '';
|
||||||
this._activeTrigger = {};
|
this._activeTrigger = {};
|
||||||
this._tether = null;
|
this._popper = null;
|
||||||
|
|
||||||
// protected
|
// protected
|
||||||
this.element = element;
|
this.element = element;
|
||||||
@@ -183,8 +179,6 @@ var Tooltip = function ($) {
|
|||||||
Tooltip.prototype.dispose = function dispose() {
|
Tooltip.prototype.dispose = function dispose() {
|
||||||
clearTimeout(this._timeout);
|
clearTimeout(this._timeout);
|
||||||
|
|
||||||
this.cleanupTether();
|
|
||||||
|
|
||||||
$.removeData(this.element, this.constructor.DATA_KEY);
|
$.removeData(this.element, this.constructor.DATA_KEY);
|
||||||
|
|
||||||
$(this.element).off(this.constructor.EVENT_KEY);
|
$(this.element).off(this.constructor.EVENT_KEY);
|
||||||
@@ -198,7 +192,10 @@ var Tooltip = function ($) {
|
|||||||
this._timeout = null;
|
this._timeout = null;
|
||||||
this._hoverState = null;
|
this._hoverState = null;
|
||||||
this._activeTrigger = null;
|
this._activeTrigger = null;
|
||||||
this._tether = null;
|
if (this._popper !== null) {
|
||||||
|
this._popper.destroy();
|
||||||
|
}
|
||||||
|
this._popper = null;
|
||||||
|
|
||||||
this.element = null;
|
this.element = null;
|
||||||
this.config = null;
|
this.config = null;
|
||||||
@@ -237,6 +234,7 @@ var Tooltip = function ($) {
|
|||||||
var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
|
var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
|
||||||
|
|
||||||
var attachment = this._getAttachment(placement);
|
var attachment = this._getAttachment(placement);
|
||||||
|
this.addAttachmentClass(attachment);
|
||||||
|
|
||||||
var container = this.config.container === false ? document.body : $(this.config.container);
|
var container = this.config.container === false ? document.body : $(this.config.container);
|
||||||
|
|
||||||
@@ -248,20 +246,26 @@ var Tooltip = function ($) {
|
|||||||
|
|
||||||
$(this.element).trigger(this.constructor.Event.INSERTED);
|
$(this.element).trigger(this.constructor.Event.INSERTED);
|
||||||
|
|
||||||
this._tether = new Tether({
|
this._popper = new Popper(this.element, tip, {
|
||||||
attachment: attachment,
|
placement: attachment,
|
||||||
element: tip,
|
modifiers: {
|
||||||
target: this.element,
|
offset: {
|
||||||
classes: TetherClass,
|
offset: this.config.offset
|
||||||
classPrefix: CLASS_PREFIX,
|
},
|
||||||
offset: this.config.offset,
|
flip: {
|
||||||
constraints: this.config.constraints,
|
behavior: this.config.fallbackPlacement
|
||||||
addTargetClasses: false
|
}
|
||||||
|
},
|
||||||
|
onCreate: function onCreate(data) {
|
||||||
|
if (data.originalPlacement !== data.placement) {
|
||||||
|
_this._handlePopperPlacementChange(data);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onUpdate: function onUpdate(data) {
|
||||||
|
_this._handlePopperPlacementChange(data);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
Util.reflow(tip);
|
|
||||||
this._tether.position();
|
|
||||||
|
|
||||||
$(tip).addClass(ClassName.SHOW);
|
$(tip).addClass(ClassName.SHOW);
|
||||||
|
|
||||||
// if this is a touch-enabled device we add extra
|
// if this is a touch-enabled device we add extra
|
||||||
@@ -273,6 +277,9 @@ var Tooltip = function ($) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var complete = function complete() {
|
var complete = function complete() {
|
||||||
|
if (_this.config.animation) {
|
||||||
|
_this._fixTransition();
|
||||||
|
}
|
||||||
var prevHoverState = _this._hoverState;
|
var prevHoverState = _this._hoverState;
|
||||||
_this._hoverState = null;
|
_this._hoverState = null;
|
||||||
|
|
||||||
@@ -285,10 +292,9 @@ var Tooltip = function ($) {
|
|||||||
|
|
||||||
if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
|
if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
|
||||||
$(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION);
|
$(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION);
|
||||||
return;
|
} else {
|
||||||
|
complete();
|
||||||
}
|
}
|
||||||
|
|
||||||
complete();
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -305,7 +311,9 @@ var Tooltip = function ($) {
|
|||||||
_this2._cleanTipClass();
|
_this2._cleanTipClass();
|
||||||
_this2.element.removeAttribute('aria-describedby');
|
_this2.element.removeAttribute('aria-describedby');
|
||||||
$(_this2.element).trigger(_this2.constructor.Event.HIDDEN);
|
$(_this2.element).trigger(_this2.constructor.Event.HIDDEN);
|
||||||
_this2.cleanupTether();
|
if (_this2._popper !== null) {
|
||||||
|
_this2._popper.destroy();
|
||||||
|
}
|
||||||
|
|
||||||
if (callback) {
|
if (callback) {
|
||||||
callback();
|
callback();
|
||||||
@@ -340,24 +348,30 @@ var Tooltip = function ($) {
|
|||||||
this._hoverState = '';
|
this._hoverState = '';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype.update = function update() {
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.scheduleUpdate();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// protected
|
// protected
|
||||||
|
|
||||||
Tooltip.prototype.isWithContent = function isWithContent() {
|
Tooltip.prototype.isWithContent = function isWithContent() {
|
||||||
return Boolean(this.getTitle());
|
return Boolean(this.getTitle());
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype.addAttachmentClass = function addAttachmentClass(attachment) {
|
||||||
|
$(this.getTipElement()).addClass(CLASS_PREFIX + '-' + attachment);
|
||||||
|
};
|
||||||
|
|
||||||
Tooltip.prototype.getTipElement = function getTipElement() {
|
Tooltip.prototype.getTipElement = function getTipElement() {
|
||||||
return this.tip = this.tip || $(this.config.template)[0];
|
return this.tip = this.tip || $(this.config.template)[0];
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype.setContent = function setContent() {
|
Tooltip.prototype.setContent = function setContent() {
|
||||||
var $tip = $(this.getTipElement());
|
var $tip = $(this.getTipElement());
|
||||||
|
|
||||||
this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle());
|
this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle());
|
||||||
|
|
||||||
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
|
$tip.removeClass(ClassName.FADE + ' ' + ClassName.SHOW);
|
||||||
|
|
||||||
this.cleanupTether();
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype.setElementContent = function setElementContent($element, content) {
|
Tooltip.prototype.setElementContent = function setElementContent($element, content) {
|
||||||
@@ -386,26 +400,12 @@ var Tooltip = function ($) {
|
|||||||
return title;
|
return title;
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype.cleanupTether = function cleanupTether() {
|
|
||||||
if (this._tether) {
|
|
||||||
this._tether.destroy();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// private
|
// private
|
||||||
|
|
||||||
Tooltip.prototype._getAttachment = function _getAttachment(placement) {
|
Tooltip.prototype._getAttachment = function _getAttachment(placement) {
|
||||||
return AttachmentMap[placement.toUpperCase()];
|
return AttachmentMap[placement.toUpperCase()];
|
||||||
};
|
};
|
||||||
|
|
||||||
Tooltip.prototype._cleanTipClass = function _cleanTipClass() {
|
|
||||||
var $tip = $(this.getTipElement());
|
|
||||||
var tabClass = $tip.attr('class').match(TETHER_PREFIX_REGEX);
|
|
||||||
if (tabClass !== null && tabClass.length > 0) {
|
|
||||||
$tip.removeClass(tabClass.join(''));
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
Tooltip.prototype._setListeners = function _setListeners() {
|
Tooltip.prototype._setListeners = function _setListeners() {
|
||||||
var _this3 = this;
|
var _this3 = this;
|
||||||
|
|
||||||
@@ -566,6 +566,32 @@ var Tooltip = function ($) {
|
|||||||
return config;
|
return config;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype._cleanTipClass = function _cleanTipClass() {
|
||||||
|
var $tip = $(this.getTipElement());
|
||||||
|
var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
|
||||||
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
|
$tip.removeClass(tabClass.join(''));
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype._handlePopperPlacementChange = function _handlePopperPlacementChange(data) {
|
||||||
|
this._cleanTipClass();
|
||||||
|
this.addAttachmentClass(this._getAttachment(data.placement));
|
||||||
|
};
|
||||||
|
|
||||||
|
Tooltip.prototype._fixTransition = function _fixTransition() {
|
||||||
|
var tip = this.getTipElement();
|
||||||
|
var initConfigAnimation = this.config.animation;
|
||||||
|
if (tip.getAttribute('x-placement') !== null) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$(tip).removeClass(ClassName.FADE);
|
||||||
|
this.config.animation = false;
|
||||||
|
this.hide();
|
||||||
|
this.show();
|
||||||
|
this.config.animation = initConfigAnimation;
|
||||||
|
};
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|
||||||
Tooltip._jQueryInterface = function _jQueryInterface(config) {
|
Tooltip._jQueryInterface = function _jQueryInterface(config) {
|
||||||
@@ -645,5 +671,5 @@ var Tooltip = function ($) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return Tooltip;
|
return Tooltip;
|
||||||
}(jQuery); /* global Tether */
|
}(jQuery); /* global Popper */
|
||||||
//# sourceMappingURL=tooltip.js.map
|
//# sourceMappingURL=tooltip.js.map
|
||||||
Vendored
+1
-1
File diff suppressed because one or more lines are too long
+155
-22
@@ -1,3 +1,5 @@
|
|||||||
|
/* global Popper */
|
||||||
|
|
||||||
import Util from './util'
|
import Util from './util'
|
||||||
|
|
||||||
|
|
||||||
@@ -10,6 +12,13 @@ import Util from './util'
|
|||||||
|
|
||||||
const Dropdown = (($) => {
|
const Dropdown = (($) => {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check for Popper dependency
|
||||||
|
* Popper - https://popper.js.org
|
||||||
|
*/
|
||||||
|
if (typeof Popper === 'undefined') {
|
||||||
|
throw new Error('Bootstrap dropdown require Popper.js (https://popper.js.org)')
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
@@ -43,8 +52,11 @@ const Dropdown = (($) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const ClassName = {
|
const ClassName = {
|
||||||
DISABLED : 'disabled',
|
DISABLED : 'disabled',
|
||||||
SHOW : 'show'
|
SHOW : 'show',
|
||||||
|
DROPUP : 'dropup',
|
||||||
|
MENURIGHT : 'dropdown-menu-right',
|
||||||
|
MENULEFT : 'dropdown-menu-left'
|
||||||
}
|
}
|
||||||
|
|
||||||
const Selector = {
|
const Selector = {
|
||||||
@@ -55,6 +67,25 @@ const Dropdown = (($) => {
|
|||||||
VISIBLE_ITEMS : '.dropdown-menu .dropdown-item:not(.disabled)'
|
VISIBLE_ITEMS : '.dropdown-menu .dropdown-item:not(.disabled)'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const AttachmentMap = {
|
||||||
|
TOP : 'top-start',
|
||||||
|
TOPEND : 'top-end',
|
||||||
|
BOTTOM : 'bottom-start',
|
||||||
|
BOTTOMEND : 'bottom-end'
|
||||||
|
}
|
||||||
|
|
||||||
|
const Default = {
|
||||||
|
placement : AttachmentMap.BOTTOM,
|
||||||
|
offset : 0,
|
||||||
|
flip : true
|
||||||
|
}
|
||||||
|
|
||||||
|
const DefaultType = {
|
||||||
|
placement : 'string',
|
||||||
|
offset : '(number|string)',
|
||||||
|
flip : 'boolean'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ------------------------------------------------------------------------
|
* ------------------------------------------------------------------------
|
||||||
@@ -64,8 +95,11 @@ const Dropdown = (($) => {
|
|||||||
|
|
||||||
class Dropdown {
|
class Dropdown {
|
||||||
|
|
||||||
constructor(element) {
|
constructor(element, config) {
|
||||||
this._element = element
|
this._element = element
|
||||||
|
this._popper = null
|
||||||
|
this._config = this._getConfig(config)
|
||||||
|
this._menu = this._getMenuElement()
|
||||||
|
|
||||||
this._addEventListeners()
|
this._addEventListeners()
|
||||||
}
|
}
|
||||||
@@ -77,34 +111,60 @@ const Dropdown = (($) => {
|
|||||||
return VERSION
|
return VERSION
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static get Default() {
|
||||||
|
return Default
|
||||||
|
}
|
||||||
|
|
||||||
|
static get DefaultType() {
|
||||||
|
return DefaultType
|
||||||
|
}
|
||||||
|
|
||||||
// public
|
// public
|
||||||
|
|
||||||
toggle() {
|
toggle() {
|
||||||
if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {
|
if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {
|
||||||
return false
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
const parent = Dropdown._getParentFromElement(this)
|
const parent = Dropdown._getParentFromElement(this._element)
|
||||||
const isActive = $(parent).hasClass(ClassName.SHOW)
|
const isActive = $(this._menu).hasClass(ClassName.SHOW)
|
||||||
|
|
||||||
Dropdown._clearMenus()
|
Dropdown._clearMenus()
|
||||||
|
|
||||||
if (isActive) {
|
if (isActive) {
|
||||||
return false
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
const relatedTarget = {
|
const relatedTarget = {
|
||||||
relatedTarget : this
|
relatedTarget : this._element
|
||||||
}
|
}
|
||||||
const showEvent = $.Event(Event.SHOW, relatedTarget)
|
const showEvent = $.Event(Event.SHOW, relatedTarget)
|
||||||
|
|
||||||
$(parent).trigger(showEvent)
|
$(parent).trigger(showEvent)
|
||||||
|
|
||||||
if (showEvent.isDefaultPrevented()) {
|
if (showEvent.isDefaultPrevented()) {
|
||||||
return false
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let element = this._element
|
||||||
|
// for dropup with alignment we use the parent as popper container
|
||||||
|
if ($(parent).hasClass(ClassName.DROPUP)) {
|
||||||
|
if ($(this._menu).hasClass(ClassName.MENULEFT) || $(this._menu).hasClass(ClassName.MENURIGHT)) {
|
||||||
|
element = parent
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this._popper = new Popper(element, this._menu, {
|
||||||
|
placement : this._getPlacement(),
|
||||||
|
modifiers : {
|
||||||
|
offset : {
|
||||||
|
offset : this._config.offset
|
||||||
|
},
|
||||||
|
flip : {
|
||||||
|
enabled : this._config.flip
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
// if this is a touch-enabled device we add extra
|
// if this is a touch-enabled device we add extra
|
||||||
// empty mouseover listeners to the body's immediate children;
|
// empty mouseover listeners to the body's immediate children;
|
||||||
// only needed because of broken event delegation on iOS
|
// only needed because of broken event delegation on iOS
|
||||||
@@ -114,37 +174,100 @@ const Dropdown = (($) => {
|
|||||||
$('body').children().on('mouseover', null, $.noop)
|
$('body').children().on('mouseover', null, $.noop)
|
||||||
}
|
}
|
||||||
|
|
||||||
this.focus()
|
this._element.focus()
|
||||||
this.setAttribute('aria-expanded', true)
|
this._element.setAttribute('aria-expanded', true)
|
||||||
|
|
||||||
$(parent).toggleClass(ClassName.SHOW)
|
$(this._menu).toggleClass(ClassName.SHOW)
|
||||||
$(parent).trigger($.Event(Event.SHOWN, relatedTarget))
|
$(parent)
|
||||||
|
.toggleClass(ClassName.SHOW)
|
||||||
return false
|
.trigger($.Event(Event.SHOWN, relatedTarget))
|
||||||
}
|
}
|
||||||
|
|
||||||
dispose() {
|
dispose() {
|
||||||
$.removeData(this._element, DATA_KEY)
|
$.removeData(this._element, DATA_KEY)
|
||||||
$(this._element).off(EVENT_KEY)
|
$(this._element).off(EVENT_KEY)
|
||||||
this._element = null
|
this._element = null
|
||||||
|
this._menu = null
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.destroy()
|
||||||
|
}
|
||||||
|
this._popper = null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
update() {
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.scheduleUpdate()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// private
|
// private
|
||||||
|
|
||||||
_addEventListeners() {
|
_addEventListeners() {
|
||||||
$(this._element).on(Event.CLICK, this.toggle)
|
$(this._element).on(Event.CLICK, (event) => {
|
||||||
|
event.preventDefault()
|
||||||
|
event.stopPropagation()
|
||||||
|
this.toggle()
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_getConfig(config) {
|
||||||
|
const elementData = $(this._element).data()
|
||||||
|
if (elementData.placement !== undefined) {
|
||||||
|
elementData.placement = AttachmentMap[elementData.placement.toUpperCase()]
|
||||||
|
}
|
||||||
|
|
||||||
|
config = $.extend(
|
||||||
|
{},
|
||||||
|
this.constructor.Default,
|
||||||
|
$(this._element).data(),
|
||||||
|
config
|
||||||
|
)
|
||||||
|
|
||||||
|
Util.typeCheckConfig(
|
||||||
|
NAME,
|
||||||
|
config,
|
||||||
|
this.constructor.DefaultType
|
||||||
|
)
|
||||||
|
|
||||||
|
return config
|
||||||
|
}
|
||||||
|
|
||||||
|
_getMenuElement() {
|
||||||
|
if (!this._menu) {
|
||||||
|
const parent = Dropdown._getParentFromElement(this._element)
|
||||||
|
this._menu = $(parent).find(Selector.MENU)[0]
|
||||||
|
}
|
||||||
|
return this._menu
|
||||||
|
}
|
||||||
|
|
||||||
|
_getPlacement() {
|
||||||
|
const $parentDropdown = $(this._element).parent()
|
||||||
|
let placement = this._config.placement
|
||||||
|
|
||||||
|
// Handle dropup
|
||||||
|
if ($parentDropdown.hasClass(ClassName.DROPUP) || this._config.placement === AttachmentMap.TOP) {
|
||||||
|
placement = AttachmentMap.TOP
|
||||||
|
if ($(this._menu).hasClass(ClassName.MENURIGHT)) {
|
||||||
|
placement = AttachmentMap.TOPEND
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if ($(this._menu).hasClass(ClassName.MENURIGHT)) {
|
||||||
|
placement = AttachmentMap.BOTTOMEND
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return placement
|
||||||
|
}
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|
||||||
static _jQueryInterface(config) {
|
static _jQueryInterface(config) {
|
||||||
return this.each(function () {
|
return this.each(function () {
|
||||||
let data = $(this).data(DATA_KEY)
|
let data = $(this).data(DATA_KEY)
|
||||||
|
const _config = typeof config === 'object' ? config : null
|
||||||
|
|
||||||
if (!data) {
|
if (!data) {
|
||||||
data = new Dropdown(this)
|
data = new Dropdown(this, _config)
|
||||||
$(this).data(DATA_KEY, data)
|
$(this).data(DATA_KEY, data)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -152,7 +275,7 @@ const Dropdown = (($) => {
|
|||||||
if (data[config] === undefined) {
|
if (data[config] === undefined) {
|
||||||
throw new Error(`No method named "${config}"`)
|
throw new Error(`No method named "${config}"`)
|
||||||
}
|
}
|
||||||
data[config].call(this)
|
data[config]()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -164,13 +287,18 @@ const Dropdown = (($) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const toggles = $.makeArray($(Selector.DATA_TOGGLE))
|
const toggles = $.makeArray($(Selector.DATA_TOGGLE))
|
||||||
|
|
||||||
for (let i = 0; i < toggles.length; i++) {
|
for (let i = 0; i < toggles.length; i++) {
|
||||||
const parent = Dropdown._getParentFromElement(toggles[i])
|
const parent = Dropdown._getParentFromElement(toggles[i])
|
||||||
|
const context = $(toggles[i]).data(DATA_KEY)
|
||||||
const relatedTarget = {
|
const relatedTarget = {
|
||||||
relatedTarget : toggles[i]
|
relatedTarget : toggles[i]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!context) {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
const dropdownMenu = context._menu
|
||||||
if (!$(parent).hasClass(ClassName.SHOW)) {
|
if (!$(parent).hasClass(ClassName.SHOW)) {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
@@ -195,6 +323,7 @@ const Dropdown = (($) => {
|
|||||||
|
|
||||||
toggles[i].setAttribute('aria-expanded', 'false')
|
toggles[i].setAttribute('aria-expanded', 'false')
|
||||||
|
|
||||||
|
$(dropdownMenu).removeClass(ClassName.SHOW)
|
||||||
$(parent)
|
$(parent)
|
||||||
.removeClass(ClassName.SHOW)
|
.removeClass(ClassName.SHOW)
|
||||||
.trigger($.Event(Event.HIDDEN, relatedTarget))
|
.trigger($.Event(Event.HIDDEN, relatedTarget))
|
||||||
@@ -276,7 +405,11 @@ const Dropdown = (($) => {
|
|||||||
.on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler)
|
.on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler)
|
||||||
.on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler)
|
.on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler)
|
||||||
.on(`${Event.CLICK_DATA_API} ${Event.KEYUP_DATA_API}`, Dropdown._clearMenus)
|
.on(`${Event.CLICK_DATA_API} ${Event.KEYUP_DATA_API}`, Dropdown._clearMenus)
|
||||||
.on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, Dropdown.prototype.toggle)
|
.on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
|
||||||
|
event.preventDefault()
|
||||||
|
event.stopPropagation()
|
||||||
|
Dropdown._jQueryInterface.call($(this), 'toggle')
|
||||||
|
})
|
||||||
.on(Event.CLICK_DATA_API, Selector.FORM_CHILD, (e) => {
|
.on(Event.CLICK_DATA_API, Selector.FORM_CHILD, (e) => {
|
||||||
e.stopPropagation()
|
e.stopPropagation()
|
||||||
})
|
})
|
||||||
|
|||||||
+15
-2
@@ -22,12 +22,15 @@ const Popover = (($) => {
|
|||||||
const DATA_KEY = 'bs.popover'
|
const DATA_KEY = 'bs.popover'
|
||||||
const EVENT_KEY = `.${DATA_KEY}`
|
const EVENT_KEY = `.${DATA_KEY}`
|
||||||
const JQUERY_NO_CONFLICT = $.fn[NAME]
|
const JQUERY_NO_CONFLICT = $.fn[NAME]
|
||||||
|
const CLASS_PREFIX = 'bs-popover'
|
||||||
|
const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g')
|
||||||
|
|
||||||
const Default = $.extend({}, Tooltip.Default, {
|
const Default = $.extend({}, Tooltip.Default, {
|
||||||
placement : 'right',
|
placement : 'right',
|
||||||
trigger : 'click',
|
trigger : 'click',
|
||||||
content : '',
|
content : '',
|
||||||
template : '<div class="popover" role="tooltip">'
|
template : '<div class="popover" role="tooltip">'
|
||||||
|
+ '<div class="arrow" x-arrow></div>'
|
||||||
+ '<h3 class="popover-title"></h3>'
|
+ '<h3 class="popover-title"></h3>'
|
||||||
+ '<div class="popover-content"></div></div>'
|
+ '<div class="popover-content"></div></div>'
|
||||||
})
|
})
|
||||||
@@ -106,6 +109,10 @@ const Popover = (($) => {
|
|||||||
return this.getTitle() || this._getContent()
|
return this.getTitle() || this._getContent()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
addAttachmentClass(attachment) {
|
||||||
|
$(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)
|
||||||
|
}
|
||||||
|
|
||||||
getTipElement() {
|
getTipElement() {
|
||||||
return this.tip = this.tip || $(this.config.template)[0]
|
return this.tip = this.tip || $(this.config.template)[0]
|
||||||
}
|
}
|
||||||
@@ -118,8 +125,6 @@ const Popover = (($) => {
|
|||||||
this.setElementContent($tip.find(Selector.CONTENT), this._getContent())
|
this.setElementContent($tip.find(Selector.CONTENT), this._getContent())
|
||||||
|
|
||||||
$tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)
|
$tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)
|
||||||
|
|
||||||
this.cleanupTether()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// private
|
// private
|
||||||
@@ -131,6 +136,14 @@ const Popover = (($) => {
|
|||||||
this.config.content)
|
this.config.content)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_cleanTipClass() {
|
||||||
|
const $tip = $(this.getTipElement())
|
||||||
|
const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)
|
||||||
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
|
$tip.removeClass(tabClass.join(''))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|
||||||
|
|||||||
+105
-80
@@ -1,4 +1,4 @@
|
|||||||
/* global Tether */
|
/* global Popper */
|
||||||
|
|
||||||
import Util from './util'
|
import Util from './util'
|
||||||
|
|
||||||
@@ -13,11 +13,11 @@ import Util from './util'
|
|||||||
const Tooltip = (($) => {
|
const Tooltip = (($) => {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check for Tether dependency
|
* Check for Popper dependency
|
||||||
* Tether - http://tether.io/
|
* Popper - https://popper.js.org
|
||||||
*/
|
*/
|
||||||
if (typeof Tether === 'undefined') {
|
if (typeof Popper === 'undefined') {
|
||||||
throw new Error('Bootstrap tooltips require Tether (http://tether.io/)')
|
throw new Error('Bootstrap tooltips require Popper.js (https://popper.js.org)')
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -33,43 +33,45 @@ const Tooltip = (($) => {
|
|||||||
const EVENT_KEY = `.${DATA_KEY}`
|
const EVENT_KEY = `.${DATA_KEY}`
|
||||||
const JQUERY_NO_CONFLICT = $.fn[NAME]
|
const JQUERY_NO_CONFLICT = $.fn[NAME]
|
||||||
const TRANSITION_DURATION = 150
|
const TRANSITION_DURATION = 150
|
||||||
const CLASS_PREFIX = 'bs-tether'
|
const CLASS_PREFIX = 'bs-tooltip'
|
||||||
const TETHER_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g')
|
const BSCLS_PREFIX_REGEX = new RegExp(`(^|\\s)${CLASS_PREFIX}\\S+`, 'g')
|
||||||
|
|
||||||
const Default = {
|
|
||||||
animation : true,
|
|
||||||
template : '<div class="tooltip" role="tooltip">'
|
|
||||||
+ '<div class="tooltip-inner"></div></div>',
|
|
||||||
trigger : 'hover focus',
|
|
||||||
title : '',
|
|
||||||
delay : 0,
|
|
||||||
html : false,
|
|
||||||
selector : false,
|
|
||||||
placement : 'top',
|
|
||||||
offset : '0 0',
|
|
||||||
constraints : [],
|
|
||||||
container : false
|
|
||||||
}
|
|
||||||
|
|
||||||
const DefaultType = {
|
const DefaultType = {
|
||||||
animation : 'boolean',
|
animation : 'boolean',
|
||||||
template : 'string',
|
template : 'string',
|
||||||
title : '(string|element|function)',
|
title : '(string|element|function)',
|
||||||
trigger : 'string',
|
trigger : 'string',
|
||||||
delay : '(number|object)',
|
delay : '(number|object)',
|
||||||
html : 'boolean',
|
html : 'boolean',
|
||||||
selector : '(string|boolean)',
|
selector : '(string|boolean)',
|
||||||
placement : '(string|function)',
|
placement : '(string|function)',
|
||||||
offset : 'string',
|
offset : '(number|string)',
|
||||||
constraints : 'array',
|
container : '(string|element|boolean)',
|
||||||
container : '(string|element|boolean)'
|
fallbackPlacement : '(string|array)'
|
||||||
}
|
}
|
||||||
|
|
||||||
const AttachmentMap = {
|
const AttachmentMap = {
|
||||||
TOP : 'bottom center',
|
AUTO : 'auto',
|
||||||
RIGHT : 'middle left',
|
TOP : 'top',
|
||||||
BOTTOM : 'top center',
|
RIGHT : 'right',
|
||||||
LEFT : 'middle right'
|
BOTTOM : 'bottom',
|
||||||
|
LEFT : 'left'
|
||||||
|
}
|
||||||
|
|
||||||
|
const Default = {
|
||||||
|
animation : true,
|
||||||
|
template : '<div class="tooltip" role="tooltip">'
|
||||||
|
+ '<div class="arrow" x-arrow></div>'
|
||||||
|
+ '<div class="tooltip-inner"></div></div>',
|
||||||
|
trigger : 'hover focus',
|
||||||
|
title : '',
|
||||||
|
delay : 0,
|
||||||
|
html : false,
|
||||||
|
selector : false,
|
||||||
|
placement : 'top',
|
||||||
|
offset : 0,
|
||||||
|
container : false,
|
||||||
|
fallbackPlacement : 'flip'
|
||||||
}
|
}
|
||||||
|
|
||||||
const HoverState = {
|
const HoverState = {
|
||||||
@@ -100,11 +102,6 @@ const Tooltip = (($) => {
|
|||||||
TOOLTIP_INNER : '.tooltip-inner'
|
TOOLTIP_INNER : '.tooltip-inner'
|
||||||
}
|
}
|
||||||
|
|
||||||
const TetherClass = {
|
|
||||||
element : false,
|
|
||||||
enabled : false
|
|
||||||
}
|
|
||||||
|
|
||||||
const Trigger = {
|
const Trigger = {
|
||||||
HOVER : 'hover',
|
HOVER : 'hover',
|
||||||
FOCUS : 'focus',
|
FOCUS : 'focus',
|
||||||
@@ -128,7 +125,7 @@ const Tooltip = (($) => {
|
|||||||
this._timeout = 0
|
this._timeout = 0
|
||||||
this._hoverState = ''
|
this._hoverState = ''
|
||||||
this._activeTrigger = {}
|
this._activeTrigger = {}
|
||||||
this._tether = null
|
this._popper = null
|
||||||
|
|
||||||
// protected
|
// protected
|
||||||
this.element = element
|
this.element = element
|
||||||
@@ -220,8 +217,6 @@ const Tooltip = (($) => {
|
|||||||
dispose() {
|
dispose() {
|
||||||
clearTimeout(this._timeout)
|
clearTimeout(this._timeout)
|
||||||
|
|
||||||
this.cleanupTether()
|
|
||||||
|
|
||||||
$.removeData(this.element, this.constructor.DATA_KEY)
|
$.removeData(this.element, this.constructor.DATA_KEY)
|
||||||
|
|
||||||
$(this.element).off(this.constructor.EVENT_KEY)
|
$(this.element).off(this.constructor.EVENT_KEY)
|
||||||
@@ -235,7 +230,10 @@ const Tooltip = (($) => {
|
|||||||
this._timeout = null
|
this._timeout = null
|
||||||
this._hoverState = null
|
this._hoverState = null
|
||||||
this._activeTrigger = null
|
this._activeTrigger = null
|
||||||
this._tether = null
|
if (this._popper !== null) {
|
||||||
|
this._popper.destroy()
|
||||||
|
}
|
||||||
|
this._popper = null
|
||||||
|
|
||||||
this.element = null
|
this.element = null
|
||||||
this.config = null
|
this.config = null
|
||||||
@@ -277,6 +275,7 @@ const Tooltip = (($) => {
|
|||||||
this.config.placement
|
this.config.placement
|
||||||
|
|
||||||
const attachment = this._getAttachment(placement)
|
const attachment = this._getAttachment(placement)
|
||||||
|
this.addAttachmentClass(attachment)
|
||||||
|
|
||||||
const container = this.config.container === false ? document.body : $(this.config.container)
|
const container = this.config.container === false ? document.body : $(this.config.container)
|
||||||
|
|
||||||
@@ -288,20 +287,26 @@ const Tooltip = (($) => {
|
|||||||
|
|
||||||
$(this.element).trigger(this.constructor.Event.INSERTED)
|
$(this.element).trigger(this.constructor.Event.INSERTED)
|
||||||
|
|
||||||
this._tether = new Tether({
|
this._popper = new Popper(this.element, tip, {
|
||||||
attachment,
|
placement : attachment,
|
||||||
element : tip,
|
modifiers : {
|
||||||
target : this.element,
|
offset : {
|
||||||
classes : TetherClass,
|
offset : this.config.offset
|
||||||
classPrefix : CLASS_PREFIX,
|
},
|
||||||
offset : this.config.offset,
|
flip : {
|
||||||
constraints : this.config.constraints,
|
behavior : this.config.fallbackPlacement
|
||||||
addTargetClasses: false
|
}
|
||||||
|
},
|
||||||
|
onCreate : (data) => {
|
||||||
|
if (data.originalPlacement !== data.placement) {
|
||||||
|
this._handlePopperPlacementChange(data)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onUpdate : (data) => {
|
||||||
|
this._handlePopperPlacementChange(data)
|
||||||
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
Util.reflow(tip)
|
|
||||||
this._tether.position()
|
|
||||||
|
|
||||||
$(tip).addClass(ClassName.SHOW)
|
$(tip).addClass(ClassName.SHOW)
|
||||||
|
|
||||||
// if this is a touch-enabled device we add extra
|
// if this is a touch-enabled device we add extra
|
||||||
@@ -313,6 +318,9 @@ const Tooltip = (($) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const complete = () => {
|
const complete = () => {
|
||||||
|
if (this.config.animation) {
|
||||||
|
this._fixTransition()
|
||||||
|
}
|
||||||
const prevHoverState = this._hoverState
|
const prevHoverState = this._hoverState
|
||||||
this._hoverState = null
|
this._hoverState = null
|
||||||
|
|
||||||
@@ -327,10 +335,9 @@ const Tooltip = (($) => {
|
|||||||
$(this.tip)
|
$(this.tip)
|
||||||
.one(Util.TRANSITION_END, complete)
|
.one(Util.TRANSITION_END, complete)
|
||||||
.emulateTransitionEnd(Tooltip._TRANSITION_DURATION)
|
.emulateTransitionEnd(Tooltip._TRANSITION_DURATION)
|
||||||
return
|
} else {
|
||||||
|
complete()
|
||||||
}
|
}
|
||||||
|
|
||||||
complete()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -345,7 +352,9 @@ const Tooltip = (($) => {
|
|||||||
this._cleanTipClass()
|
this._cleanTipClass()
|
||||||
this.element.removeAttribute('aria-describedby')
|
this.element.removeAttribute('aria-describedby')
|
||||||
$(this.element).trigger(this.constructor.Event.HIDDEN)
|
$(this.element).trigger(this.constructor.Event.HIDDEN)
|
||||||
this.cleanupTether()
|
if (this._popper !== null) {
|
||||||
|
this._popper.destroy()
|
||||||
|
}
|
||||||
|
|
||||||
if (callback) {
|
if (callback) {
|
||||||
callback()
|
callback()
|
||||||
@@ -385,6 +394,11 @@ const Tooltip = (($) => {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
update() {
|
||||||
|
if (this._popper !== null) {
|
||||||
|
this._popper.scheduleUpdate()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// protected
|
// protected
|
||||||
|
|
||||||
@@ -392,18 +406,18 @@ const Tooltip = (($) => {
|
|||||||
return Boolean(this.getTitle())
|
return Boolean(this.getTitle())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
addAttachmentClass(attachment) {
|
||||||
|
$(this.getTipElement()).addClass(`${CLASS_PREFIX}-${attachment}`)
|
||||||
|
}
|
||||||
|
|
||||||
getTipElement() {
|
getTipElement() {
|
||||||
return this.tip = this.tip || $(this.config.template)[0]
|
return this.tip = this.tip || $(this.config.template)[0]
|
||||||
}
|
}
|
||||||
|
|
||||||
setContent() {
|
setContent() {
|
||||||
const $tip = $(this.getTipElement())
|
const $tip = $(this.getTipElement())
|
||||||
|
|
||||||
this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle())
|
this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle())
|
||||||
|
|
||||||
$tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)
|
$tip.removeClass(`${ClassName.FADE} ${ClassName.SHOW}`)
|
||||||
|
|
||||||
this.cleanupTether()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
setElementContent($element, content) {
|
setElementContent($element, content) {
|
||||||
@@ -434,12 +448,6 @@ const Tooltip = (($) => {
|
|||||||
return title
|
return title
|
||||||
}
|
}
|
||||||
|
|
||||||
cleanupTether() {
|
|
||||||
if (this._tether) {
|
|
||||||
this._tether.destroy()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// private
|
// private
|
||||||
|
|
||||||
@@ -447,14 +455,6 @@ const Tooltip = (($) => {
|
|||||||
return AttachmentMap[placement.toUpperCase()]
|
return AttachmentMap[placement.toUpperCase()]
|
||||||
}
|
}
|
||||||
|
|
||||||
_cleanTipClass() {
|
|
||||||
const $tip = $(this.getTipElement())
|
|
||||||
const tabClass = $tip.attr('class').match(TETHER_PREFIX_REGEX)
|
|
||||||
if (tabClass !== null && tabClass.length > 0) {
|
|
||||||
$tip.removeClass(tabClass.join(''))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
_setListeners() {
|
_setListeners() {
|
||||||
const triggers = this.config.trigger.split(' ')
|
const triggers = this.config.trigger.split(' ')
|
||||||
|
|
||||||
@@ -651,6 +651,31 @@ const Tooltip = (($) => {
|
|||||||
return config
|
return config
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_cleanTipClass() {
|
||||||
|
const $tip = $(this.getTipElement())
|
||||||
|
const tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX)
|
||||||
|
if (tabClass !== null && tabClass.length > 0) {
|
||||||
|
$tip.removeClass(tabClass.join(''))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
_handlePopperPlacementChange(data) {
|
||||||
|
this._cleanTipClass()
|
||||||
|
this.addAttachmentClass(this._getAttachment(data.placement))
|
||||||
|
}
|
||||||
|
|
||||||
|
_fixTransition() {
|
||||||
|
const tip = this.getTipElement()
|
||||||
|
const initConfigAnimation = this.config.animation
|
||||||
|
if (tip.getAttribute('x-placement') !== null) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
$(tip).removeClass(ClassName.FADE)
|
||||||
|
this.config.animation = false
|
||||||
|
this.hide()
|
||||||
|
this.show()
|
||||||
|
this.config.animation = initConfigAnimation
|
||||||
|
}
|
||||||
|
|
||||||
// static
|
// static
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
<!-- jQuery -->
|
<!-- jQuery -->
|
||||||
<script src="../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
<script src="../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
||||||
<script src="../../docs/assets/js/vendor/tether.min.js"></script>
|
<script src="../../docs/assets/js/vendor/popper.min.js"></script>
|
||||||
|
|
||||||
<!-- QUnit -->
|
<!-- QUnit -->
|
||||||
<link rel="stylesheet" href="vendor/qunit.css" media="screen">
|
<link rel="stylesheet" href="vendor/qunit.css" media="screen">
|
||||||
|
|||||||
+24
-24
@@ -275,20 +275,20 @@ $(function () {
|
|||||||
$first.parent('.dropdown')
|
$first.parent('.dropdown')
|
||||||
.on('shown.bs.dropdown', function () {
|
.on('shown.bs.dropdown', function () {
|
||||||
assert.strictEqual($first.parents('.show').length, 1, '"show" class added on click')
|
assert.strictEqual($first.parents('.show').length, 1, '"show" class added on click')
|
||||||
assert.strictEqual($('#qunit-fixture .show').length, 1, 'only one dropdown is shown')
|
assert.strictEqual($('#qunit-fixture .dropdown-menu.show').length, 1, 'only one dropdown is shown')
|
||||||
$(document.body).trigger('click')
|
$(document.body).trigger('click')
|
||||||
}).on('hidden.bs.dropdown', function () {
|
}).on('hidden.bs.dropdown', function () {
|
||||||
assert.strictEqual($('#qunit-fixture .show').length, 0, '"show" class removed')
|
assert.strictEqual($('#qunit-fixture .dropdown-menu.show').length, 0, '"show" class removed')
|
||||||
$last.trigger('click')
|
$last.trigger('click')
|
||||||
})
|
})
|
||||||
|
|
||||||
$last.parent('.btn-group')
|
$last.parent('.btn-group')
|
||||||
.on('shown.bs.dropdown', function () {
|
.on('shown.bs.dropdown', function () {
|
||||||
assert.strictEqual($last.parent('.show').length, 1, '"show" class added on click')
|
assert.strictEqual($last.parent('.show').length, 1, '"show" class added on click')
|
||||||
assert.strictEqual($('#qunit-fixture .show').length, 1, 'only one dropdown is shown')
|
assert.strictEqual($('#qunit-fixture .dropdown-menu.show').length, 1, 'only one dropdown is shown')
|
||||||
$(document.body).trigger('click')
|
$(document.body).trigger('click')
|
||||||
}).on('hidden.bs.dropdown', function () {
|
}).on('hidden.bs.dropdown', function () {
|
||||||
assert.strictEqual($('#qunit-fixture .show').length, 0, '"show" class removed')
|
assert.strictEqual($('#qunit-fixture .dropdown-menu.show').length, 0, '"show" class removed')
|
||||||
done()
|
done()
|
||||||
})
|
})
|
||||||
$first.trigger('click')
|
$first.trigger('click')
|
||||||
@@ -321,24 +321,24 @@ $(function () {
|
|||||||
$first.parent('.dropdown')
|
$first.parent('.dropdown')
|
||||||
.on('shown.bs.dropdown', function () {
|
.on('shown.bs.dropdown', function () {
|
||||||
assert.strictEqual($first.parents('.show').length, 1, '"show" class added on click')
|
assert.strictEqual($first.parents('.show').length, 1, '"show" class added on click')
|
||||||
assert.strictEqual($('#qunit-fixture .show').length, 1, 'only one dropdown is shown')
|
assert.strictEqual($('#qunit-fixture .dropdown-menu.show').length, 1, 'only one dropdown is shown')
|
||||||
var e = $.Event('keyup')
|
var e = $.Event('keyup')
|
||||||
e.which = 9 // Tab
|
e.which = 9 // Tab
|
||||||
$(document.body).trigger(e)
|
$(document.body).trigger(e)
|
||||||
}).on('hidden.bs.dropdown', function () {
|
}).on('hidden.bs.dropdown', function () {
|
||||||
assert.strictEqual($('#qunit-fixture .show').length, 0, '"show" class removed')
|
assert.strictEqual($('#qunit-fixture .dropdown-menu.show').length, 0, '"show" class removed')
|
||||||
$last.trigger('click')
|
$last.trigger('click')
|
||||||
})
|
})
|
||||||
|
|
||||||
$last.parent('.btn-group')
|
$last.parent('.btn-group')
|
||||||
.on('shown.bs.dropdown', function () {
|
.on('shown.bs.dropdown', function () {
|
||||||
assert.strictEqual($last.parent('.show').length, 1, '"show" class added on click')
|
assert.strictEqual($last.parent('.show').length, 1, '"show" class added on click')
|
||||||
assert.strictEqual($('#qunit-fixture .show').length, 1, 'only one dropdown is shown')
|
assert.strictEqual($('#qunit-fixture .dropdown-menu.show').length, 1, 'only one dropdown is shown')
|
||||||
var e = $.Event('keyup')
|
var e = $.Event('keyup')
|
||||||
e.which = 9 // Tab
|
e.which = 9 // Tab
|
||||||
$(document.body).trigger(e)
|
$(document.body).trigger(e)
|
||||||
}).on('hidden.bs.dropdown', function () {
|
}).on('hidden.bs.dropdown', function () {
|
||||||
assert.strictEqual($('#qunit-fixture .show').length, 0, '"show" class removed')
|
assert.strictEqual($('#qunit-fixture .dropdown-menu.show').length, 0, '"show" class removed')
|
||||||
done()
|
done()
|
||||||
})
|
})
|
||||||
$first.trigger('click')
|
$first.trigger('click')
|
||||||
@@ -552,7 +552,7 @@ $(function () {
|
|||||||
})
|
})
|
||||||
|
|
||||||
QUnit.test('should not close the dropdown if the user clicks on a text field', function (assert) {
|
QUnit.test('should not close the dropdown if the user clicks on a text field', function (assert) {
|
||||||
assert.expect(1)
|
assert.expect(2)
|
||||||
var done = assert.async()
|
var done = assert.async()
|
||||||
var dropdownHTML = '<div class="dropdown">'
|
var dropdownHTML = '<div class="dropdown">'
|
||||||
+ '<button type="button" data-toggle="dropdown">Dropdown</button>'
|
+ '<button type="button" data-toggle="dropdown">Dropdown</button>'
|
||||||
@@ -565,23 +565,23 @@ $(function () {
|
|||||||
.find('[data-toggle="dropdown"]')
|
.find('[data-toggle="dropdown"]')
|
||||||
.bootstrapDropdown()
|
.bootstrapDropdown()
|
||||||
|
|
||||||
|
var $textfield = $('#textField')
|
||||||
|
$textfield.on('click', function () {
|
||||||
|
assert.ok($dropdown.parent('.dropdown').hasClass('show'), 'dropdown menu is shown')
|
||||||
|
done()
|
||||||
|
})
|
||||||
|
|
||||||
$dropdown
|
$dropdown
|
||||||
.parent('.dropdown')
|
.parent('.dropdown')
|
||||||
.on('shown.bs.dropdown', function () {
|
.on('shown.bs.dropdown', function () {
|
||||||
$('#textField').trigger('click')
|
|
||||||
assert.ok($dropdown.parent('.dropdown').hasClass('show'), 'dropdown menu is shown')
|
|
||||||
setTimeout(function () {
|
|
||||||
done()
|
|
||||||
}, 300)
|
|
||||||
})
|
|
||||||
.on('hidden.bs.dropdown', function () {
|
|
||||||
assert.ok($dropdown.parent('.dropdown').hasClass('show'), 'dropdown menu is shown')
|
assert.ok($dropdown.parent('.dropdown').hasClass('show'), 'dropdown menu is shown')
|
||||||
|
$textfield.trigger($.Event('click'))
|
||||||
})
|
})
|
||||||
$dropdown.trigger('click')
|
$dropdown.trigger('click')
|
||||||
})
|
})
|
||||||
|
|
||||||
QUnit.test('should not close the dropdown if the user clicks on a textarea', function (assert) {
|
QUnit.test('should not close the dropdown if the user clicks on a textarea', function (assert) {
|
||||||
assert.expect(1)
|
assert.expect(2)
|
||||||
var done = assert.async()
|
var done = assert.async()
|
||||||
var dropdownHTML = '<div class="dropdown">'
|
var dropdownHTML = '<div class="dropdown">'
|
||||||
+ '<button type="button" data-toggle="dropdown">Dropdown</button>'
|
+ '<button type="button" data-toggle="dropdown">Dropdown</button>'
|
||||||
@@ -594,17 +594,17 @@ $(function () {
|
|||||||
.find('[data-toggle="dropdown"]')
|
.find('[data-toggle="dropdown"]')
|
||||||
.bootstrapDropdown()
|
.bootstrapDropdown()
|
||||||
|
|
||||||
|
var $textarea = $('#textArea')
|
||||||
|
$textarea.on('click', function () {
|
||||||
|
assert.ok($dropdown.parent('.dropdown').hasClass('show'), 'dropdown menu is shown')
|
||||||
|
done()
|
||||||
|
})
|
||||||
|
|
||||||
$dropdown
|
$dropdown
|
||||||
.parent('.dropdown')
|
.parent('.dropdown')
|
||||||
.on('shown.bs.dropdown', function () {
|
.on('shown.bs.dropdown', function () {
|
||||||
$('#textArea').trigger('click')
|
|
||||||
assert.ok($dropdown.parent('.dropdown').hasClass('show'), 'dropdown menu is shown')
|
|
||||||
setTimeout(function () {
|
|
||||||
done()
|
|
||||||
}, 300)
|
|
||||||
})
|
|
||||||
.on('hidden.bs.dropdown', function () {
|
|
||||||
assert.ok($dropdown.parent('.dropdown').hasClass('show'), 'dropdown menu is shown')
|
assert.ok($dropdown.parent('.dropdown').hasClass('show'), 'dropdown menu is shown')
|
||||||
|
$textarea.trigger($.Event('click'))
|
||||||
})
|
})
|
||||||
$dropdown.trigger('click')
|
$dropdown.trigger('click')
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -47,13 +47,18 @@ $(function () {
|
|||||||
|
|
||||||
QUnit.test('should render popover element', function (assert) {
|
QUnit.test('should render popover element', function (assert) {
|
||||||
assert.expect(2)
|
assert.expect(2)
|
||||||
var $popover = $('<a href="#" title="mdo" data-content="https://twitter.com/mdo">@mdo</a>')
|
var done = assert.async()
|
||||||
|
$('<a href="#" title="mdo" data-content="https://twitter.com/mdo">@mdo</a>')
|
||||||
.appendTo('#qunit-fixture')
|
.appendTo('#qunit-fixture')
|
||||||
|
.on('shown.bs.popover', function () {
|
||||||
|
assert.notEqual($('.popover').length, 0, 'popover was inserted')
|
||||||
|
$(this).bootstrapPopover('hide')
|
||||||
|
})
|
||||||
|
.on('hidden.bs.popover', function () {
|
||||||
|
assert.strictEqual($('.popover').length, 0, 'popover removed')
|
||||||
|
done()
|
||||||
|
})
|
||||||
.bootstrapPopover('show')
|
.bootstrapPopover('show')
|
||||||
|
|
||||||
assert.notEqual($('.popover').length, 0, 'popover was inserted')
|
|
||||||
$popover.bootstrapPopover('hide')
|
|
||||||
assert.strictEqual($('.popover').length, 0, 'popover removed')
|
|
||||||
})
|
})
|
||||||
|
|
||||||
QUnit.test('should store popover instance in popover data object', function (assert) {
|
QUnit.test('should store popover instance in popover data object', function (assert) {
|
||||||
|
|||||||
+27
-103
@@ -111,7 +111,7 @@ $(function () {
|
|||||||
|
|
||||||
assert
|
assert
|
||||||
.ok($('.tooltip')
|
.ok($('.tooltip')
|
||||||
.is('.fade.bs-tether-element-attached-top.bs-tether-element-attached-center.show'), 'has correct classes applied')
|
.is('.fade.bs-tooltip-bottom.show'), 'has correct classes applied')
|
||||||
|
|
||||||
$tooltip.bootstrapTooltip('hide')
|
$tooltip.bootstrapTooltip('hide')
|
||||||
|
|
||||||
@@ -364,32 +364,29 @@ $(function () {
|
|||||||
})
|
})
|
||||||
|
|
||||||
QUnit.test('should add position class before positioning so that position-specific styles are taken into account', function (assert) {
|
QUnit.test('should add position class before positioning so that position-specific styles are taken into account', function (assert) {
|
||||||
assert.expect(1)
|
assert.expect(2)
|
||||||
|
var done = assert.async()
|
||||||
var styles = '<style>'
|
var styles = '<style>'
|
||||||
+ '.tooltip.right { white-space: nowrap; }'
|
+ '.bs-tooltip-right { white-space: nowrap; }'
|
||||||
+ '.tooltip.right .tooltip-inner { max-width: none; }'
|
+ '.bs-tooltip-right .tooltip-inner { max-width: none; }'
|
||||||
+ '</style>'
|
+ '</style>'
|
||||||
var $styles = $(styles).appendTo('head')
|
var $styles = $(styles).appendTo('head')
|
||||||
|
|
||||||
var $container = $('<div/>').appendTo('#qunit-fixture')
|
var $container = $('<div/>').appendTo('#qunit-fixture')
|
||||||
var $target = $('<a href="#" rel="tooltip" title="very very very very very very very very long tooltip in one line"/>')
|
$('<a href="#" rel="tooltip" title="very very very very very very very very long tooltip in one line"/>')
|
||||||
.appendTo($container)
|
.appendTo($container)
|
||||||
.bootstrapTooltip({
|
.bootstrapTooltip({
|
||||||
placement: 'right'
|
placement: 'right',
|
||||||
|
trigger: 'manual'
|
||||||
|
})
|
||||||
|
.on('inserted.bs.tooltip', function () {
|
||||||
|
var $tooltip = $($(this).data('bs.tooltip').tip)
|
||||||
|
assert.ok($tooltip.hasClass('bs-tooltip-right'))
|
||||||
|
assert.ok($tooltip.attr('style') === undefined)
|
||||||
|
$styles.remove()
|
||||||
|
done()
|
||||||
})
|
})
|
||||||
.bootstrapTooltip('show')
|
.bootstrapTooltip('show')
|
||||||
|
|
||||||
var $tooltip = $($target.data('bs.tooltip').tip)
|
|
||||||
|
|
||||||
// this is some dumb hack stuff because sub pixels in firefox
|
|
||||||
var top = Math.round($target.offset().top + $target[0].offsetHeight / 2 - $tooltip[0].offsetHeight / 2)
|
|
||||||
var top2 = Math.round($tooltip.offset().top)
|
|
||||||
var topDiff = top - top2
|
|
||||||
assert.ok(topDiff <= 1 && topDiff >= -1)
|
|
||||||
$target.bootstrapTooltip('hide')
|
|
||||||
|
|
||||||
$container.remove()
|
|
||||||
$styles.remove()
|
|
||||||
})
|
})
|
||||||
|
|
||||||
QUnit.test('should use title attribute for tooltip text', function (assert) {
|
QUnit.test('should use title attribute for tooltip text', function (assert) {
|
||||||
@@ -459,7 +456,7 @@ $(function () {
|
|||||||
assert.expect(1)
|
assert.expect(1)
|
||||||
var done = assert.async()
|
var done = assert.async()
|
||||||
|
|
||||||
var containerHTML = '<div>'
|
var containerHTML = '<div id="test">'
|
||||||
+ '<p style="margin-top: 200px">'
|
+ '<p style="margin-top: 200px">'
|
||||||
+ '<a href="#" title="very very very very very very very long tooltip">Hover me</a>'
|
+ '<a href="#" title="very very very very very very very long tooltip">Hover me</a>'
|
||||||
+ '</p>'
|
+ '</p>'
|
||||||
@@ -476,21 +473,24 @@ $(function () {
|
|||||||
})
|
})
|
||||||
.appendTo('#qunit-fixture')
|
.appendTo('#qunit-fixture')
|
||||||
|
|
||||||
var $trigger = $container
|
$container
|
||||||
.find('a')
|
.find('a')
|
||||||
.css('margin-top', 200)
|
.css('margin-top', 200)
|
||||||
.bootstrapTooltip({
|
.bootstrapTooltip({
|
||||||
placement: 'top',
|
placement: 'top',
|
||||||
animate: false
|
animate: false
|
||||||
})
|
})
|
||||||
|
.on('shown.bs.tooltip', function () {
|
||||||
|
var $tooltip = $($(this).data('bs.tooltip').tip)
|
||||||
|
if (/iPhone|iPad|iPod/.test(navigator.userAgent)) {
|
||||||
|
assert.ok(Math.round($tooltip.offset().top + $tooltip.outerHeight()) <= Math.round($(this).offset().top))
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
assert.ok(Math.round($tooltip.offset().top + $tooltip.outerHeight()) >= Math.round($(this).offset().top))
|
||||||
|
}
|
||||||
|
done()
|
||||||
|
})
|
||||||
.bootstrapTooltip('show')
|
.bootstrapTooltip('show')
|
||||||
|
|
||||||
var $tooltip = $($trigger.data('bs.tooltip').tip)
|
|
||||||
|
|
||||||
setTimeout(function () {
|
|
||||||
assert.ok(Math.round($tooltip.offset().top + $tooltip.outerHeight()) <= Math.round($trigger.offset().top))
|
|
||||||
done()
|
|
||||||
}, 0)
|
|
||||||
})
|
})
|
||||||
|
|
||||||
QUnit.test('should show tooltip if leave event hasn\'t occurred before delay expires', function (assert) {
|
QUnit.test('should show tooltip if leave event hasn\'t occurred before delay expires', function (assert) {
|
||||||
@@ -629,45 +629,6 @@ $(function () {
|
|||||||
$tooltip.trigger('mouseenter')
|
$tooltip.trigger('mouseenter')
|
||||||
})
|
})
|
||||||
|
|
||||||
QUnit.test('should correctly position tooltips on SVG elements', function (assert) {
|
|
||||||
if (!window.SVGElement) {
|
|
||||||
// Skip IE8 since it doesn't support SVG
|
|
||||||
assert.expect(0)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
assert.expect(2)
|
|
||||||
|
|
||||||
var done = assert.async()
|
|
||||||
|
|
||||||
var styles = '<style>'
|
|
||||||
+ '.tooltip, .tooltip *, .tooltip *:before, .tooltip *:after { box-sizing: border-box; }'
|
|
||||||
+ '.tooltip { position: absolute; }'
|
|
||||||
+ '.tooltip .tooltip-inner { width: 24px; height: 24px; font-family: Helvetica; }'
|
|
||||||
+ '</style>'
|
|
||||||
var $styles = $(styles).appendTo('head')
|
|
||||||
|
|
||||||
$('#qunit-fixture').append(
|
|
||||||
'<div style="position: fixed; top: 0; left: 0;">'
|
|
||||||
+ ' <svg width="200" height="200">'
|
|
||||||
+ ' <circle cx="100" cy="100" r="10" title="m" id="theCircle" />'
|
|
||||||
+ ' </svg>'
|
|
||||||
+ '</div>')
|
|
||||||
var $circle = $('#theCircle')
|
|
||||||
|
|
||||||
$circle
|
|
||||||
.on('shown.bs.tooltip', function () {
|
|
||||||
var offset = $('.tooltip').offset()
|
|
||||||
$styles.remove()
|
|
||||||
assert.ok(Math.abs(offset.left - 88) <= 1, 'tooltip has correct horizontal location')
|
|
||||||
$circle.bootstrapTooltip('hide')
|
|
||||||
assert.strictEqual($('.tooltip').length, 0, 'tooltip removed from dom')
|
|
||||||
done()
|
|
||||||
})
|
|
||||||
.bootstrapTooltip({ placement: 'top', trigger: 'manual' })
|
|
||||||
|
|
||||||
$circle.bootstrapTooltip('show')
|
|
||||||
})
|
|
||||||
|
|
||||||
QUnit.test('should not reload the tooltip on subsequent mouseenter events', function (assert) {
|
QUnit.test('should not reload the tooltip on subsequent mouseenter events', function (assert) {
|
||||||
assert.expect(1)
|
assert.expect(1)
|
||||||
var titleHtml = function () {
|
var titleHtml = function () {
|
||||||
@@ -731,43 +692,6 @@ $(function () {
|
|||||||
assert.strictEqual(currentUid, $('#tt-content').text())
|
assert.strictEqual(currentUid, $('#tt-content').text())
|
||||||
})
|
})
|
||||||
|
|
||||||
QUnit.test('should correctly position tooltips on transformed elements', function (assert) {
|
|
||||||
var styleProps = document.documentElement.style
|
|
||||||
if (!('transform' in styleProps) && !('webkitTransform' in styleProps) && !('msTransform' in styleProps)) {
|
|
||||||
assert.expect(0)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
assert.expect(2)
|
|
||||||
|
|
||||||
var done = assert.async()
|
|
||||||
|
|
||||||
var styles = '<style>'
|
|
||||||
+ '#qunit-fixture { top: 0; left: 0; }'
|
|
||||||
+ '.tooltip, .tooltip *, .tooltip *:before, .tooltip *:after { box-sizing: border-box; }'
|
|
||||||
+ '.tooltip { position: absolute; }'
|
|
||||||
+ '.tooltip .tooltip-inner { width: 24px; height: 24px; font-family: Helvetica; }'
|
|
||||||
+ '#target { position: absolute; top: 100px; left: 50px; width: 100px; height: 200px; -webkit-transform: rotate(270deg); -ms-transform: rotate(270deg); transform: rotate(270deg); }'
|
|
||||||
+ '</style>'
|
|
||||||
var $styles = $(styles).appendTo('head')
|
|
||||||
|
|
||||||
var $element = $('<div id="target" title="1"/>').appendTo('#qunit-fixture')
|
|
||||||
|
|
||||||
$element
|
|
||||||
.on('shown.bs.tooltip', function () {
|
|
||||||
var offset = $('.tooltip').offset()
|
|
||||||
$styles.remove()
|
|
||||||
assert.ok(Math.abs(offset.left - 88) <= 1, 'tooltip has correct horizontal location')
|
|
||||||
assert.ok(Math.abs(offset.top - 126) <= 1, 'tooltip has correct vertical location')
|
|
||||||
$element.bootstrapTooltip('hide')
|
|
||||||
done()
|
|
||||||
})
|
|
||||||
.bootstrapTooltip({
|
|
||||||
trigger: 'manual'
|
|
||||||
})
|
|
||||||
|
|
||||||
$element.bootstrapTooltip('show')
|
|
||||||
})
|
|
||||||
|
|
||||||
QUnit.test('should do nothing when an attempt is made to hide an uninitialized tooltip', function (assert) {
|
QUnit.test('should do nothing when an attempt is made to hide an uninitialized tooltip', function (assert) {
|
||||||
assert.expect(1)
|
assert.expect(1)
|
||||||
|
|
||||||
|
|||||||
@@ -58,9 +58,67 @@
|
|||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-12 mt-4">
|
||||||
|
<div class="btn-group dropup">
|
||||||
|
<button type="button" class="btn btn-secondary">Dropup split</button>
|
||||||
|
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
|
<span class="sr-only">Dropup split</span>
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<a class="dropdown-item" href="#">Action</a>
|
||||||
|
<a class="dropdown-item" href="#">Another action</a>
|
||||||
|
<a class="dropdown-item" href="#">Something else here</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="btn-group dropup">
|
||||||
|
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropup</button>
|
||||||
|
<div class="dropdown-menu">
|
||||||
|
<a class="dropdown-item" href="#">Action</a>
|
||||||
|
<a class="dropdown-item" href="#">Another action</a>
|
||||||
|
<a class="dropdown-item" href="#">Something else here</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="btn-group">
|
||||||
|
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
|
This dropdown's menu is right-aligned
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu dropdown-menu-right">
|
||||||
|
<button class="dropdown-item" type="button">Action</button>
|
||||||
|
<button class="dropdown-item" type="button">Another action</button>
|
||||||
|
<button class="dropdown-item" type="button">Something else here</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-12 mt-4">
|
||||||
|
<div class="btn-group dropup" role="group">
|
||||||
|
<a href="#" class="btn btn-secondary">Dropup split align right</a>
|
||||||
|
<button type="button" id="dropdown-page-subheader-button-3" class="btn btn-secondary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||||||
|
<span class="sr-only">Product actions</span>
|
||||||
|
</button>
|
||||||
|
<div class="dropdown-menu dropdown-menu-right">
|
||||||
|
<button class="dropdown-item" type="button">Action</button>
|
||||||
|
<button class="dropdown-item" type="button">Another action</button>
|
||||||
|
<button class="dropdown-item" type="button">Something else here with a long text</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="btn-group dropup">
|
||||||
|
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Dropup align right</button>
|
||||||
|
<div class="dropdown-menu dropdown-menu-right">
|
||||||
|
<button class="dropdown-item" type="button">Action</button>
|
||||||
|
<button class="dropdown-item" type="button">Another action</button>
|
||||||
|
<button class="dropdown-item" type="button">Something else here with a long text</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
||||||
|
<script src="../../../docs/assets/js/vendor/popper.min.js"></script>
|
||||||
<script src="../../dist/util.js"></script>
|
<script src="../../dist/util.js"></script>
|
||||||
<script src="../../dist/dropdown.js"></script>
|
<script src="../../dist/dropdown.js"></script>
|
||||||
<script src="../../dist/collapse.js"></script>
|
<script src="../../dist/collapse.js"></script>
|
||||||
|
|||||||
@@ -170,7 +170,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
||||||
<script src="../../../docs/assets/js/vendor/tether.min.js"></script>
|
<script src="../../../docs/assets/js/vendor/popper.min.js"></script>
|
||||||
<script src="../../dist/util.js"></script>
|
<script src="../../dist/util.js"></script>
|
||||||
<script src="../../dist/modal.js"></script>
|
<script src="../../dist/modal.js"></script>
|
||||||
<script src="../../dist/collapse.js"></script>
|
<script src="../../dist/collapse.js"></script>
|
||||||
|
|||||||
@@ -10,7 +10,11 @@
|
|||||||
<div class="container">
|
<div class="container">
|
||||||
<h1>Popover <small>Bootstrap Visual Test</small></h1>
|
<h1>Popover <small>Bootstrap Visual Test</small></h1>
|
||||||
|
|
||||||
<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="top" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus.">
|
<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="auto" data-content="Vivamus sagittis lacus vel augue laoreet rutrum faucibus.">
|
||||||
|
Popover on auto
|
||||||
|
</button>
|
||||||
|
|
||||||
|
<button type="button" class="btn btn-secondary" data-container="body" data-toggle="popover" data-placement="top" data-content="Default placement was on top but not enough place">
|
||||||
Popover on top
|
Popover on top
|
||||||
</button>
|
</button>
|
||||||
|
|
||||||
@@ -29,7 +33,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
||||||
<script src="../../../docs/assets/js/vendor/tether.min.js"></script>
|
<script src="../../../docs/assets/js/vendor/popper.min.js"></script>
|
||||||
<script src="../../dist/util.js"></script>
|
<script src="../../dist/util.js"></script>
|
||||||
<script src="../../dist/tooltip.js"></script>
|
<script src="../../dist/tooltip.js"></script>
|
||||||
<script src="../../dist/popover.js"></script>
|
<script src="../../dist/popover.js"></script>
|
||||||
|
|||||||
@@ -87,6 +87,7 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
||||||
|
<script src="../../../docs/assets/js/vendor/popper.min.js"></script>
|
||||||
<script src="../../dist/util.js"></script>
|
<script src="../../dist/util.js"></script>
|
||||||
<script src="../../dist/scrollspy.js"></script>
|
<script src="../../dist/scrollspy.js"></script>
|
||||||
<script src="../../dist/dropdown.js"></script>
|
<script src="../../dist/dropdown.js"></script>
|
||||||
|
|||||||
@@ -5,6 +5,19 @@
|
|||||||
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
<link rel="stylesheet" href="../../../dist/css/bootstrap.min.css">
|
<link rel="stylesheet" href="../../../dist/css/bootstrap.min.css">
|
||||||
<title>Tooltip</title>
|
<title>Tooltip</title>
|
||||||
|
<style>
|
||||||
|
#target {
|
||||||
|
border: 1px solid;
|
||||||
|
width: 100px;
|
||||||
|
height: 50px;
|
||||||
|
border: 1px solid;
|
||||||
|
margin-left: 50px;
|
||||||
|
-webkit-transform: rotate(270deg);
|
||||||
|
-ms-transform: rotate(270deg);
|
||||||
|
transform: rotate(270deg);
|
||||||
|
margin-top: 100px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
@@ -15,6 +28,9 @@
|
|||||||
<hr>
|
<hr>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="auto" title="Tooltip on auto">
|
||||||
|
Tooltip on auto
|
||||||
|
</button>
|
||||||
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="top" title="Tooltip on top">
|
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="top" title="Tooltip on top">
|
||||||
Tooltip on top
|
Tooltip on top
|
||||||
</button>
|
</button>
|
||||||
@@ -30,17 +46,25 @@
|
|||||||
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-html="true" title="<em>Tooltip</em> <u>with</u> <b>HTML</b>">
|
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-html="true" title="<em>Tooltip</em> <u>with</u> <b>HTML</b>">
|
||||||
Tooltip with HTML
|
Tooltip with HTML
|
||||||
</button>
|
</button>
|
||||||
|
<svg width="30" height="20">
|
||||||
|
<circle cx="15" cy="10" r="10" fill="#62448F" data-toggle="tooltip" data-placement="top" title="Tooltip on SVG" />
|
||||||
|
</svg>
|
||||||
</p>
|
</p>
|
||||||
|
<div id="target" title="Test tooltip on transformed element"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
<script src="../../../docs/assets/js/vendor/jquery-slim.min.js"></script>
|
||||||
<script src="../../../docs/assets/js/vendor/tether.min.js"></script>
|
<script src="../../../docs/assets/js/vendor/popper.min.js"></script>
|
||||||
<script src="../../dist/util.js"></script>
|
<script src="../../dist/util.js"></script>
|
||||||
<script src="../../dist/tooltip.js"></script>
|
<script src="../../dist/tooltip.js"></script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
$(function () {
|
$(function () {
|
||||||
$('[data-toggle="tooltip"]').tooltip()
|
$('[data-toggle="tooltip"]').tooltip()
|
||||||
|
$('#target').tooltip({
|
||||||
|
placement : 'top',
|
||||||
|
trigger : 'manual'
|
||||||
|
}).tooltip('show')
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
|
|||||||
+1
-1
@@ -71,7 +71,7 @@
|
|||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"jquery": ">=1.9.1",
|
"jquery": ">=1.9.1",
|
||||||
"tether": "^1.4.0"
|
"popper.js": "^1.9.9"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"autoprefixer": "^6.7.7",
|
"autoprefixer": "^6.7.7",
|
||||||
|
|||||||
+4
-30
@@ -23,6 +23,8 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
||||||
|
// Just add .dropup after the standard .dropdown class and you're set.
|
||||||
.dropup {
|
.dropup {
|
||||||
.dropdown-toggle {
|
.dropdown-toggle {
|
||||||
&::after {
|
&::after {
|
||||||
@@ -100,29 +102,14 @@
|
|||||||
|
|
||||||
// Open state for the dropdown
|
// Open state for the dropdown
|
||||||
.show {
|
.show {
|
||||||
// Show the menu
|
|
||||||
> .dropdown-menu {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Remove the outline when :focus is triggered
|
// Remove the outline when :focus is triggered
|
||||||
> a {
|
> a {
|
||||||
outline: 0;
|
outline: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Menu positioning
|
.dropdown-menu.show {
|
||||||
//
|
display: block;
|
||||||
// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown
|
|
||||||
// menu with the parent.
|
|
||||||
.dropdown-menu-right {
|
|
||||||
right: 0;
|
|
||||||
left: auto; // Reset the default from `.dropdown-menu`
|
|
||||||
}
|
|
||||||
|
|
||||||
.dropdown-menu-left {
|
|
||||||
right: auto;
|
|
||||||
left: 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Dropdown section headers
|
// Dropdown section headers
|
||||||
@@ -134,16 +121,3 @@
|
|||||||
color: $dropdown-header-color;
|
color: $dropdown-header-color;
|
||||||
white-space: nowrap; // as with > li > a
|
white-space: nowrap; // as with > li > a
|
||||||
}
|
}
|
||||||
|
|
||||||
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
|
||||||
//
|
|
||||||
// Just add .dropup after the standard .dropdown class and you're set.
|
|
||||||
|
|
||||||
.dropup {
|
|
||||||
// Different positioning for bottom up menu
|
|
||||||
.dropdown-menu {
|
|
||||||
top: auto;
|
|
||||||
bottom: 100%;
|
|
||||||
margin-bottom: $dropdown-margin-top;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|||||||
+10
-10
@@ -75,6 +75,12 @@
|
|||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.dropdown-menu {
|
||||||
|
position: static !important;
|
||||||
|
float: none;
|
||||||
|
transform: unset !important;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -136,13 +142,6 @@
|
|||||||
|
|
||||||
&#{$infix} {
|
&#{$infix} {
|
||||||
@include media-breakpoint-down($breakpoint) {
|
@include media-breakpoint-down($breakpoint) {
|
||||||
.navbar-nav {
|
|
||||||
.dropdown-menu {
|
|
||||||
position: static;
|
|
||||||
float: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
> .container,
|
> .container,
|
||||||
> .container-fluid {
|
> .container-fluid {
|
||||||
padding-right: 0;
|
padding-right: 0;
|
||||||
@@ -159,7 +158,8 @@
|
|||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
|
|
||||||
.dropdown-menu {
|
.dropdown-menu {
|
||||||
position: absolute;
|
position: absolute !important;
|
||||||
|
top: 100% !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-link {
|
.nav-link {
|
||||||
@@ -230,7 +230,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.navbar-toggler-icon {
|
.navbar-toggler-icon {
|
||||||
background-image: $navbar-light-toggler-bg;
|
background-image: $navbar-light-toggler-icon-bg;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-text {
|
.navbar-text {
|
||||||
@@ -275,7 +275,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.navbar-toggler-icon {
|
.navbar-toggler-icon {
|
||||||
background-image: $navbar-inverse-toggler-bg;
|
background-image: $navbar-inverse-toggler-icon-bg;
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-text {
|
.navbar-text {
|
||||||
|
|||||||
+84
-62
@@ -18,74 +18,105 @@
|
|||||||
@include border-radius($border-radius-lg);
|
@include border-radius($border-radius-lg);
|
||||||
@include box-shadow($popover-box-shadow);
|
@include box-shadow($popover-box-shadow);
|
||||||
|
|
||||||
|
// Arrows
|
||||||
|
//
|
||||||
|
// .arrow is outer, .arrow::after is inner
|
||||||
|
|
||||||
|
.arrow {
|
||||||
|
position: absolute;
|
||||||
|
display: block;
|
||||||
|
width: $popover-arrow-width;
|
||||||
|
height: $popover-arrow-height;
|
||||||
|
}
|
||||||
|
|
||||||
|
.arrow::before,
|
||||||
|
.arrow::after {
|
||||||
|
position: absolute;
|
||||||
|
display: block;
|
||||||
|
border-color: transparent;
|
||||||
|
border-style: solid;
|
||||||
|
}
|
||||||
|
|
||||||
|
.arrow::before {
|
||||||
|
content: "";
|
||||||
|
border-width: $popover-arrow-outer-width;
|
||||||
|
}
|
||||||
|
.arrow::after {
|
||||||
|
content: "";
|
||||||
|
border-width: $popover-arrow-outer-width;
|
||||||
|
}
|
||||||
|
|
||||||
// Popover directions
|
// Popover directions
|
||||||
|
|
||||||
&.popover-top,
|
&.bs-popover-top {
|
||||||
&.bs-tether-element-attached-bottom {
|
margin-bottom: $popover-arrow-width;
|
||||||
margin-top: -$popover-arrow-width;
|
|
||||||
|
|
||||||
&::before,
|
.arrow {
|
||||||
&::after {
|
bottom: 0;
|
||||||
left: 50%;
|
}
|
||||||
|
|
||||||
|
.arrow::before,
|
||||||
|
.arrow::after {
|
||||||
border-bottom-width: 0;
|
border-bottom-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::before {
|
.arrow::before {
|
||||||
bottom: -$popover-arrow-outer-width;
|
bottom: -$popover-arrow-outer-width;
|
||||||
margin-left: -$popover-arrow-outer-width;
|
margin-left: -($popover-arrow-outer-width - 5);
|
||||||
border-top-color: $popover-arrow-outer-color;
|
border-top-color: $popover-arrow-outer-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::after {
|
.arrow::after {
|
||||||
bottom: -($popover-arrow-outer-width - 1);
|
bottom: -($popover-arrow-outer-width - 1);
|
||||||
margin-left: -$popover-arrow-width;
|
margin-left: -($popover-arrow-outer-width - 5);
|
||||||
border-top-color: $popover-arrow-color;
|
border-top-color: $popover-arrow-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.popover-right,
|
&.bs-popover-right {
|
||||||
&.bs-tether-element-attached-left {
|
|
||||||
margin-left: $popover-arrow-width;
|
margin-left: $popover-arrow-width;
|
||||||
|
|
||||||
&::before,
|
.arrow {
|
||||||
&::after {
|
left: 0;
|
||||||
top: 50%;
|
}
|
||||||
|
|
||||||
|
.arrow::before,
|
||||||
|
.arrow::after {
|
||||||
|
margin-top: -($popover-arrow-outer-width - 3);
|
||||||
border-left-width: 0;
|
border-left-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::before {
|
.arrow::before {
|
||||||
left: -$popover-arrow-outer-width;
|
left: -$popover-arrow-outer-width;
|
||||||
margin-top: -$popover-arrow-outer-width;
|
|
||||||
border-right-color: $popover-arrow-outer-color;
|
border-right-color: $popover-arrow-outer-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::after {
|
.arrow::after {
|
||||||
left: -($popover-arrow-outer-width - 1);
|
left: -($popover-arrow-outer-width - 1);
|
||||||
margin-top: -($popover-arrow-outer-width - 1);
|
|
||||||
border-right-color: $popover-arrow-color;
|
border-right-color: $popover-arrow-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.popover-bottom,
|
&.bs-popover-bottom {
|
||||||
&.bs-tether-element-attached-top {
|
|
||||||
margin-top: $popover-arrow-width;
|
margin-top: $popover-arrow-width;
|
||||||
|
|
||||||
&::before,
|
.arrow {
|
||||||
&::after {
|
top: 0;
|
||||||
left: 50%;
|
}
|
||||||
|
|
||||||
|
.arrow::before,
|
||||||
|
.arrow::after {
|
||||||
|
margin-left: -($popover-arrow-width - 3);
|
||||||
border-top-width: 0;
|
border-top-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::before {
|
.arrow::before {
|
||||||
top: -$popover-arrow-outer-width;
|
top: -$popover-arrow-outer-width;
|
||||||
margin-left: -$popover-arrow-outer-width;
|
|
||||||
border-bottom-color: $popover-arrow-outer-color;
|
border-bottom-color: $popover-arrow-outer-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::after {
|
.arrow::after {
|
||||||
top: -($popover-arrow-outer-width - 1);
|
top: -($popover-arrow-outer-width - 1);
|
||||||
margin-left: -$popover-arrow-width;
|
|
||||||
border-bottom-color: $popover-arrow-color;
|
border-bottom-color: $popover-arrow-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -102,28 +133,43 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
&.popover-left,
|
&.bs-popover-left {
|
||||||
&.bs-tether-element-attached-right {
|
margin-right: $popover-arrow-width;
|
||||||
margin-left: -$popover-arrow-width;
|
|
||||||
|
|
||||||
&::before,
|
.arrow {
|
||||||
&::after {
|
right: 0;
|
||||||
top: 50%;
|
}
|
||||||
|
|
||||||
|
.arrow::before,
|
||||||
|
.arrow::after {
|
||||||
|
margin-top: -($popover-arrow-outer-width - 3);
|
||||||
border-right-width: 0;
|
border-right-width: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::before {
|
.arrow::before {
|
||||||
right: -$popover-arrow-outer-width;
|
right: -$popover-arrow-outer-width;
|
||||||
margin-top: -$popover-arrow-outer-width;
|
|
||||||
border-left-color: $popover-arrow-outer-color;
|
border-left-color: $popover-arrow-outer-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::after {
|
.arrow::after {
|
||||||
right: -($popover-arrow-outer-width - 1);
|
right: -($popover-arrow-outer-width - 1);
|
||||||
margin-top: -($popover-arrow-outer-width - 1);
|
|
||||||
border-left-color: $popover-arrow-color;
|
border-left-color: $popover-arrow-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
&.bs-popover-auto {
|
||||||
|
&[x-placement^="top"] {
|
||||||
|
@extend .bs-popover-top;
|
||||||
|
}
|
||||||
|
&[x-placement^="right"] {
|
||||||
|
@extend .bs-popover-right;
|
||||||
|
}
|
||||||
|
&[x-placement^="bottom"] {
|
||||||
|
@extend .bs-popover-bottom;
|
||||||
|
}
|
||||||
|
&[x-placement^="left"] {
|
||||||
|
@extend .bs-popover-left;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -147,27 +193,3 @@
|
|||||||
padding: $popover-content-padding-y $popover-content-padding-x;
|
padding: $popover-content-padding-y $popover-content-padding-x;
|
||||||
color: $popover-content-color;
|
color: $popover-content-color;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Arrows
|
|
||||||
//
|
|
||||||
// .popover-arrow is outer, .popover-arrow::after is inner
|
|
||||||
|
|
||||||
.popover::before,
|
|
||||||
.popover::after {
|
|
||||||
position: absolute;
|
|
||||||
display: block;
|
|
||||||
width: 0;
|
|
||||||
height: 0;
|
|
||||||
border-color: transparent;
|
|
||||||
border-style: solid;
|
|
||||||
}
|
|
||||||
|
|
||||||
.popover::before {
|
|
||||||
content: "";
|
|
||||||
border-width: $popover-arrow-outer-width;
|
|
||||||
}
|
|
||||||
.popover::after {
|
|
||||||
content: "";
|
|
||||||
border-width: $popover-arrow-width;
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -11,6 +11,7 @@
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: $progress-bg;
|
background-color: $progress-bg;
|
||||||
@include border-radius($progress-border-radius);
|
@include border-radius($progress-border-radius);
|
||||||
|
@include box-shadow($progress-box-shadow);
|
||||||
}
|
}
|
||||||
|
|
||||||
.progress-bar {
|
.progress-bar {
|
||||||
|
|||||||
+53
-36
@@ -3,6 +3,7 @@
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: $zindex-tooltip;
|
z-index: $zindex-tooltip;
|
||||||
display: block;
|
display: block;
|
||||||
|
margin: $tooltip-margin;
|
||||||
// Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
|
// Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
|
||||||
// So reset our font and text properties to avoid inheriting weird values.
|
// So reset our font and text properties to avoid inheriting weird values.
|
||||||
@include reset-text();
|
@include reset-text();
|
||||||
@@ -13,62 +14,86 @@
|
|||||||
|
|
||||||
&.show { opacity: $tooltip-opacity; }
|
&.show { opacity: $tooltip-opacity; }
|
||||||
|
|
||||||
&.tooltip-top,
|
.arrow {
|
||||||
&.bs-tether-element-attached-bottom {
|
position: absolute;
|
||||||
padding: $tooltip-arrow-width 0;
|
display: block;
|
||||||
margin-top: -$tooltip-margin;
|
width: $tooltip-arrow-width;
|
||||||
|
height: $tooltip-arrow-height;
|
||||||
|
}
|
||||||
|
|
||||||
.tooltip-inner::before {
|
&.bs-tooltip-top {
|
||||||
|
padding: $tooltip-arrow-width 0;
|
||||||
|
.arrow {
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
left: 50%;
|
}
|
||||||
margin-left: -$tooltip-arrow-width;
|
|
||||||
|
.arrow::before {
|
||||||
|
margin-left: -($tooltip-arrow-width - 2);
|
||||||
content: "";
|
content: "";
|
||||||
border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
|
border-width: $tooltip-arrow-width $tooltip-arrow-width 0;
|
||||||
border-top-color: $tooltip-arrow-color;
|
border-top-color: $tooltip-arrow-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&.tooltip-right,
|
&.bs-tooltip-right {
|
||||||
&.bs-tether-element-attached-left {
|
|
||||||
padding: 0 $tooltip-arrow-width;
|
padding: 0 $tooltip-arrow-width;
|
||||||
margin-left: $tooltip-margin;
|
.arrow {
|
||||||
|
|
||||||
.tooltip-inner::before {
|
|
||||||
top: 50%;
|
|
||||||
left: 0;
|
left: 0;
|
||||||
margin-top: -$tooltip-arrow-width;
|
}
|
||||||
|
|
||||||
|
.arrow::before {
|
||||||
|
margin-top: -($tooltip-arrow-width - 2);
|
||||||
content: "";
|
content: "";
|
||||||
border-width: $tooltip-arrow-width $tooltip-arrow-width $tooltip-arrow-width 0;
|
border-width: $tooltip-arrow-width $tooltip-arrow-width $tooltip-arrow-width 0;
|
||||||
border-right-color: $tooltip-arrow-color;
|
border-right-color: $tooltip-arrow-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&.tooltip-bottom,
|
&.bs-tooltip-bottom {
|
||||||
&.bs-tether-element-attached-top {
|
|
||||||
padding: $tooltip-arrow-width 0;
|
padding: $tooltip-arrow-width 0;
|
||||||
margin-top: $tooltip-margin;
|
.arrow {
|
||||||
|
|
||||||
.tooltip-inner::before {
|
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 50%;
|
}
|
||||||
margin-left: -$tooltip-arrow-width;
|
|
||||||
|
.arrow::before {
|
||||||
|
margin-left: -($tooltip-arrow-width - 2);
|
||||||
content: "";
|
content: "";
|
||||||
border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
|
border-width: 0 $tooltip-arrow-width $tooltip-arrow-width;
|
||||||
border-bottom-color: $tooltip-arrow-color;
|
border-bottom-color: $tooltip-arrow-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&.tooltip-left,
|
&.bs-tooltip-left {
|
||||||
&.bs-tether-element-attached-right {
|
|
||||||
padding: 0 $tooltip-arrow-width;
|
padding: 0 $tooltip-arrow-width;
|
||||||
margin-left: -$tooltip-margin;
|
.arrow {
|
||||||
|
|
||||||
.tooltip-inner::before {
|
|
||||||
top: 50%;
|
|
||||||
right: 0;
|
right: 0;
|
||||||
margin-top: -$tooltip-arrow-width;
|
}
|
||||||
|
|
||||||
|
.arrow::before {
|
||||||
|
right: 0;
|
||||||
|
margin-top: -($tooltip-arrow-width - 2);
|
||||||
content: "";
|
content: "";
|
||||||
border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width;
|
border-width: $tooltip-arrow-width 0 $tooltip-arrow-width $tooltip-arrow-width;
|
||||||
border-left-color: $tooltip-arrow-color;
|
border-left-color: $tooltip-arrow-color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
&.bs-tooltip-auto {
|
||||||
|
&[x-placement^="top"] {
|
||||||
|
@extend .bs-tooltip-top;
|
||||||
|
}
|
||||||
|
&[x-placement^="right"] {
|
||||||
|
@extend .bs-tooltip-right;
|
||||||
|
}
|
||||||
|
&[x-placement^="bottom"] {
|
||||||
|
@extend .bs-tooltip-bottom;
|
||||||
|
}
|
||||||
|
&[x-placement^="left"] {
|
||||||
|
@extend .bs-tooltip-left;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.arrow::before {
|
||||||
|
position: absolute;
|
||||||
|
border-color: transparent;
|
||||||
|
border-style: solid;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Wrapper for the tooltip content
|
// Wrapper for the tooltip content
|
||||||
@@ -79,12 +104,4 @@
|
|||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: $tooltip-bg;
|
background-color: $tooltip-bg;
|
||||||
@include border-radius($border-radius);
|
@include border-radius($border-radius);
|
||||||
|
|
||||||
&::before {
|
|
||||||
position: absolute;
|
|
||||||
width: 0;
|
|
||||||
height: 0;
|
|
||||||
border-color: transparent;
|
|
||||||
border-style: solid;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -329,7 +329,6 @@ $table-head-color: $gray !default;
|
|||||||
$table-inverse-bg: $gray-dark !default;
|
$table-inverse-bg: $gray-dark !default;
|
||||||
$table-inverse-bg-accent: rgba($white, .05) !default;
|
$table-inverse-bg-accent: rgba($white, .05) !default;
|
||||||
$table-inverse-bg-hover: rgba($white, .075) !default;
|
$table-inverse-bg-hover: rgba($white, .075) !default;
|
||||||
$table-inverse-bg-active: $table-inverse-bg-hover !default;
|
|
||||||
$table-inverse-border-color: lighten($gray-dark, 7.5%) !default;
|
$table-inverse-border-color: lighten($gray-dark, 7.5%) !default;
|
||||||
$table-inverse-color: $body-bg !default;
|
$table-inverse-color: $body-bg !default;
|
||||||
|
|
||||||
@@ -574,11 +573,8 @@ $zindex-tooltip: 1070 !default;
|
|||||||
|
|
||||||
// Navs
|
// Navs
|
||||||
|
|
||||||
$nav-item-margin: .2rem !default;
|
|
||||||
$nav-item-inline-spacer: 1rem !default;
|
|
||||||
$nav-link-padding-y: .5rem !default;
|
$nav-link-padding-y: .5rem !default;
|
||||||
$nav-link-padding-x: 1rem !default;
|
$nav-link-padding-x: 1rem !default;
|
||||||
$nav-link-hover-bg: $gray-lighter !default;
|
|
||||||
$nav-disabled-link-color: $gray-light !default;
|
$nav-disabled-link-color: $gray-light !default;
|
||||||
|
|
||||||
$nav-tabs-border-color: #ddd !default;
|
$nav-tabs-border-color: #ddd !default;
|
||||||
@@ -588,8 +584,6 @@ $nav-tabs-link-hover-border-color: $gray-lighter !default;
|
|||||||
$nav-tabs-active-link-color: $gray !default;
|
$nav-tabs-active-link-color: $gray !default;
|
||||||
$nav-tabs-active-link-bg: $body-bg !default;
|
$nav-tabs-active-link-bg: $body-bg !default;
|
||||||
$nav-tabs-active-link-border-color: #ddd !default;
|
$nav-tabs-active-link-border-color: #ddd !default;
|
||||||
$nav-tabs-justified-link-border-color: #ddd !default;
|
|
||||||
$nav-tabs-justified-active-link-border-color: $body-bg !default;
|
|
||||||
|
|
||||||
$nav-pills-border-radius: $border-radius !default;
|
$nav-pills-border-radius: $border-radius !default;
|
||||||
$nav-pills-active-link-color: $component-active-color !default;
|
$nav-pills-active-link-color: $component-active-color !default;
|
||||||
@@ -615,14 +609,14 @@ $navbar-inverse-color: rgba($white,.5) !default;
|
|||||||
$navbar-inverse-hover-color: rgba($white,.75) !default;
|
$navbar-inverse-hover-color: rgba($white,.75) !default;
|
||||||
$navbar-inverse-active-color: rgba($white,1) !default;
|
$navbar-inverse-active-color: rgba($white,1) !default;
|
||||||
$navbar-inverse-disabled-color: rgba($white,.25) !default;
|
$navbar-inverse-disabled-color: rgba($white,.25) !default;
|
||||||
$navbar-inverse-toggler-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-inverse-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"), "#", "%23") !default;
|
$navbar-inverse-toggler-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-inverse-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"), "#", "%23") !default;
|
||||||
$navbar-inverse-toggler-border-color: rgba($white,.1) !default;
|
$navbar-inverse-toggler-border-color: rgba($white,.1) !default;
|
||||||
|
|
||||||
$navbar-light-color: rgba($black,.5) !default;
|
$navbar-light-color: rgba($black,.5) !default;
|
||||||
$navbar-light-hover-color: rgba($black,.7) !default;
|
$navbar-light-hover-color: rgba($black,.7) !default;
|
||||||
$navbar-light-active-color: rgba($black,.9) !default;
|
$navbar-light-active-color: rgba($black,.9) !default;
|
||||||
$navbar-light-disabled-color: rgba($black,.3) !default;
|
$navbar-light-disabled-color: rgba($black,.3) !default;
|
||||||
$navbar-light-toggler-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"), "#", "%23") !default;
|
$navbar-light-toggler-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"), "#", "%23") !default;
|
||||||
$navbar-light-toggler-border-color: rgba($black,.1) !default;
|
$navbar-light-toggler-border-color: rgba($black,.1) !default;
|
||||||
|
|
||||||
// Pagination
|
// Pagination
|
||||||
@@ -711,9 +705,11 @@ $tooltip-bg: $black !default;
|
|||||||
$tooltip-opacity: .9 !default;
|
$tooltip-opacity: .9 !default;
|
||||||
$tooltip-padding-y: 3px !default;
|
$tooltip-padding-y: 3px !default;
|
||||||
$tooltip-padding-x: 8px !default;
|
$tooltip-padding-x: 8px !default;
|
||||||
$tooltip-margin: 3px !default;
|
$tooltip-margin: 0 !default;
|
||||||
|
|
||||||
|
|
||||||
$tooltip-arrow-width: 5px !default;
|
$tooltip-arrow-width: 5px !default;
|
||||||
|
$tooltip-arrow-height: 5px !default;
|
||||||
$tooltip-arrow-color: $tooltip-bg !default;
|
$tooltip-arrow-color: $tooltip-bg !default;
|
||||||
|
|
||||||
|
|
||||||
@@ -736,6 +732,7 @@ $popover-content-padding-y: 9px !default;
|
|||||||
$popover-content-padding-x: 14px !default;
|
$popover-content-padding-x: 14px !default;
|
||||||
|
|
||||||
$popover-arrow-width: 10px !default;
|
$popover-arrow-width: 10px !default;
|
||||||
|
$popover-arrow-height: 5px !default;
|
||||||
$popover-arrow-color: $popover-bg !default;
|
$popover-arrow-color: $popover-bg !default;
|
||||||
|
|
||||||
$popover-arrow-outer-width: ($popover-arrow-width + 1px) !default;
|
$popover-arrow-outer-width: ($popover-arrow-width + 1px) !default;
|
||||||
|
|||||||
@@ -67,7 +67,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
@mixin make-col($size, $columns: $grid-columns) {
|
@mixin make-col($size, $columns: $grid-columns) {
|
||||||
width: percentage($size / $columns);
|
flex: 0 0 percentage($size / $columns);
|
||||||
|
// Add a `max-width` to ensure content within each column does not blow out
|
||||||
|
// the width of the column. Applies to IE10+ and Firefox. Chrome and Safari
|
||||||
|
// do not appear to require this.
|
||||||
|
max-width: percentage($size / $columns);
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin make-col-offset($size, $columns: $grid-columns) {
|
@mixin make-col-offset($size, $columns: $grid-columns) {
|
||||||
|
|||||||
Reference in New Issue
Block a user