mirror of https://github.com/Radarr/Radarr
Upgrade to Bootstrap 3.3.5
This commit is contained in:
parent
2b6bac8104
commit
6f8cbc22be
|
@ -0,0 +1,304 @@
|
||||||
|
{
|
||||||
|
"always-semicolon": true,
|
||||||
|
"block-indent": 2,
|
||||||
|
"color-case": "lower",
|
||||||
|
"color-shorthand": true,
|
||||||
|
"element-case": "lower",
|
||||||
|
"eof-newline": true,
|
||||||
|
"leading-zero": false,
|
||||||
|
"remove-empty-rulesets": true,
|
||||||
|
"space-after-colon": 1,
|
||||||
|
"space-after-combinator": 1,
|
||||||
|
"space-before-selector-delimiter": 0,
|
||||||
|
"space-between-declarations": "\n",
|
||||||
|
"space-after-opening-brace": "\n",
|
||||||
|
"space-before-closing-brace": "\n",
|
||||||
|
"space-before-colon": 0,
|
||||||
|
"space-before-combinator": 1,
|
||||||
|
"space-before-opening-brace": 1,
|
||||||
|
"strip-spaces": true,
|
||||||
|
"unitless-zero": true,
|
||||||
|
"vendor-prefix-align": true,
|
||||||
|
"sort-order": [
|
||||||
|
[
|
||||||
|
"position",
|
||||||
|
"top",
|
||||||
|
"right",
|
||||||
|
"bottom",
|
||||||
|
"left",
|
||||||
|
"z-index",
|
||||||
|
"display",
|
||||||
|
"float",
|
||||||
|
"width",
|
||||||
|
"min-width",
|
||||||
|
"max-width",
|
||||||
|
"height",
|
||||||
|
"min-height",
|
||||||
|
"max-height",
|
||||||
|
"-webkit-box-sizing",
|
||||||
|
"-moz-box-sizing",
|
||||||
|
"box-sizing",
|
||||||
|
"-webkit-appearance",
|
||||||
|
"padding",
|
||||||
|
"padding-top",
|
||||||
|
"padding-right",
|
||||||
|
"padding-bottom",
|
||||||
|
"padding-left",
|
||||||
|
"margin",
|
||||||
|
"margin-top",
|
||||||
|
"margin-right",
|
||||||
|
"margin-bottom",
|
||||||
|
"margin-left",
|
||||||
|
"overflow",
|
||||||
|
"overflow-x",
|
||||||
|
"overflow-y",
|
||||||
|
"-webkit-overflow-scrolling",
|
||||||
|
"-ms-overflow-x",
|
||||||
|
"-ms-overflow-y",
|
||||||
|
"-ms-overflow-style",
|
||||||
|
"clip",
|
||||||
|
"clear",
|
||||||
|
"font",
|
||||||
|
"font-family",
|
||||||
|
"font-size",
|
||||||
|
"font-style",
|
||||||
|
"font-weight",
|
||||||
|
"font-variant",
|
||||||
|
"font-size-adjust",
|
||||||
|
"font-stretch",
|
||||||
|
"font-effect",
|
||||||
|
"font-emphasize",
|
||||||
|
"font-emphasize-position",
|
||||||
|
"font-emphasize-style",
|
||||||
|
"font-smooth",
|
||||||
|
"-webkit-hyphens",
|
||||||
|
"-moz-hyphens",
|
||||||
|
"hyphens",
|
||||||
|
"line-height",
|
||||||
|
"color",
|
||||||
|
"text-align",
|
||||||
|
"-webkit-text-align-last",
|
||||||
|
"-moz-text-align-last",
|
||||||
|
"-ms-text-align-last",
|
||||||
|
"text-align-last",
|
||||||
|
"text-emphasis",
|
||||||
|
"text-emphasis-color",
|
||||||
|
"text-emphasis-style",
|
||||||
|
"text-emphasis-position",
|
||||||
|
"text-decoration",
|
||||||
|
"text-indent",
|
||||||
|
"text-justify",
|
||||||
|
"text-outline",
|
||||||
|
"-ms-text-overflow",
|
||||||
|
"text-overflow",
|
||||||
|
"text-overflow-ellipsis",
|
||||||
|
"text-overflow-mode",
|
||||||
|
"text-shadow",
|
||||||
|
"text-transform",
|
||||||
|
"text-wrap",
|
||||||
|
"-webkit-text-size-adjust",
|
||||||
|
"-ms-text-size-adjust",
|
||||||
|
"letter-spacing",
|
||||||
|
"-ms-word-break",
|
||||||
|
"word-break",
|
||||||
|
"word-spacing",
|
||||||
|
"-ms-word-wrap",
|
||||||
|
"word-wrap",
|
||||||
|
"-moz-tab-size",
|
||||||
|
"-o-tab-size",
|
||||||
|
"tab-size",
|
||||||
|
"white-space",
|
||||||
|
"vertical-align",
|
||||||
|
"list-style",
|
||||||
|
"list-style-position",
|
||||||
|
"list-style-type",
|
||||||
|
"list-style-image",
|
||||||
|
"pointer-events",
|
||||||
|
"-ms-touch-action",
|
||||||
|
"touch-action",
|
||||||
|
"cursor",
|
||||||
|
"visibility",
|
||||||
|
"zoom",
|
||||||
|
"flex-direction",
|
||||||
|
"flex-order",
|
||||||
|
"flex-pack",
|
||||||
|
"flex-align",
|
||||||
|
"table-layout",
|
||||||
|
"empty-cells",
|
||||||
|
"caption-side",
|
||||||
|
"border-spacing",
|
||||||
|
"border-collapse",
|
||||||
|
"content",
|
||||||
|
"quotes",
|
||||||
|
"counter-reset",
|
||||||
|
"counter-increment",
|
||||||
|
"resize",
|
||||||
|
"-webkit-user-select",
|
||||||
|
"-moz-user-select",
|
||||||
|
"-ms-user-select",
|
||||||
|
"-o-user-select",
|
||||||
|
"user-select",
|
||||||
|
"nav-index",
|
||||||
|
"nav-up",
|
||||||
|
"nav-right",
|
||||||
|
"nav-down",
|
||||||
|
"nav-left",
|
||||||
|
"background",
|
||||||
|
"background-color",
|
||||||
|
"background-image",
|
||||||
|
"-ms-filter:\\'progid:DXImageTransform.Microsoft.gradient",
|
||||||
|
"filter:progid:DXImageTransform.Microsoft.gradient",
|
||||||
|
"filter:progid:DXImageTransform.Microsoft.AlphaImageLoader",
|
||||||
|
"filter",
|
||||||
|
"background-repeat",
|
||||||
|
"background-attachment",
|
||||||
|
"background-position",
|
||||||
|
"background-position-x",
|
||||||
|
"background-position-y",
|
||||||
|
"-webkit-background-clip",
|
||||||
|
"-moz-background-clip",
|
||||||
|
"background-clip",
|
||||||
|
"background-origin",
|
||||||
|
"-webkit-background-size",
|
||||||
|
"-moz-background-size",
|
||||||
|
"-o-background-size",
|
||||||
|
"background-size",
|
||||||
|
"border",
|
||||||
|
"border-color",
|
||||||
|
"border-style",
|
||||||
|
"border-width",
|
||||||
|
"border-top",
|
||||||
|
"border-top-color",
|
||||||
|
"border-top-style",
|
||||||
|
"border-top-width",
|
||||||
|
"border-right",
|
||||||
|
"border-right-color",
|
||||||
|
"border-right-style",
|
||||||
|
"border-right-width",
|
||||||
|
"border-bottom",
|
||||||
|
"border-bottom-color",
|
||||||
|
"border-bottom-style",
|
||||||
|
"border-bottom-width",
|
||||||
|
"border-left",
|
||||||
|
"border-left-color",
|
||||||
|
"border-left-style",
|
||||||
|
"border-left-width",
|
||||||
|
"border-radius",
|
||||||
|
"border-top-left-radius",
|
||||||
|
"border-top-right-radius",
|
||||||
|
"border-bottom-right-radius",
|
||||||
|
"border-bottom-left-radius",
|
||||||
|
"-webkit-border-image",
|
||||||
|
"-moz-border-image",
|
||||||
|
"-o-border-image",
|
||||||
|
"border-image",
|
||||||
|
"-webkit-border-image-source",
|
||||||
|
"-moz-border-image-source",
|
||||||
|
"-o-border-image-source",
|
||||||
|
"border-image-source",
|
||||||
|
"-webkit-border-image-slice",
|
||||||
|
"-moz-border-image-slice",
|
||||||
|
"-o-border-image-slice",
|
||||||
|
"border-image-slice",
|
||||||
|
"-webkit-border-image-width",
|
||||||
|
"-moz-border-image-width",
|
||||||
|
"-o-border-image-width",
|
||||||
|
"border-image-width",
|
||||||
|
"-webkit-border-image-outset",
|
||||||
|
"-moz-border-image-outset",
|
||||||
|
"-o-border-image-outset",
|
||||||
|
"border-image-outset",
|
||||||
|
"-webkit-border-image-repeat",
|
||||||
|
"-moz-border-image-repeat",
|
||||||
|
"-o-border-image-repeat",
|
||||||
|
"border-image-repeat",
|
||||||
|
"outline",
|
||||||
|
"outline-width",
|
||||||
|
"outline-style",
|
||||||
|
"outline-color",
|
||||||
|
"outline-offset",
|
||||||
|
"-webkit-box-shadow",
|
||||||
|
"-moz-box-shadow",
|
||||||
|
"box-shadow",
|
||||||
|
"filter:progid:DXImageTransform.Microsoft.Alpha(Opacity",
|
||||||
|
"-ms-filter:\\'progid:DXImageTransform.Microsoft.Alpha",
|
||||||
|
"opacity",
|
||||||
|
"-ms-interpolation-mode",
|
||||||
|
"-webkit-transition",
|
||||||
|
"-moz-transition",
|
||||||
|
"-ms-transition",
|
||||||
|
"-o-transition",
|
||||||
|
"transition",
|
||||||
|
"-webkit-transition-delay",
|
||||||
|
"-moz-transition-delay",
|
||||||
|
"-ms-transition-delay",
|
||||||
|
"-o-transition-delay",
|
||||||
|
"transition-delay",
|
||||||
|
"-webkit-transition-timing-function",
|
||||||
|
"-moz-transition-timing-function",
|
||||||
|
"-ms-transition-timing-function",
|
||||||
|
"-o-transition-timing-function",
|
||||||
|
"transition-timing-function",
|
||||||
|
"-webkit-transition-duration",
|
||||||
|
"-moz-transition-duration",
|
||||||
|
"-ms-transition-duration",
|
||||||
|
"-o-transition-duration",
|
||||||
|
"transition-duration",
|
||||||
|
"-webkit-transition-property",
|
||||||
|
"-moz-transition-property",
|
||||||
|
"-ms-transition-property",
|
||||||
|
"-o-transition-property",
|
||||||
|
"transition-property",
|
||||||
|
"-webkit-transform",
|
||||||
|
"-moz-transform",
|
||||||
|
"-ms-transform",
|
||||||
|
"-o-transform",
|
||||||
|
"transform",
|
||||||
|
"-webkit-transform-origin",
|
||||||
|
"-moz-transform-origin",
|
||||||
|
"-ms-transform-origin",
|
||||||
|
"-o-transform-origin",
|
||||||
|
"transform-origin",
|
||||||
|
"-webkit-animation",
|
||||||
|
"-moz-animation",
|
||||||
|
"-ms-animation",
|
||||||
|
"-o-animation",
|
||||||
|
"animation",
|
||||||
|
"-webkit-animation-name",
|
||||||
|
"-moz-animation-name",
|
||||||
|
"-ms-animation-name",
|
||||||
|
"-o-animation-name",
|
||||||
|
"animation-name",
|
||||||
|
"-webkit-animation-duration",
|
||||||
|
"-moz-animation-duration",
|
||||||
|
"-ms-animation-duration",
|
||||||
|
"-o-animation-duration",
|
||||||
|
"animation-duration",
|
||||||
|
"-webkit-animation-play-state",
|
||||||
|
"-moz-animation-play-state",
|
||||||
|
"-ms-animation-play-state",
|
||||||
|
"-o-animation-play-state",
|
||||||
|
"animation-play-state",
|
||||||
|
"-webkit-animation-timing-function",
|
||||||
|
"-moz-animation-timing-function",
|
||||||
|
"-ms-animation-timing-function",
|
||||||
|
"-o-animation-timing-function",
|
||||||
|
"animation-timing-function",
|
||||||
|
"-webkit-animation-delay",
|
||||||
|
"-moz-animation-delay",
|
||||||
|
"-ms-animation-delay",
|
||||||
|
"-o-animation-delay",
|
||||||
|
"animation-delay",
|
||||||
|
"-webkit-animation-iteration-count",
|
||||||
|
"-moz-animation-iteration-count",
|
||||||
|
"-ms-animation-iteration-count",
|
||||||
|
"-o-animation-iteration-count",
|
||||||
|
"animation-iteration-count",
|
||||||
|
"-webkit-animation-direction",
|
||||||
|
"-moz-animation-direction",
|
||||||
|
"-ms-animation-direction",
|
||||||
|
"-o-animation-direction",
|
||||||
|
"animation-direction"
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
"adjoining-classes": false,
|
||||||
|
"box-sizing": false,
|
||||||
|
"box-model": false,
|
||||||
|
"compatible-vendor-prefixes": false,
|
||||||
|
"floats": false,
|
||||||
|
"font-sizes": false,
|
||||||
|
"gradients": false,
|
||||||
|
"important": false,
|
||||||
|
"known-properties": false,
|
||||||
|
"outline-none": false,
|
||||||
|
"qualified-headings": false,
|
||||||
|
"regex-selectors": false,
|
||||||
|
"shorthand": false,
|
||||||
|
"text-indent": false,
|
||||||
|
"unique-headings": false,
|
||||||
|
"universal-selector": false,
|
||||||
|
"unqualified-attributes": false
|
||||||
|
}
|
|
@ -12,7 +12,7 @@
|
||||||
font-weight: @badge-font-weight;
|
font-weight: @badge-font-weight;
|
||||||
color: @badge-color;
|
color: @badge-color;
|
||||||
line-height: @badge-line-height;
|
line-height: @badge-line-height;
|
||||||
vertical-align: baseline;
|
vertical-align: middle;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background-color: @badge-bg;
|
background-color: @badge-bg;
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
/*!
|
||||||
|
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||||
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
|
*/
|
||||||
|
|
||||||
// Core variables and mixins
|
// Core variables and mixins
|
||||||
@import "variables.less";
|
@import "variables.less";
|
||||||
@import "mixins.less";
|
@import "mixins.less";
|
||||||
|
|
|
@ -36,6 +36,7 @@
|
||||||
margin-left: -5px; // Offset the first child's margin
|
margin-left: -5px; // Offset the first child's margin
|
||||||
&:extend(.clearfix all);
|
&:extend(.clearfix all);
|
||||||
|
|
||||||
|
.btn,
|
||||||
.btn-group,
|
.btn-group,
|
||||||
.input-group {
|
.input-group {
|
||||||
float: left;
|
float: left;
|
||||||
|
@ -172,11 +173,11 @@
|
||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
}
|
}
|
||||||
&:first-child:not(:last-child) {
|
&:first-child:not(:last-child) {
|
||||||
border-top-right-radius: @border-radius-base;
|
border-top-right-radius: @btn-border-radius-base;
|
||||||
.border-bottom-radius(0);
|
.border-bottom-radius(0);
|
||||||
}
|
}
|
||||||
&:last-child:not(:first-child) {
|
&:last-child:not(:first-child) {
|
||||||
border-bottom-left-radius: @border-radius-base;
|
border-bottom-left-radius: @btn-border-radius-base;
|
||||||
.border-top-radius(0);
|
.border-top-radius(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
|
background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
|
||||||
border: 1px solid transparent;
|
border: 1px solid transparent;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
.button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base);
|
.button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base);
|
||||||
.user-select(none);
|
.user-select(none);
|
||||||
|
|
||||||
&,
|
&,
|
||||||
|
@ -47,10 +47,16 @@
|
||||||
&[disabled],
|
&[disabled],
|
||||||
fieldset[disabled] & {
|
fieldset[disabled] & {
|
||||||
cursor: @cursor-disabled;
|
cursor: @cursor-disabled;
|
||||||
pointer-events: none; // Future-proof disabling of clicks
|
|
||||||
.opacity(.65);
|
.opacity(.65);
|
||||||
.box-shadow(none);
|
.box-shadow(none);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
a& {
|
||||||
|
&.disabled,
|
||||||
|
fieldset[disabled] & {
|
||||||
|
pointer-events: none; // Future-proof disabling of clicks on `<a>` elements
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -126,14 +132,14 @@
|
||||||
|
|
||||||
.btn-lg {
|
.btn-lg {
|
||||||
// line-height: ensure even-numbered height of button next to large input
|
// line-height: ensure even-numbered height of button next to large input
|
||||||
.button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
|
.button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large);
|
||||||
}
|
}
|
||||||
.btn-sm {
|
.btn-sm {
|
||||||
// line-height: ensure proper height of button next to small input
|
// line-height: ensure proper height of button next to small input
|
||||||
.button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
|
.button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);
|
||||||
}
|
}
|
||||||
.btn-xs {
|
.btn-xs {
|
||||||
.button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small);
|
.button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
@media all and (transform-3d), (-webkit-transform-3d) {
|
@media all and (transform-3d), (-webkit-transform-3d) {
|
||||||
.transition-transform(~'0.6s ease-in-out');
|
.transition-transform(~'0.6s ease-in-out');
|
||||||
.backface-visibility(~'hidden');
|
.backface-visibility(~'hidden');
|
||||||
.perspective(1000);
|
.perspective(1000px);
|
||||||
|
|
||||||
&.next,
|
&.next,
|
||||||
&.active.right {
|
&.active.right {
|
||||||
|
@ -130,6 +130,7 @@
|
||||||
.glyphicon-chevron-right {
|
.glyphicon-chevron-right {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 50%;
|
top: 50%;
|
||||||
|
margin-top: -10px;
|
||||||
z-index: 5;
|
z-index: 5;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
@ -147,7 +148,6 @@
|
||||||
.icon-next {
|
.icon-next {
|
||||||
width: 20px;
|
width: 20px;
|
||||||
height: 20px;
|
height: 20px;
|
||||||
margin-top: -10px;
|
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
font-family: serif;
|
font-family: serif;
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
margin-left: 2px;
|
margin-left: 2px;
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
border-top: @caret-width-base dashed;
|
border-top: @caret-width-base dashed;
|
||||||
|
border-top: @caret-width-base solid ~"\9"; // IE8
|
||||||
border-right: @caret-width-base solid transparent;
|
border-right: @caret-width-base solid transparent;
|
||||||
border-left: @caret-width-base solid transparent;
|
border-left: @caret-width-base solid transparent;
|
||||||
}
|
}
|
||||||
|
@ -184,7 +185,8 @@
|
||||||
// Reverse the caret
|
// Reverse the caret
|
||||||
.caret {
|
.caret {
|
||||||
border-top: 0;
|
border-top: 0;
|
||||||
border-bottom: @caret-width-base solid;
|
border-bottom: @caret-width-base dashed;
|
||||||
|
border-bottom: @caret-width-base solid ~"\9"; // IE8
|
||||||
content: "";
|
content: "";
|
||||||
}
|
}
|
||||||
// Different positioning for bottom up menu
|
// Different positioning for bottom up menu
|
||||||
|
|
|
@ -56,7 +56,6 @@ input[type="checkbox"] {
|
||||||
line-height: normal;
|
line-height: normal;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set the height of file controls to match text inputs
|
|
||||||
input[type="file"] {
|
input[type="file"] {
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
@ -175,13 +174,17 @@ input[type="search"] {
|
||||||
// text within the input to become vertically misaligned. As a workaround, we
|
// text within the input to become vertically misaligned. As a workaround, we
|
||||||
// set a pixel line-height that matches the given height of the input, but only
|
// set a pixel line-height that matches the given height of the input, but only
|
||||||
// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848
|
// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848
|
||||||
|
//
|
||||||
|
// Note that as of 8.3, iOS doesn't support `datetime` or `week`.
|
||||||
|
|
||||||
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
@media screen and (-webkit-min-device-pixel-ratio: 0) {
|
||||||
input[type="date"],
|
input[type="date"],
|
||||||
input[type="time"],
|
input[type="time"],
|
||||||
input[type="datetime-local"],
|
input[type="datetime-local"],
|
||||||
input[type="month"] {
|
input[type="month"] {
|
||||||
line-height: @input-height-base;
|
&.form-control {
|
||||||
|
line-height: @input-height-base;
|
||||||
|
}
|
||||||
|
|
||||||
&.input-sm,
|
&.input-sm,
|
||||||
.input-group-sm & {
|
.input-group-sm & {
|
||||||
|
@ -322,14 +325,26 @@ input[type="checkbox"] {
|
||||||
}
|
}
|
||||||
.form-group-sm {
|
.form-group-sm {
|
||||||
.form-control {
|
.form-control {
|
||||||
.input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @input-border-radius-small);
|
|
||||||
}
|
|
||||||
.form-control-static {
|
|
||||||
height: @input-height-small;
|
height: @input-height-small;
|
||||||
padding: @padding-small-vertical @padding-small-horizontal;
|
padding: @padding-small-vertical @padding-small-horizontal;
|
||||||
font-size: @font-size-small;
|
font-size: @font-size-small;
|
||||||
line-height: @line-height-small;
|
line-height: @line-height-small;
|
||||||
|
border-radius: @input-border-radius-small;
|
||||||
|
}
|
||||||
|
select.form-control {
|
||||||
|
height: @input-height-small;
|
||||||
|
line-height: @input-height-small;
|
||||||
|
}
|
||||||
|
textarea.form-control,
|
||||||
|
select[multiple].form-control {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.form-control-static {
|
||||||
|
height: @input-height-small;
|
||||||
min-height: (@line-height-computed + @font-size-small);
|
min-height: (@line-height-computed + @font-size-small);
|
||||||
|
padding: (@padding-small-vertical + 1) @padding-small-horizontal;
|
||||||
|
font-size: @font-size-small;
|
||||||
|
line-height: @line-height-small;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -338,14 +353,26 @@ input[type="checkbox"] {
|
||||||
}
|
}
|
||||||
.form-group-lg {
|
.form-group-lg {
|
||||||
.form-control {
|
.form-control {
|
||||||
.input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @input-border-radius-large);
|
|
||||||
}
|
|
||||||
.form-control-static {
|
|
||||||
height: @input-height-large;
|
height: @input-height-large;
|
||||||
padding: @padding-large-vertical @padding-large-horizontal;
|
padding: @padding-large-vertical @padding-large-horizontal;
|
||||||
font-size: @font-size-large;
|
font-size: @font-size-large;
|
||||||
line-height: @line-height-large;
|
line-height: @line-height-large;
|
||||||
|
border-radius: @input-border-radius-large;
|
||||||
|
}
|
||||||
|
select.form-control {
|
||||||
|
height: @input-height-large;
|
||||||
|
line-height: @input-height-large;
|
||||||
|
}
|
||||||
|
textarea.form-control,
|
||||||
|
select[multiple].form-control {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
.form-control-static {
|
||||||
|
height: @input-height-large;
|
||||||
min-height: (@line-height-computed + @font-size-large);
|
min-height: (@line-height-computed + @font-size-large);
|
||||||
|
padding: (@padding-large-vertical + 1) @padding-large-horizontal;
|
||||||
|
font-size: @font-size-large;
|
||||||
|
line-height: @line-height-large;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -376,12 +403,16 @@ input[type="checkbox"] {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
}
|
}
|
||||||
.input-lg + .form-control-feedback {
|
.input-lg + .form-control-feedback,
|
||||||
|
.input-group-lg + .form-control-feedback,
|
||||||
|
.form-group-lg .form-control + .form-control-feedback {
|
||||||
width: @input-height-large;
|
width: @input-height-large;
|
||||||
height: @input-height-large;
|
height: @input-height-large;
|
||||||
line-height: @input-height-large;
|
line-height: @input-height-large;
|
||||||
}
|
}
|
||||||
.input-sm + .form-control-feedback {
|
.input-sm + .form-control-feedback,
|
||||||
|
.input-group-sm + .form-control-feedback,
|
||||||
|
.form-group-sm .form-control + .form-control-feedback {
|
||||||
width: @input-height-small;
|
width: @input-height-small;
|
||||||
height: @input-height-small;
|
height: @input-height-small;
|
||||||
line-height: @input-height-small;
|
line-height: @input-height-small;
|
||||||
|
@ -550,7 +581,7 @@ input[type="checkbox"] {
|
||||||
// Reposition the icon because it's now within a grid column and columns have
|
// Reposition the icon because it's now within a grid column and columns have
|
||||||
// `position: relative;` on them. Also accounts for the grid gutter padding.
|
// `position: relative;` on them. Also accounts for the grid gutter padding.
|
||||||
.has-feedback .form-control-feedback {
|
.has-feedback .form-control-feedback {
|
||||||
right: (@grid-gutter-width / 2);
|
right: floor((@grid-gutter-width / 2));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Form group sizes
|
// Form group sizes
|
||||||
|
@ -561,6 +592,7 @@ input[type="checkbox"] {
|
||||||
@media (min-width: @screen-sm-min) {
|
@media (min-width: @screen-sm-min) {
|
||||||
.control-label {
|
.control-label {
|
||||||
padding-top: ((@padding-large-vertical * @line-height-large) + 1);
|
padding-top: ((@padding-large-vertical * @line-height-large) + 1);
|
||||||
|
font-size: @font-size-large;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -568,6 +600,7 @@ input[type="checkbox"] {
|
||||||
@media (min-width: @screen-sm-min) {
|
@media (min-width: @screen-sm-min) {
|
||||||
.control-label {
|
.control-label {
|
||||||
padding-top: (@padding-small-vertical + 1);
|
padding-top: (@padding-small-vertical + 1);
|
||||||
|
font-size: @font-size-small;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -160,6 +160,7 @@
|
||||||
&:last-child {
|
&:last-child {
|
||||||
> .btn,
|
> .btn,
|
||||||
> .btn-group {
|
> .btn-group {
|
||||||
|
z-index: 2;
|
||||||
margin-left: -1px;
|
margin-left: -1px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,8 @@
|
||||||
|
|
||||||
|
|
||||||
.jumbotron {
|
.jumbotron {
|
||||||
padding: @jumbotron-padding (@jumbotron-padding / 2);
|
padding-top: @jumbotron-padding;
|
||||||
|
padding-bottom: @jumbotron-padding;
|
||||||
margin-bottom: @jumbotron-padding;
|
margin-bottom: @jumbotron-padding;
|
||||||
color: @jumbotron-color;
|
color: @jumbotron-color;
|
||||||
background-color: @jumbotron-bg;
|
background-color: @jumbotron-bg;
|
||||||
|
@ -34,7 +35,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (min-width: @screen-sm-min) {
|
@media screen and (min-width: @screen-sm-min) {
|
||||||
padding: (@jumbotron-padding * 1.6) 0;
|
padding-top: (@jumbotron-padding * 1.6);
|
||||||
|
padding-bottom: (@jumbotron-padding * 1.6);
|
||||||
|
|
||||||
.container &,
|
.container &,
|
||||||
.container-fluid & {
|
.container-fluid & {
|
||||||
|
@ -44,7 +46,7 @@
|
||||||
|
|
||||||
h1,
|
h1,
|
||||||
.h1 {
|
.h1 {
|
||||||
font-size: (@font-size-base * 4.5);
|
font-size: @jumbotron-heading-font-size;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,12 +38,13 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Linked list items
|
// Interactive list items
|
||||||
//
|
//
|
||||||
// Use anchor elements instead of `li`s or `div`s to create linked list items.
|
// Use anchor or button elements instead of `li`s or `div`s to create interactive items.
|
||||||
// Includes an extra `.active` modifier class for showing selected items.
|
// Includes an extra `.active` modifier class for showing selected items.
|
||||||
|
|
||||||
a.list-group-item {
|
a.list-group-item,
|
||||||
|
button.list-group-item {
|
||||||
color: @list-group-link-color;
|
color: @list-group-link-color;
|
||||||
|
|
||||||
.list-group-item-heading {
|
.list-group-item-heading {
|
||||||
|
@ -59,6 +60,11 @@ a.list-group-item {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
button.list-group-item {
|
||||||
|
width: 100%;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
.list-group-item {
|
.list-group-item {
|
||||||
// Disabled state
|
// Disabled state
|
||||||
&.disabled,
|
&.disabled,
|
||||||
|
|
|
@ -19,6 +19,11 @@
|
||||||
|
|
||||||
.media-object {
|
.media-object {
|
||||||
display: block;
|
display: block;
|
||||||
|
|
||||||
|
// Fix collapse in webkit from max-width: 100% and display: table-cell.
|
||||||
|
&.img-thumbnail {
|
||||||
|
max-width: none;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.media-right,
|
.media-right,
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
@import "mixins/responsive-visibility.less";
|
@import "mixins/responsive-visibility.less";
|
||||||
@import "mixins/size.less";
|
@import "mixins/size.less";
|
||||||
@import "mixins/tab-focus.less";
|
@import "mixins/tab-focus.less";
|
||||||
|
@import "mixins/reset-text.less";
|
||||||
@import "mixins/text-emphasis.less";
|
@import "mixins/text-emphasis.less";
|
||||||
@import "mixins/text-overflow.less";
|
@import "mixins/text-overflow.less";
|
||||||
@import "mixins/vendor-prefixes.less";
|
@import "mixins/vendor-prefixes.less";
|
||||||
|
|
|
@ -2,7 +2,8 @@
|
||||||
|
|
||||||
.bg-variant(@color) {
|
.bg-variant(@color) {
|
||||||
background-color: @color;
|
background-color: @color;
|
||||||
a&:hover {
|
a&:hover,
|
||||||
|
a&:focus {
|
||||||
background-color: darken(@color, 10%);
|
background-color: darken(@color, 10%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,15 +8,31 @@
|
||||||
background-color: @background;
|
background-color: @background;
|
||||||
border-color: @border;
|
border-color: @border;
|
||||||
|
|
||||||
&:hover,
|
|
||||||
&:focus,
|
&:focus,
|
||||||
&.focus,
|
&.focus {
|
||||||
|
color: @color;
|
||||||
|
background-color: darken(@background, 10%);
|
||||||
|
border-color: darken(@border, 25%);
|
||||||
|
}
|
||||||
|
&:hover {
|
||||||
|
color: @color;
|
||||||
|
background-color: darken(@background, 10%);
|
||||||
|
border-color: darken(@border, 12%);
|
||||||
|
}
|
||||||
&:active,
|
&:active,
|
||||||
&.active,
|
&.active,
|
||||||
.open > .dropdown-toggle& {
|
.open > .dropdown-toggle& {
|
||||||
color: @color;
|
color: @color;
|
||||||
background-color: darken(@background, 10%);
|
background-color: darken(@background, 10%);
|
||||||
border-color: darken(@border, 12%);
|
border-color: darken(@border, 12%);
|
||||||
|
|
||||||
|
&:hover,
|
||||||
|
&:focus,
|
||||||
|
&.focus {
|
||||||
|
color: @color;
|
||||||
|
background-color: darken(@background, 17%);
|
||||||
|
border-color: darken(@border, 25%);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
&:active,
|
&:active,
|
||||||
&.active,
|
&.active,
|
||||||
|
|
|
@ -19,8 +19,8 @@
|
||||||
// Prevent columns from collapsing when empty
|
// Prevent columns from collapsing when empty
|
||||||
min-height: 1px;
|
min-height: 1px;
|
||||||
// Inner gutter via padding
|
// Inner gutter via padding
|
||||||
padding-left: (@grid-gutter-width / 2);
|
padding-left: ceil((@grid-gutter-width / 2));
|
||||||
padding-right: (@grid-gutter-width / 2);
|
padding-right: floor((@grid-gutter-width / 2));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.col(1); // kickstart it
|
.col(1); // kickstart it
|
||||||
|
|
|
@ -13,8 +13,8 @@
|
||||||
|
|
||||||
// Creates a wrapper for a series of columns
|
// Creates a wrapper for a series of columns
|
||||||
.make-row(@gutter: @grid-gutter-width) {
|
.make-row(@gutter: @grid-gutter-width) {
|
||||||
margin-left: (@gutter / -2);
|
margin-left: ceil((@gutter / -2));
|
||||||
margin-right: (@gutter / -2);
|
margin-right: floor((@gutter / -2));
|
||||||
&:extend(.clearfix all);
|
&:extend(.clearfix all);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
// CSS image replacement
|
// CSS image replacement
|
||||||
//
|
//
|
||||||
// Heads up! v3 launched with with only `.hide-text()`, but per our pattern for
|
// Heads up! v3 launched with only `.hide-text()`, but per our pattern for
|
||||||
// mixins being reused as classes with the same name, this doesn't hold up. As
|
// mixins being reused as classes with the same name, this doesn't hold up. As
|
||||||
// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`.
|
// of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`.
|
||||||
//
|
//
|
||||||
|
|
|
@ -5,7 +5,8 @@
|
||||||
color: @color;
|
color: @color;
|
||||||
background-color: @background;
|
background-color: @background;
|
||||||
|
|
||||||
a& {
|
a&,
|
||||||
|
button& {
|
||||||
color: @color;
|
color: @color;
|
||||||
|
|
||||||
.list-group-item-heading {
|
.list-group-item-heading {
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
// Pagination
|
// Pagination
|
||||||
|
|
||||||
.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @border-radius) {
|
.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {
|
||||||
> li {
|
> li {
|
||||||
> a,
|
> a,
|
||||||
> span {
|
> span {
|
||||||
padding: @padding-vertical @padding-horizontal;
|
padding: @padding-vertical @padding-horizontal;
|
||||||
font-size: @font-size;
|
font-size: @font-size;
|
||||||
|
line-height: @line-height;
|
||||||
}
|
}
|
||||||
&:first-child {
|
&:first-child {
|
||||||
> a,
|
> a,
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
.reset-text() {
|
||||||
|
font-family: @font-family-base;
|
||||||
|
// We deliberately do NOT reset font-size.
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: normal;
|
||||||
|
letter-spacing: normal;
|
||||||
|
line-break: auto;
|
||||||
|
line-height: @line-height-base;
|
||||||
|
text-align: left; // Fallback for where `start` is not supported
|
||||||
|
text-align: start;
|
||||||
|
text-decoration: none;
|
||||||
|
text-shadow: none;
|
||||||
|
text-transform: none;
|
||||||
|
white-space: normal;
|
||||||
|
word-break: normal;
|
||||||
|
word-spacing: normal;
|
||||||
|
word-wrap: normal;
|
||||||
|
}
|
|
@ -4,7 +4,7 @@
|
||||||
// More easily include all the states for responsive-utilities.less.
|
// More easily include all the states for responsive-utilities.less.
|
||||||
.responsive-visibility() {
|
.responsive-visibility() {
|
||||||
display: block !important;
|
display: block !important;
|
||||||
table& { display: table; }
|
table& { display: table !important; }
|
||||||
tr& { display: table-row !important; }
|
tr& { display: table-row !important; }
|
||||||
th&,
|
th&,
|
||||||
td& { display: table-cell !important; }
|
td& { display: table-cell !important; }
|
||||||
|
|
|
@ -2,7 +2,8 @@
|
||||||
|
|
||||||
.text-emphasis-variant(@color) {
|
.text-emphasis-variant(@color) {
|
||||||
color: @color;
|
color: @color;
|
||||||
a&:hover {
|
a&:hover,
|
||||||
|
a&:focus {
|
||||||
color: darken(@color, 10%);
|
color: darken(@color, 10%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
|
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
|
||||||
|
|
||||||
//
|
//
|
||||||
// 1. Set default font family to sans-serif.
|
// 1. Set default font family to sans-serif.
|
||||||
// 2. Prevent iOS text size adjust after orientation change, without disabling
|
// 2. Prevent iOS and IE text size adjust after device orientation change,
|
||||||
// user zoom.
|
// without disabling user zoom.
|
||||||
//
|
//
|
||||||
|
|
||||||
html {
|
html {
|
||||||
|
@ -71,7 +71,7 @@ audio:not([controls]) {
|
||||||
|
|
||||||
//
|
//
|
||||||
// Address `[hidden]` styling not present in IE 8/9/10.
|
// Address `[hidden]` styling not present in IE 8/9/10.
|
||||||
// Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
|
// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
|
||||||
//
|
//
|
||||||
|
|
||||||
[hidden],
|
[hidden],
|
||||||
|
@ -91,7 +91,8 @@ a {
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Improve readability when focused and also mouse hovered in all browsers.
|
// Improve readability of focused elements when they are also in an
|
||||||
|
// active/hover state.
|
||||||
//
|
//
|
||||||
|
|
||||||
a:active,
|
a:active,
|
||||||
|
@ -209,7 +210,6 @@ figure {
|
||||||
//
|
//
|
||||||
|
|
||||||
hr {
|
hr {
|
||||||
-moz-box-sizing: content-box;
|
|
||||||
box-sizing: content-box;
|
box-sizing: content-box;
|
||||||
height: 0;
|
height: 0;
|
||||||
}
|
}
|
||||||
|
@ -350,15 +350,12 @@ input[type="number"]::-webkit-outer-spin-button {
|
||||||
|
|
||||||
//
|
//
|
||||||
// 1. Address `appearance` set to `searchfield` in Safari and Chrome.
|
// 1. Address `appearance` set to `searchfield` in Safari and Chrome.
|
||||||
// 2. Address `box-sizing` set to `border-box` in Safari and Chrome
|
// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
|
||||||
// (include `-moz` to future-proof).
|
|
||||||
//
|
//
|
||||||
|
|
||||||
input[type="search"] {
|
input[type="search"] {
|
||||||
-webkit-appearance: textfield; // 1
|
-webkit-appearance: textfield; // 1
|
||||||
-moz-box-sizing: content-box;
|
box-sizing: content-box; //2
|
||||||
-webkit-box-sizing: content-box; // 2
|
|
||||||
box-sizing: content-box;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
|
@ -40,6 +40,7 @@
|
||||||
> li > span {
|
> li > span {
|
||||||
&:hover,
|
&:hover,
|
||||||
&:focus {
|
&:focus {
|
||||||
|
z-index: 3;
|
||||||
color: @pagination-hover-color;
|
color: @pagination-hover-color;
|
||||||
background-color: @pagination-hover-bg;
|
background-color: @pagination-hover-bg;
|
||||||
border-color: @pagination-hover-border;
|
border-color: @pagination-hover-border;
|
||||||
|
@ -79,10 +80,10 @@
|
||||||
|
|
||||||
// Large
|
// Large
|
||||||
.pagination-lg {
|
.pagination-lg {
|
||||||
.pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @border-radius-large);
|
.pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Small
|
// Small
|
||||||
.pagination-sm {
|
.pagination-sm {
|
||||||
.pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @border-radius-small);
|
.pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
|
||||||
}
|
}
|
||||||
|
|
|
@ -76,6 +76,7 @@
|
||||||
.border-top-radius((@panel-border-radius - 1));
|
.border-top-radius((@panel-border-radius - 1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add border bottom radius for last one
|
// Add border bottom radius for last one
|
||||||
&:last-child {
|
&:last-child {
|
||||||
.list-group-item:last-child {
|
.list-group-item:last-child {
|
||||||
|
@ -84,6 +85,11 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
> .panel-heading + .panel-collapse > .list-group {
|
||||||
|
.list-group-item:first-child {
|
||||||
|
.border-top-radius(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// Collapse space between when there's no additional content.
|
// Collapse space between when there's no additional content.
|
||||||
.panel-heading + .list-group {
|
.panel-heading + .list-group {
|
||||||
|
|
|
@ -11,12 +11,11 @@
|
||||||
display: none;
|
display: none;
|
||||||
max-width: @popover-max-width;
|
max-width: @popover-max-width;
|
||||||
padding: 1px;
|
padding: 1px;
|
||||||
// Reset font and text properties given new insertion method
|
// Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element.
|
||||||
font-family: @font-family-base;
|
// So reset our font and text properties to avoid inheriting weird values.
|
||||||
|
.reset-text();
|
||||||
font-size: @font-size-base;
|
font-size: @font-size-base;
|
||||||
font-weight: normal;
|
|
||||||
line-height: @line-height-base;
|
|
||||||
text-align: left;
|
|
||||||
background-color: @popover-bg;
|
background-color: @popover-bg;
|
||||||
background-clip: padding-box;
|
background-clip: padding-box;
|
||||||
border: 1px solid @popover-fallback-border-color;
|
border: 1px solid @popover-fallback-border-color;
|
||||||
|
@ -24,9 +23,6 @@
|
||||||
border-radius: @border-radius-large;
|
border-radius: @border-radius-large;
|
||||||
.box-shadow(0 5px 10px rgba(0,0,0,.2));
|
.box-shadow(0 5px 10px rgba(0,0,0,.2));
|
||||||
|
|
||||||
// Overrides for proper insertion
|
|
||||||
white-space: normal;
|
|
||||||
|
|
||||||
// Offset the popover to account for the popover arrow
|
// Offset the popover to account for the popover arrow
|
||||||
&.top { margin-top: -@popover-arrow-width; }
|
&.top { margin-top: -@popover-arrow-width; }
|
||||||
&.right { margin-left: @popover-arrow-width; }
|
&.right { margin-left: @popover-arrow-width; }
|
||||||
|
|
|
@ -67,12 +67,6 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
// Bootstrap specific changes start
|
// Bootstrap specific changes start
|
||||||
//
|
|
||||||
// Chrome (OSX) fix for https://github.com/twbs/bootstrap/issues/11245
|
|
||||||
// Once fixed, we can just straight up remove this.
|
|
||||||
select {
|
|
||||||
background: #fff !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Bootstrap components
|
// Bootstrap components
|
||||||
.navbar {
|
.navbar {
|
||||||
|
|
|
@ -155,8 +155,7 @@ hr {
|
||||||
// Fixes "clickability" issue (and more generally, the firing of events such as focus as well)
|
// Fixes "clickability" issue (and more generally, the firing of events such as focus as well)
|
||||||
// for traditionally non-focusable elements with role="button"
|
// for traditionally non-focusable elements with role="button"
|
||||||
// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
|
// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
|
||||||
// Upstream patch for normalize.css submitted: https://github.com/necolas/normalize.css/pull/379 - remove this fix once that is merged
|
|
||||||
|
|
||||||
[role="button"] {
|
[role="button"] {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
/*!
|
||||||
|
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||||
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||||
|
*/
|
||||||
|
|
||||||
//
|
//
|
||||||
// Load core variables and mixins
|
// Load core variables and mixins
|
||||||
|
@ -28,6 +33,12 @@
|
||||||
.box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
|
.box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.disabled,
|
||||||
|
&[disabled],
|
||||||
|
fieldset[disabled] & {
|
||||||
|
.box-shadow(none);
|
||||||
|
}
|
||||||
|
|
||||||
.badge {
|
.badge {
|
||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
}
|
}
|
||||||
|
@ -53,10 +64,17 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
&.disabled,
|
&.disabled,
|
||||||
&:disabled,
|
&[disabled],
|
||||||
&[disabled] {
|
fieldset[disabled] & {
|
||||||
background-color: darken(@btn-color, 12%);
|
&,
|
||||||
background-image: none;
|
&:hover,
|
||||||
|
&:focus,
|
||||||
|
&.focus,
|
||||||
|
&:active,
|
||||||
|
&.active {
|
||||||
|
background-color: darken(@btn-color, 12%);
|
||||||
|
background-image: none;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -132,7 +150,7 @@
|
||||||
.navbar-inverse {
|
.navbar-inverse {
|
||||||
#gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);
|
#gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);
|
||||||
.reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257
|
.reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257
|
||||||
|
border-radius: @navbar-border-radius;
|
||||||
.navbar-nav > .open > a,
|
.navbar-nav > .open > a,
|
||||||
.navbar-nav > .active > a {
|
.navbar-nav > .active > a {
|
||||||
#gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));
|
#gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));
|
||||||
|
|
|
@ -8,11 +8,11 @@
|
||||||
position: absolute;
|
position: absolute;
|
||||||
z-index: @zindex-tooltip;
|
z-index: @zindex-tooltip;
|
||||||
display: block;
|
display: block;
|
||||||
// Reset font and text properties given new insertion method
|
// Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
|
||||||
font-family: @font-family-base;
|
// So reset our font and text properties to avoid inheriting weird values.
|
||||||
|
.reset-text();
|
||||||
font-size: @font-size-small;
|
font-size: @font-size-small;
|
||||||
font-weight: normal;
|
|
||||||
line-height: 1.4;
|
|
||||||
.opacity(0);
|
.opacity(0);
|
||||||
|
|
||||||
&.in { .opacity(@tooltip-opacity); }
|
&.in { .opacity(@tooltip-opacity); }
|
||||||
|
@ -28,7 +28,6 @@
|
||||||
padding: 3px 8px;
|
padding: 3px 8px;
|
||||||
color: @tooltip-color;
|
color: @tooltip-color;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
text-decoration: none;
|
|
||||||
background-color: @tooltip-bg;
|
background-color: @tooltip-bg;
|
||||||
border-radius: @border-radius-base;
|
border-radius: @border-radius-base;
|
||||||
}
|
}
|
||||||
|
|
|
@ -170,6 +170,11 @@
|
||||||
|
|
||||||
@btn-link-disabled-color: @gray-light;
|
@btn-link-disabled-color: @gray-light;
|
||||||
|
|
||||||
|
// Allows for customizing button radius independently from global border radius
|
||||||
|
@btn-border-radius-base: @border-radius-base;
|
||||||
|
@btn-border-radius-large: @border-radius-large;
|
||||||
|
@btn-border-radius-small: @border-radius-small;
|
||||||
|
|
||||||
|
|
||||||
//== Forms
|
//== Forms
|
||||||
//
|
//
|
||||||
|
@ -383,7 +388,7 @@
|
||||||
@navbar-default-toggle-border-color: #ddd;
|
@navbar-default-toggle-border-color: #ddd;
|
||||||
|
|
||||||
|
|
||||||
// Inverted navbar
|
//=== Inverted navbar
|
||||||
// Reset inverted navbar basics
|
// Reset inverted navbar basics
|
||||||
@navbar-inverse-color: lighten(@gray-light, 15%);
|
@navbar-inverse-color: lighten(@gray-light, 15%);
|
||||||
@navbar-inverse-bg: #222;
|
@navbar-inverse-bg: #222;
|
||||||
|
@ -484,6 +489,7 @@
|
||||||
@jumbotron-bg: @gray-lighter;
|
@jumbotron-bg: @gray-lighter;
|
||||||
@jumbotron-heading-color: inherit;
|
@jumbotron-heading-color: inherit;
|
||||||
@jumbotron-font-size: ceil((@font-size-base * 1.5));
|
@jumbotron-font-size: ceil((@font-size-base * 1.5));
|
||||||
|
@jumbotron-heading-font-size: ceil((@font-size-base * 4.5));
|
||||||
|
|
||||||
|
|
||||||
//== Form states and alerts
|
//== Form states and alerts
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/*!
|
/*!
|
||||||
* Bootstrap v3.3.4 (http://getbootstrap.com)
|
* Bootstrap v3.3.5 (http://getbootstrap.com)
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
* Licensed under the MIT license
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (typeof jQuery === 'undefined') {
|
if (typeof jQuery === 'undefined') {
|
||||||
|
@ -17,7 +17,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: transition.js v3.3.4
|
* Bootstrap: transition.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#transitions
|
* http://getbootstrap.com/javascript/#transitions
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -77,7 +77,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: alert.js v3.3.4
|
* Bootstrap: alert.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#alerts
|
* http://getbootstrap.com/javascript/#alerts
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -96,7 +96,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
$(el).on('click', dismiss, this.close)
|
$(el).on('click', dismiss, this.close)
|
||||||
}
|
}
|
||||||
|
|
||||||
Alert.VERSION = '3.3.4'
|
Alert.VERSION = '3.3.5'
|
||||||
|
|
||||||
Alert.TRANSITION_DURATION = 150
|
Alert.TRANSITION_DURATION = 150
|
||||||
|
|
||||||
|
@ -172,7 +172,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: button.js v3.3.4
|
* Bootstrap: button.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#buttons
|
* http://getbootstrap.com/javascript/#buttons
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -192,7 +192,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.isLoading = false
|
this.isLoading = false
|
||||||
}
|
}
|
||||||
|
|
||||||
Button.VERSION = '3.3.4'
|
Button.VERSION = '3.3.5'
|
||||||
|
|
||||||
Button.DEFAULTS = {
|
Button.DEFAULTS = {
|
||||||
loadingText: 'loading...'
|
loadingText: 'loading...'
|
||||||
|
@ -204,7 +204,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
var val = $el.is('input') ? 'val' : 'html'
|
var val = $el.is('input') ? 'val' : 'html'
|
||||||
var data = $el.data()
|
var data = $el.data()
|
||||||
|
|
||||||
state = state + 'Text'
|
state += 'Text'
|
||||||
|
|
||||||
if (data.resetText == null) $el.data('resetText', $el[val]())
|
if (data.resetText == null) $el.data('resetText', $el[val]())
|
||||||
|
|
||||||
|
@ -229,15 +229,19 @@ if (typeof jQuery === 'undefined') {
|
||||||
if ($parent.length) {
|
if ($parent.length) {
|
||||||
var $input = this.$element.find('input')
|
var $input = this.$element.find('input')
|
||||||
if ($input.prop('type') == 'radio') {
|
if ($input.prop('type') == 'radio') {
|
||||||
if ($input.prop('checked') && this.$element.hasClass('active')) changed = false
|
if ($input.prop('checked')) changed = false
|
||||||
else $parent.find('.active').removeClass('active')
|
$parent.find('.active').removeClass('active')
|
||||||
|
this.$element.addClass('active')
|
||||||
|
} else if ($input.prop('type') == 'checkbox') {
|
||||||
|
if (($input.prop('checked')) !== this.$element.hasClass('active')) changed = false
|
||||||
|
this.$element.toggleClass('active')
|
||||||
}
|
}
|
||||||
if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change')
|
$input.prop('checked', this.$element.hasClass('active'))
|
||||||
|
if (changed) $input.trigger('change')
|
||||||
} else {
|
} else {
|
||||||
this.$element.attr('aria-pressed', !this.$element.hasClass('active'))
|
this.$element.attr('aria-pressed', !this.$element.hasClass('active'))
|
||||||
|
this.$element.toggleClass('active')
|
||||||
}
|
}
|
||||||
|
|
||||||
if (changed) this.$element.toggleClass('active')
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -280,7 +284,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
var $btn = $(e.target)
|
var $btn = $(e.target)
|
||||||
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
|
||||||
Plugin.call($btn, 'toggle')
|
Plugin.call($btn, 'toggle')
|
||||||
e.preventDefault()
|
if (!($(e.target).is('input[type="radio"]') || $(e.target).is('input[type="checkbox"]'))) e.preventDefault()
|
||||||
})
|
})
|
||||||
.on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) {
|
.on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) {
|
||||||
$(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type))
|
$(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type))
|
||||||
|
@ -289,7 +293,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: carousel.js v3.3.4
|
* Bootstrap: carousel.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#carousel
|
* http://getbootstrap.com/javascript/#carousel
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -320,7 +324,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
|
.on('mouseleave.bs.carousel', $.proxy(this.cycle, this))
|
||||||
}
|
}
|
||||||
|
|
||||||
Carousel.VERSION = '3.3.4'
|
Carousel.VERSION = '3.3.5'
|
||||||
|
|
||||||
Carousel.TRANSITION_DURATION = 600
|
Carousel.TRANSITION_DURATION = 600
|
||||||
|
|
||||||
|
@ -527,7 +531,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: collapse.js v3.3.4
|
* Bootstrap: collapse.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#collapse
|
* http://getbootstrap.com/javascript/#collapse
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -557,7 +561,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
if (this.options.toggle) this.toggle()
|
if (this.options.toggle) this.toggle()
|
||||||
}
|
}
|
||||||
|
|
||||||
Collapse.VERSION = '3.3.4'
|
Collapse.VERSION = '3.3.5'
|
||||||
|
|
||||||
Collapse.TRANSITION_DURATION = 350
|
Collapse.TRANSITION_DURATION = 350
|
||||||
|
|
||||||
|
@ -739,7 +743,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: dropdown.js v3.3.4
|
* Bootstrap: dropdown.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#dropdowns
|
* http://getbootstrap.com/javascript/#dropdowns
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -759,7 +763,41 @@ if (typeof jQuery === 'undefined') {
|
||||||
$(element).on('click.bs.dropdown', this.toggle)
|
$(element).on('click.bs.dropdown', this.toggle)
|
||||||
}
|
}
|
||||||
|
|
||||||
Dropdown.VERSION = '3.3.4'
|
Dropdown.VERSION = '3.3.5'
|
||||||
|
|
||||||
|
function getParent($this) {
|
||||||
|
var selector = $this.attr('data-target')
|
||||||
|
|
||||||
|
if (!selector) {
|
||||||
|
selector = $this.attr('href')
|
||||||
|
selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
||||||
|
}
|
||||||
|
|
||||||
|
var $parent = selector && $(selector)
|
||||||
|
|
||||||
|
return $parent && $parent.length ? $parent : $this.parent()
|
||||||
|
}
|
||||||
|
|
||||||
|
function clearMenus(e) {
|
||||||
|
if (e && e.which === 3) return
|
||||||
|
$(backdrop).remove()
|
||||||
|
$(toggle).each(function () {
|
||||||
|
var $this = $(this)
|
||||||
|
var $parent = getParent($this)
|
||||||
|
var relatedTarget = { relatedTarget: this }
|
||||||
|
|
||||||
|
if (!$parent.hasClass('open')) return
|
||||||
|
|
||||||
|
if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return
|
||||||
|
|
||||||
|
$parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))
|
||||||
|
|
||||||
|
if (e.isDefaultPrevented()) return
|
||||||
|
|
||||||
|
$this.attr('aria-expanded', 'false')
|
||||||
|
$parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
Dropdown.prototype.toggle = function (e) {
|
Dropdown.prototype.toggle = function (e) {
|
||||||
var $this = $(this)
|
var $this = $(this)
|
||||||
|
@ -774,7 +812,10 @@ if (typeof jQuery === 'undefined') {
|
||||||
if (!isActive) {
|
if (!isActive) {
|
||||||
if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
|
if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
|
||||||
// if mobile we use a backdrop because click events don't delegate
|
// if mobile we use a backdrop because click events don't delegate
|
||||||
$('<div class="dropdown-backdrop"/>').insertAfter($(this)).on('click', clearMenus)
|
$(document.createElement('div'))
|
||||||
|
.addClass('dropdown-backdrop')
|
||||||
|
.insertAfter($(this))
|
||||||
|
.on('click', clearMenus)
|
||||||
}
|
}
|
||||||
|
|
||||||
var relatedTarget = { relatedTarget: this }
|
var relatedTarget = { relatedTarget: this }
|
||||||
|
@ -807,57 +848,25 @@ if (typeof jQuery === 'undefined') {
|
||||||
var $parent = getParent($this)
|
var $parent = getParent($this)
|
||||||
var isActive = $parent.hasClass('open')
|
var isActive = $parent.hasClass('open')
|
||||||
|
|
||||||
if ((!isActive && e.which != 27) || (isActive && e.which == 27)) {
|
if (!isActive && e.which != 27 || isActive && e.which == 27) {
|
||||||
if (e.which == 27) $parent.find(toggle).trigger('focus')
|
if (e.which == 27) $parent.find(toggle).trigger('focus')
|
||||||
return $this.trigger('click')
|
return $this.trigger('click')
|
||||||
}
|
}
|
||||||
|
|
||||||
var desc = ' li:not(.disabled):visible a'
|
var desc = ' li:not(.disabled):visible a'
|
||||||
var $items = $parent.find('[role="menu"]' + desc + ', [role="listbox"]' + desc)
|
var $items = $parent.find('.dropdown-menu' + desc)
|
||||||
|
|
||||||
if (!$items.length) return
|
if (!$items.length) return
|
||||||
|
|
||||||
var index = $items.index(e.target)
|
var index = $items.index(e.target)
|
||||||
|
|
||||||
if (e.which == 38 && index > 0) index-- // up
|
if (e.which == 38 && index > 0) index-- // up
|
||||||
if (e.which == 40 && index < $items.length - 1) index++ // down
|
if (e.which == 40 && index < $items.length - 1) index++ // down
|
||||||
if (!~index) index = 0
|
if (!~index) index = 0
|
||||||
|
|
||||||
$items.eq(index).trigger('focus')
|
$items.eq(index).trigger('focus')
|
||||||
}
|
}
|
||||||
|
|
||||||
function clearMenus(e) {
|
|
||||||
if (e && e.which === 3) return
|
|
||||||
$(backdrop).remove()
|
|
||||||
$(toggle).each(function () {
|
|
||||||
var $this = $(this)
|
|
||||||
var $parent = getParent($this)
|
|
||||||
var relatedTarget = { relatedTarget: this }
|
|
||||||
|
|
||||||
if (!$parent.hasClass('open')) return
|
|
||||||
|
|
||||||
$parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))
|
|
||||||
|
|
||||||
if (e.isDefaultPrevented()) return
|
|
||||||
|
|
||||||
$this.attr('aria-expanded', 'false')
|
|
||||||
$parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
function getParent($this) {
|
|
||||||
var selector = $this.attr('data-target')
|
|
||||||
|
|
||||||
if (!selector) {
|
|
||||||
selector = $this.attr('href')
|
|
||||||
selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7
|
|
||||||
}
|
|
||||||
|
|
||||||
var $parent = selector && $(selector)
|
|
||||||
|
|
||||||
return $parent && $parent.length ? $parent : $this.parent()
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// DROPDOWN PLUGIN DEFINITION
|
// DROPDOWN PLUGIN DEFINITION
|
||||||
// ==========================
|
// ==========================
|
||||||
|
@ -895,13 +904,12 @@ if (typeof jQuery === 'undefined') {
|
||||||
.on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
.on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
|
||||||
.on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)
|
.on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)
|
||||||
.on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)
|
.on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown)
|
||||||
.on('keydown.bs.dropdown.data-api', '[role="menu"]', Dropdown.prototype.keydown)
|
.on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown)
|
||||||
.on('keydown.bs.dropdown.data-api', '[role="listbox"]', Dropdown.prototype.keydown)
|
|
||||||
|
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: modal.js v3.3.4
|
* Bootstrap: modal.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#modals
|
* http://getbootstrap.com/javascript/#modals
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -935,7 +943,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Modal.VERSION = '3.3.4'
|
Modal.VERSION = '3.3.5'
|
||||||
|
|
||||||
Modal.TRANSITION_DURATION = 300
|
Modal.TRANSITION_DURATION = 300
|
||||||
Modal.BACKDROP_TRANSITION_DURATION = 150
|
Modal.BACKDROP_TRANSITION_DURATION = 150
|
||||||
|
@ -992,9 +1000,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
that.$element[0].offsetWidth // force reflow
|
that.$element[0].offsetWidth // force reflow
|
||||||
}
|
}
|
||||||
|
|
||||||
that.$element
|
that.$element.addClass('in')
|
||||||
.addClass('in')
|
|
||||||
.attr('aria-hidden', false)
|
|
||||||
|
|
||||||
that.enforceFocus()
|
that.enforceFocus()
|
||||||
|
|
||||||
|
@ -1028,7 +1034,6 @@ if (typeof jQuery === 'undefined') {
|
||||||
|
|
||||||
this.$element
|
this.$element
|
||||||
.removeClass('in')
|
.removeClass('in')
|
||||||
.attr('aria-hidden', true)
|
|
||||||
.off('click.dismiss.bs.modal')
|
.off('click.dismiss.bs.modal')
|
||||||
.off('mouseup.dismiss.bs.modal')
|
.off('mouseup.dismiss.bs.modal')
|
||||||
|
|
||||||
|
@ -1092,7 +1097,8 @@ if (typeof jQuery === 'undefined') {
|
||||||
if (this.isShown && this.options.backdrop) {
|
if (this.isShown && this.options.backdrop) {
|
||||||
var doAnimate = $.support.transition && animate
|
var doAnimate = $.support.transition && animate
|
||||||
|
|
||||||
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
|
this.$backdrop = $(document.createElement('div'))
|
||||||
|
.addClass('modal-backdrop ' + animate)
|
||||||
.appendTo(this.$body)
|
.appendTo(this.$body)
|
||||||
|
|
||||||
this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {
|
this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {
|
||||||
|
@ -1241,7 +1247,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: tooltip.js v3.3.4
|
* Bootstrap: tooltip.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#tooltip
|
* http://getbootstrap.com/javascript/#tooltip
|
||||||
* Inspired by the original jQuery.tipsy by Jason Frame
|
* Inspired by the original jQuery.tipsy by Jason Frame
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
|
@ -1263,11 +1269,12 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.timeout = null
|
this.timeout = null
|
||||||
this.hoverState = null
|
this.hoverState = null
|
||||||
this.$element = null
|
this.$element = null
|
||||||
|
this.inState = null
|
||||||
|
|
||||||
this.init('tooltip', element, options)
|
this.init('tooltip', element, options)
|
||||||
}
|
}
|
||||||
|
|
||||||
Tooltip.VERSION = '3.3.4'
|
Tooltip.VERSION = '3.3.5'
|
||||||
|
|
||||||
Tooltip.TRANSITION_DURATION = 150
|
Tooltip.TRANSITION_DURATION = 150
|
||||||
|
|
||||||
|
@ -1292,7 +1299,8 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.type = type
|
this.type = type
|
||||||
this.$element = $(element)
|
this.$element = $(element)
|
||||||
this.options = this.getOptions(options)
|
this.options = this.getOptions(options)
|
||||||
this.$viewport = this.options.viewport && $(this.options.viewport.selector || this.options.viewport)
|
this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport))
|
||||||
|
this.inState = { click: false, hover: false, focus: false }
|
||||||
|
|
||||||
if (this.$element[0] instanceof document.constructor && !this.options.selector) {
|
if (this.$element[0] instanceof document.constructor && !this.options.selector) {
|
||||||
throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!')
|
throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!')
|
||||||
|
@ -1351,16 +1359,20 @@ if (typeof jQuery === 'undefined') {
|
||||||
var self = obj instanceof this.constructor ?
|
var self = obj instanceof this.constructor ?
|
||||||
obj : $(obj.currentTarget).data('bs.' + this.type)
|
obj : $(obj.currentTarget).data('bs.' + this.type)
|
||||||
|
|
||||||
if (self && self.$tip && self.$tip.is(':visible')) {
|
|
||||||
self.hoverState = 'in'
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!self) {
|
if (!self) {
|
||||||
self = new this.constructor(obj.currentTarget, this.getDelegateOptions())
|
self = new this.constructor(obj.currentTarget, this.getDelegateOptions())
|
||||||
$(obj.currentTarget).data('bs.' + this.type, self)
|
$(obj.currentTarget).data('bs.' + this.type, self)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (obj instanceof $.Event) {
|
||||||
|
self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true
|
||||||
|
}
|
||||||
|
|
||||||
|
if (self.tip().hasClass('in') || self.hoverState == 'in') {
|
||||||
|
self.hoverState = 'in'
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
clearTimeout(self.timeout)
|
clearTimeout(self.timeout)
|
||||||
|
|
||||||
self.hoverState = 'in'
|
self.hoverState = 'in'
|
||||||
|
@ -1372,6 +1384,14 @@ if (typeof jQuery === 'undefined') {
|
||||||
}, self.options.delay.show)
|
}, self.options.delay.show)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Tooltip.prototype.isInStateTrue = function () {
|
||||||
|
for (var key in this.inState) {
|
||||||
|
if (this.inState[key]) return true
|
||||||
|
}
|
||||||
|
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
Tooltip.prototype.leave = function (obj) {
|
Tooltip.prototype.leave = function (obj) {
|
||||||
var self = obj instanceof this.constructor ?
|
var self = obj instanceof this.constructor ?
|
||||||
obj : $(obj.currentTarget).data('bs.' + this.type)
|
obj : $(obj.currentTarget).data('bs.' + this.type)
|
||||||
|
@ -1381,6 +1401,12 @@ if (typeof jQuery === 'undefined') {
|
||||||
$(obj.currentTarget).data('bs.' + this.type, self)
|
$(obj.currentTarget).data('bs.' + this.type, self)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (obj instanceof $.Event) {
|
||||||
|
self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false
|
||||||
|
}
|
||||||
|
|
||||||
|
if (self.isInStateTrue()) return
|
||||||
|
|
||||||
clearTimeout(self.timeout)
|
clearTimeout(self.timeout)
|
||||||
|
|
||||||
self.hoverState = 'out'
|
self.hoverState = 'out'
|
||||||
|
@ -1427,6 +1453,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
.data('bs.' + this.type, this)
|
.data('bs.' + this.type, this)
|
||||||
|
|
||||||
this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
|
this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
|
||||||
|
this.$element.trigger('inserted.bs.' + this.type)
|
||||||
|
|
||||||
var pos = this.getPosition()
|
var pos = this.getPosition()
|
||||||
var actualWidth = $tip[0].offsetWidth
|
var actualWidth = $tip[0].offsetWidth
|
||||||
|
@ -1434,13 +1461,12 @@ if (typeof jQuery === 'undefined') {
|
||||||
|
|
||||||
if (autoPlace) {
|
if (autoPlace) {
|
||||||
var orgPlacement = placement
|
var orgPlacement = placement
|
||||||
var $container = this.options.container ? $(this.options.container) : this.$element.parent()
|
var viewportDim = this.getPosition(this.$viewport)
|
||||||
var containerDim = this.getPosition($container)
|
|
||||||
|
|
||||||
placement = placement == 'bottom' && pos.bottom + actualHeight > containerDim.bottom ? 'top' :
|
placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' :
|
||||||
placement == 'top' && pos.top - actualHeight < containerDim.top ? 'bottom' :
|
placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' :
|
||||||
placement == 'right' && pos.right + actualWidth > containerDim.width ? 'left' :
|
placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' :
|
||||||
placement == 'left' && pos.left - actualWidth < containerDim.left ? 'right' :
|
placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' :
|
||||||
placement
|
placement
|
||||||
|
|
||||||
$tip
|
$tip
|
||||||
|
@ -1481,8 +1507,8 @@ if (typeof jQuery === 'undefined') {
|
||||||
if (isNaN(marginTop)) marginTop = 0
|
if (isNaN(marginTop)) marginTop = 0
|
||||||
if (isNaN(marginLeft)) marginLeft = 0
|
if (isNaN(marginLeft)) marginLeft = 0
|
||||||
|
|
||||||
offset.top = offset.top + marginTop
|
offset.top += marginTop
|
||||||
offset.left = offset.left + marginLeft
|
offset.left += marginLeft
|
||||||
|
|
||||||
// $.fn.offset doesn't round pixel values
|
// $.fn.offset doesn't round pixel values
|
||||||
// so we use setOffset directly with our own function B-0
|
// so we use setOffset directly with our own function B-0
|
||||||
|
@ -1564,7 +1590,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
|
|
||||||
Tooltip.prototype.fixTitle = function () {
|
Tooltip.prototype.fixTitle = function () {
|
||||||
var $e = this.$element
|
var $e = this.$element
|
||||||
if ($e.attr('title') || typeof ($e.attr('data-original-title')) != 'string') {
|
if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') {
|
||||||
$e.attr('data-original-title', $e.attr('title') || '').attr('title', '')
|
$e.attr('data-original-title', $e.attr('title') || '').attr('title', '')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1619,7 +1645,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
var rightEdgeOffset = pos.left + viewportPadding + actualWidth
|
var rightEdgeOffset = pos.left + viewportPadding + actualWidth
|
||||||
if (leftEdgeOffset < viewportDimensions.left) { // left overflow
|
if (leftEdgeOffset < viewportDimensions.left) { // left overflow
|
||||||
delta.left = viewportDimensions.left - leftEdgeOffset
|
delta.left = viewportDimensions.left - leftEdgeOffset
|
||||||
} else if (rightEdgeOffset > viewportDimensions.width) { // right overflow
|
} else if (rightEdgeOffset > viewportDimensions.right) { // right overflow
|
||||||
delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset
|
delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1645,7 +1671,13 @@ if (typeof jQuery === 'undefined') {
|
||||||
}
|
}
|
||||||
|
|
||||||
Tooltip.prototype.tip = function () {
|
Tooltip.prototype.tip = function () {
|
||||||
return (this.$tip = this.$tip || $(this.options.template))
|
if (!this.$tip) {
|
||||||
|
this.$tip = $(this.options.template)
|
||||||
|
if (this.$tip.length != 1) {
|
||||||
|
throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return this.$tip
|
||||||
}
|
}
|
||||||
|
|
||||||
Tooltip.prototype.arrow = function () {
|
Tooltip.prototype.arrow = function () {
|
||||||
|
@ -1674,7 +1706,13 @@ if (typeof jQuery === 'undefined') {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
self.tip().hasClass('in') ? self.leave(self) : self.enter(self)
|
if (e) {
|
||||||
|
self.inState.click = !self.inState.click
|
||||||
|
if (self.isInStateTrue()) self.enter(self)
|
||||||
|
else self.leave(self)
|
||||||
|
} else {
|
||||||
|
self.tip().hasClass('in') ? self.leave(self) : self.enter(self)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Tooltip.prototype.destroy = function () {
|
Tooltip.prototype.destroy = function () {
|
||||||
|
@ -1682,6 +1720,12 @@ if (typeof jQuery === 'undefined') {
|
||||||
clearTimeout(this.timeout)
|
clearTimeout(this.timeout)
|
||||||
this.hide(function () {
|
this.hide(function () {
|
||||||
that.$element.off('.' + that.type).removeData('bs.' + that.type)
|
that.$element.off('.' + that.type).removeData('bs.' + that.type)
|
||||||
|
if (that.$tip) {
|
||||||
|
that.$tip.detach()
|
||||||
|
}
|
||||||
|
that.$tip = null
|
||||||
|
that.$arrow = null
|
||||||
|
that.$viewport = null
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1718,7 +1762,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: popover.js v3.3.4
|
* Bootstrap: popover.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#popovers
|
* http://getbootstrap.com/javascript/#popovers
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -1738,7 +1782,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
|
|
||||||
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')
|
||||||
|
|
||||||
Popover.VERSION = '3.3.4'
|
Popover.VERSION = '3.3.5'
|
||||||
|
|
||||||
Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
|
Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {
|
||||||
placement: 'right',
|
placement: 'right',
|
||||||
|
@ -1827,7 +1871,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: scrollspy.js v3.3.4
|
* Bootstrap: scrollspy.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#scrollspy
|
* http://getbootstrap.com/javascript/#scrollspy
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -1856,7 +1900,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.process()
|
this.process()
|
||||||
}
|
}
|
||||||
|
|
||||||
ScrollSpy.VERSION = '3.3.4'
|
ScrollSpy.VERSION = '3.3.5'
|
||||||
|
|
||||||
ScrollSpy.DEFAULTS = {
|
ScrollSpy.DEFAULTS = {
|
||||||
offset: 10
|
offset: 10
|
||||||
|
@ -2000,7 +2044,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: tab.js v3.3.4
|
* Bootstrap: tab.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#tabs
|
* http://getbootstrap.com/javascript/#tabs
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -2015,10 +2059,12 @@ if (typeof jQuery === 'undefined') {
|
||||||
// ====================
|
// ====================
|
||||||
|
|
||||||
var Tab = function (element) {
|
var Tab = function (element) {
|
||||||
|
// jscs:disable requireDollarBeforejQueryAssignment
|
||||||
this.element = $(element)
|
this.element = $(element)
|
||||||
|
// jscs:enable requireDollarBeforejQueryAssignment
|
||||||
}
|
}
|
||||||
|
|
||||||
Tab.VERSION = '3.3.4'
|
Tab.VERSION = '3.3.5'
|
||||||
|
|
||||||
Tab.TRANSITION_DURATION = 150
|
Tab.TRANSITION_DURATION = 150
|
||||||
|
|
||||||
|
@ -2066,7 +2112,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
var $active = container.find('> .active')
|
var $active = container.find('> .active')
|
||||||
var transition = callback
|
var transition = callback
|
||||||
&& $.support.transition
|
&& $.support.transition
|
||||||
&& (($active.length && $active.hasClass('fade')) || !!container.find('> .fade').length)
|
&& ($active.length && $active.hasClass('fade') || !!container.find('> .fade').length)
|
||||||
|
|
||||||
function next() {
|
function next() {
|
||||||
$active
|
$active
|
||||||
|
@ -2154,7 +2200,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
}(jQuery);
|
}(jQuery);
|
||||||
|
|
||||||
/* ========================================================================
|
/* ========================================================================
|
||||||
* Bootstrap: affix.js v3.3.4
|
* Bootstrap: affix.js v3.3.5
|
||||||
* http://getbootstrap.com/javascript/#affix
|
* http://getbootstrap.com/javascript/#affix
|
||||||
* ========================================================================
|
* ========================================================================
|
||||||
* Copyright 2011-2015 Twitter, Inc.
|
* Copyright 2011-2015 Twitter, Inc.
|
||||||
|
@ -2183,7 +2229,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
this.checkPosition()
|
this.checkPosition()
|
||||||
}
|
}
|
||||||
|
|
||||||
Affix.VERSION = '3.3.4'
|
Affix.VERSION = '3.3.5'
|
||||||
|
|
||||||
Affix.RESET = 'affix affix-top affix-bottom'
|
Affix.RESET = 'affix affix-top affix-bottom'
|
||||||
|
|
||||||
|
@ -2233,7 +2279,7 @@ if (typeof jQuery === 'undefined') {
|
||||||
var offset = this.options.offset
|
var offset = this.options.offset
|
||||||
var offsetTop = offset.top
|
var offsetTop = offset.top
|
||||||
var offsetBottom = offset.bottom
|
var offsetBottom = offset.bottom
|
||||||
var scrollHeight = $(document.body).height()
|
var scrollHeight = Math.max($(document).height(), $(document.body).height())
|
||||||
|
|
||||||
if (typeof offset != 'object') offsetBottom = offsetTop = offset
|
if (typeof offset != 'object') offsetBottom = offsetTop = offset
|
||||||
if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element)
|
if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element)
|
||||||
|
|
Loading…
Reference in New Issue