Pārlūkot izejas kodu

Upgrade Bootstrap to v3.3.7

Also use npm to manage the dependency, and gulp to copy the files into our static directories.
master
Samir Shah 8 gadus atpakaļ
vecāks
revīzija
a9b5d5086b
63 mainītis faili ar 2302 papildinājumiem un 1236 dzēšanām
  1. 13
    0
      gulpfile.js/tasks/copy.js
  2. 1
    1
      gulpfile.js/tasks/default.js
  3. 6
    0
      package-lock.json
  4. 1
    0
      package.json
  5. 615
    346
      src/oscar/static/oscar/css/dashboard.css
  6. 1
    1
      src/oscar/static/oscar/css/dashboard.css.map
  7. 871
    398
      src/oscar/static/oscar/css/styles.css
  8. 1
    1
      src/oscar/static/oscar/css/styles.css.map
  9. Binārs
      src/oscar/static/oscar/fonts/glyphicons-halflings-regular.woff2
  10. 5
    4
      src/oscar/static/oscar/js/bootstrap3/bootstrap.min.js
  11. 5
    0
      src/oscar/static/oscar/less/bootstrap3/alerts.less
  12. 14
    3
      src/oscar/static/oscar/less/bootstrap3/badges.less
  13. 6
    0
      src/oscar/static/oscar/less/bootstrap3/bootstrap.less
  14. 22
    18
      src/oscar/static/oscar/less/bootstrap3/button-groups.less
  15. 19
    10
      src/oscar/static/oscar/less/bootstrap3/buttons.less
  16. 34
    7
      src/oscar/static/oscar/less/bootstrap3/carousel.less
  17. 1
    0
      src/oscar/static/oscar/less/bootstrap3/close.less
  18. 1
    0
      src/oscar/static/oscar/less/bootstrap3/code.less
  19. 3
    1
      src/oscar/static/oscar/less/bootstrap3/component-animations.less
  20. 9
    8
      src/oscar/static/oscar/less/bootstrap3/dropdowns.less
  21. 123
    50
      src/oscar/static/oscar/less/bootstrap3/forms.less
  22. 75
    3
      src/oscar/static/oscar/less/bootstrap3/glyphicons.less
  23. 8
    3
      src/oscar/static/oscar/less/bootstrap3/input-groups.less
  24. 10
    4
      src/oscar/static/oscar/less/bootstrap3/jumbotron.less
  25. 10
    11
      src/oscar/static/oscar/less/bootstrap3/list-group.less
  26. 40
    30
      src/oscar/static/oscar/less/bootstrap3/media.less
  27. 1
    0
      src/oscar/static/oscar/less/bootstrap3/mixins.less
  28. 2
    1
      src/oscar/static/oscar/less/bootstrap3/mixins/background-variant.less
  29. 19
    4
      src/oscar/static/oscar/less/bootstrap3/mixins/buttons.less
  30. 5
    1
      src/oscar/static/oscar/less/bootstrap3/mixins/forms.less
  31. 4
    4
      src/oscar/static/oscar/less/bootstrap3/mixins/grid-framework.less
  32. 4
    4
      src/oscar/static/oscar/less/bootstrap3/mixins/grid.less
  33. 2
    2
      src/oscar/static/oscar/less/bootstrap3/mixins/hide-text.less
  34. 0
    1
      src/oscar/static/oscar/less/bootstrap3/mixins/image.less
  35. 1
    1
      src/oscar/static/oscar/less/bootstrap3/mixins/labels.less
  36. 2
    1
      src/oscar/static/oscar/less/bootstrap3/mixins/list-group.less
  37. 2
    1
      src/oscar/static/oscar/less/bootstrap3/mixins/pagination.less
  38. 18
    0
      src/oscar/static/oscar/less/bootstrap3/mixins/reset-text.less
  39. 1
    1
      src/oscar/static/oscar/less/bootstrap3/mixins/responsive-visibility.less
  40. 3
    3
      src/oscar/static/oscar/less/bootstrap3/mixins/tab-focus.less
  41. 2
    1
      src/oscar/static/oscar/less/bootstrap3/mixins/text-emphasis.less
  42. 8
    5
      src/oscar/static/oscar/less/bootstrap3/mixins/vendor-prefixes.less
  43. 3
    3
      src/oscar/static/oscar/less/bootstrap3/modals.less
  44. 30
    25
      src/oscar/static/oscar/less/bootstrap3/navbar.less
  45. 1
    1
      src/oscar/static/oscar/less/bootstrap3/navs.less
  46. 12
    13
      src/oscar/static/oscar/less/bootstrap3/normalize.less
  47. 1
    2
      src/oscar/static/oscar/less/bootstrap3/pager.less
  48. 5
    4
      src/oscar/static/oscar/less/bootstrap3/pagination.less
  49. 33
    5
      src/oscar/static/oscar/less/bootstrap3/panels.less
  50. 5
    7
      src/oscar/static/oscar/less/bootstrap3/popovers.less
  51. 96
    96
      src/oscar/static/oscar/less/bootstrap3/print.less
  52. 1
    19
      src/oscar/static/oscar/less/bootstrap3/progress-bars.less
  53. 10
    9
      src/oscar/static/oscar/less/bootstrap3/responsive-embed.less
  54. 13
    2
      src/oscar/static/oscar/less/bootstrap3/scaffolding.less
  55. 14
    13
      src/oscar/static/oscar/less/bootstrap3/tables.less
  56. 49
    16
      src/oscar/static/oscar/less/bootstrap3/theme.less
  57. 1
    1
      src/oscar/static/oscar/less/bootstrap3/thumbnails.less
  58. 13
    7
      src/oscar/static/oscar/less/bootstrap3/tooltip.less
  59. 2
    13
      src/oscar/static/oscar/less/bootstrap3/type.less
  60. 0
    2
      src/oscar/static/oscar/less/bootstrap3/utilities.less
  61. 45
    22
      src/oscar/static/oscar/less/bootstrap3/variables.less
  62. 0
    9
      src/oscar/static/oscar/less/dashboard/mixins.less
  63. 0
    38
      src/oscar/static/oscar/less/font-awesome/bootstrap.less

+ 13
- 0
gulpfile.js/tasks/copy.js Parādīt failu

@@ -0,0 +1,13 @@
1
+var gulp = require("gulp"),
2
+    copyTask = function(cb) {
3
+        gulp.src("node_modules/bootstrap/less/**/*")
4
+            .pipe(gulp.dest("src/oscar/static/oscar/less/bootstrap3"));
5
+
6
+        gulp.src("node_modules/bootstrap/dist/js/bootstrap.min.js")
7
+            .pipe(gulp.dest("src/oscar/static/oscar/js/bootstrap3"));
8
+
9
+        gulp.src("node_modules/bootstrap/fonts/*")
10
+            .pipe(gulp.dest("src/oscar/static/oscar/fonts/"));
11
+    };
12
+
13
+gulp.task("copy", copyTask);

+ 1
- 1
gulpfile.js/tasks/default.js Parādīt failu

@@ -1,3 +1,3 @@
1 1
 var gulp = require('gulp');
2 2
 
3
-gulp.task('default', ['less']);
3
+gulp.task('default', ['copy', 'less']);

+ 6
- 0
package-lock.json Parādīt failu

@@ -429,6 +429,12 @@
429 429
         "hoek": "2.16.3"
430 430
       }
431 431
     },
432
+    "bootstrap": {
433
+      "version": "3.3.7",
434
+      "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-3.3.7.tgz",
435
+      "integrity": "sha1-WjiTlFSfIzMIdaOxUGVldPip63E=",
436
+      "dev": true
437
+    },
432 438
     "brace-expansion": {
433 439
       "version": "1.1.8",
434 440
       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz",

+ 1
- 0
package.json Parādīt failu

@@ -5,6 +5,7 @@
5 5
   "main": "index.js",
6 6
   "dependencies": {},
7 7
   "devDependencies": {
8
+    "bootstrap": "^3.3.7",
8 9
     "gulp": "~3.9.1",
9 10
     "gulp-autoprefixer": "~1.0.1",
10 11
     "gulp-less": "^3.0.5",

+ 615
- 346
src/oscar/static/oscar/css/dashboard.css
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


+ 1
- 1
src/oscar/static/oscar/css/dashboard.css.map
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


+ 871
- 398
src/oscar/static/oscar/css/styles.css
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


+ 1
- 1
src/oscar/static/oscar/css/styles.css.map
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


Binārs
src/oscar/static/oscar/fonts/glyphicons-halflings-regular.woff2 Parādīt failu


+ 5
- 4
src/oscar/static/oscar/js/bootstrap3/bootstrap.min.js
Failā izmaiņas netiks attēlotas, jo tās ir par lielu
Parādīt failu


+ 5
- 0
src/oscar/static/oscar/less/bootstrap3/alerts.less Parādīt failu

@@ -18,6 +18,7 @@
18 18
     // Specified for the h4 to prevent conflicts of changing @headings-color
19 19
     color: inherit;
20 20
   }
21
+
21 22
   // Provide class for links that match alerts
22 23
   .alert-link {
23 24
     font-weight: @alert-link-font-weight;
@@ -28,6 +29,7 @@
28 29
   > ul {
29 30
     margin-bottom: 0;
30 31
   }
32
+
31 33
   > p + p {
32 34
     margin-top: 5px;
33 35
   }
@@ -57,12 +59,15 @@
57 59
 .alert-success {
58 60
   .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);
59 61
 }
62
+
60 63
 .alert-info {
61 64
   .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);
62 65
 }
66
+
63 67
 .alert-warning {
64 68
   .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);
65 69
 }
70
+
66 71
 .alert-danger {
67 72
   .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);
68 73
 }

+ 14
- 3
src/oscar/static/oscar/less/bootstrap3/badges.less Parādīt failu

@@ -12,7 +12,7 @@
12 12
   font-weight: @badge-font-weight;
13 13
   color: @badge-color;
14 14
   line-height: @badge-line-height;
15
-  vertical-align: baseline;
15
+  vertical-align: middle;
16 16
   white-space: nowrap;
17 17
   text-align: center;
18 18
   background-color: @badge-bg;
@@ -28,7 +28,9 @@
28 28
     position: relative;
29 29
     top: -1px;
30 30
   }
31
-  .btn-xs & {
31
+
32
+  .btn-xs &,
33
+  .btn-group-xs > .btn & {
32 34
     top: 0;
33 35
     padding: 1px 5px;
34 36
   }
@@ -44,11 +46,20 @@
44 46
   }
45 47
 
46 48
   // Account for badges in navs
47
-  a.list-group-item.active > &,
49
+  .list-group-item.active > &,
48 50
   .nav-pills > .active > a > & {
49 51
     color: @badge-active-color;
50 52
     background-color: @badge-active-bg;
51 53
   }
54
+
55
+  .list-group-item > & {
56
+    float: right;
57
+  }
58
+
59
+  .list-group-item > & + & {
60
+    margin-right: 5px;
61
+  }
62
+
52 63
   .nav-pills > li > a > & {
53 64
     margin-left: 3px;
54 65
   }

+ 6
- 0
src/oscar/static/oscar/less/bootstrap3/bootstrap.less Parādīt failu

@@ -1,3 +1,9 @@
1
+/*!
2
+ * Bootstrap v3.3.7 (http://getbootstrap.com)
3
+ * Copyright 2011-2016 Twitter, Inc.
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
6
+
1 7
 // Core variables and mixins
2 8
 @import "variables.less";
3 9
 @import "mixins.less";

+ 22
- 18
src/oscar/static/oscar/less/bootstrap3/button-groups.less Parādīt failu

@@ -18,10 +18,6 @@
18 18
     &.active {
19 19
       z-index: 2;
20 20
     }
21
-    &:focus {
22
-      // Remove focus outline when dropdown JS adds it after closing the menu
23
-      outline: 0;
24
-    }
25 21
   }
26 22
 }
27 23
 
@@ -40,6 +36,7 @@
40 36
   margin-left: -5px; // Offset the first child's margin
41 37
   &:extend(.clearfix all);
42 38
 
39
+  .btn,
43 40
   .btn-group,
44 41
   .input-group {
45 42
     float: left;
@@ -62,7 +59,7 @@
62 59
     .border-right-radius(0);
63 60
   }
64 61
 }
65
-// Need .dropdown-toggle since :last-child doesn't apply given a .dropdown-menu immediately after it
62
+// Need .dropdown-toggle since :last-child doesn't apply, given that a .dropdown-menu is used immediately after it
66 63
 .btn-group > .btn:last-child:not(:first-child),
67 64
 .btn-group > .dropdown-toggle:not(:first-child) {
68 65
   .border-left-radius(0);
@@ -75,13 +72,13 @@
75 72
 .btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
76 73
   border-radius: 0;
77 74
 }
78
-.btn-group > .btn-group:first-child {
75
+.btn-group > .btn-group:first-child:not(:last-child) {
79 76
   > .btn:last-child,
80 77
   > .dropdown-toggle {
81 78
     .border-right-radius(0);
82 79
   }
83 80
 }
84
-.btn-group > .btn-group:last-child > .btn:first-child {
81
+.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
85 82
   .border-left-radius(0);
86 83
 }
87 84
 
@@ -176,12 +173,12 @@
176 173
     border-radius: 0;
177 174
   }
178 175
   &:first-child:not(:last-child) {
179
-    border-top-right-radius: @border-radius-base;
176
+    .border-top-radius(@btn-border-radius-base);
180 177
     .border-bottom-radius(0);
181 178
   }
182 179
   &:last-child:not(:first-child) {
183
-    border-bottom-left-radius: @border-radius-base;
184 180
     .border-top-radius(0);
181
+    .border-bottom-radius(@btn-border-radius-base);
185 182
   }
186 183
 }
187 184
 .btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
@@ -198,7 +195,6 @@
198 195
 }
199 196
 
200 197
 
201
-
202 198
 // Justified button groups
203 199
 // ----------------------
204 200
 
@@ -226,15 +222,23 @@
226 222
 // Checkbox and radio options
227 223
 //
228 224
 // In order to support the browser's form validation feedback, powered by the
229
-// `required` attribute, we have to "hide" the inputs via `opacity`. We cannot
230
-// use `display: none;` or `visibility: hidden;` as that also hides the popover.
225
+// `required` attribute, we have to "hide" the inputs via `clip`. We cannot use
226
+// `display: none;` or `visibility: hidden;` as that also hides the popover.
227
+// Simply visually hiding the inputs via `opacity` would leave them clickable in
228
+// certain cases which is prevented by using `clip` and `pointer-events`.
231 229
 // This way, we ensure a DOM element is visible to position the popover from.
232 230
 //
233
-// See https://github.com/twbs/bootstrap/pull/12794 for more.
231
+// See https://github.com/twbs/bootstrap/pull/12794 and
232
+// https://github.com/twbs/bootstrap/pull/14559 for more information.
234 233
 
235
-[data-toggle="buttons"] > .btn > input[type="radio"],
236
-[data-toggle="buttons"] > .btn > input[type="checkbox"] {
237
-  position: absolute;
238
-  z-index: -1;
239
-  .opacity(0);
234
+[data-toggle="buttons"] {
235
+  > .btn,
236
+  > .btn-group > .btn {
237
+    input[type="radio"],
238
+    input[type="checkbox"] {
239
+      position: absolute;
240
+      clip: rect(0,0,0,0);
241
+      pointer-events: none;
242
+    }
243
+  }
240 244
 }

+ 19
- 10
src/oscar/static/oscar/less/bootstrap3/buttons.less Parādīt failu

@@ -12,23 +12,26 @@
12 12
   font-weight: @btn-font-weight;
13 13
   text-align: center;
14 14
   vertical-align: middle;
15
+  touch-action: manipulation;
15 16
   cursor: pointer;
16 17
   background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
17 18
   border: 1px solid transparent;
18 19
   white-space: nowrap;
19
-  .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base);
20
+  .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @btn-border-radius-base);
20 21
   .user-select(none);
21 22
 
22 23
   &,
23 24
   &:active,
24 25
   &.active {
25
-    &:focus {
26
+    &:focus,
27
+    &.focus {
26 28
       .tab-focus();
27 29
     }
28 30
   }
29 31
 
30 32
   &:hover,
31
-  &:focus {
33
+  &:focus,
34
+  &.focus {
32 35
     color: @btn-default-color;
33 36
     text-decoration: none;
34 37
   }
@@ -43,11 +46,17 @@
43 46
   &.disabled,
44 47
   &[disabled],
45 48
   fieldset[disabled] & {
46
-    cursor: not-allowed;
47
-    pointer-events: none; // Future-proof disabling of clicks
49
+    cursor: @cursor-disabled;
48 50
     .opacity(.65);
49 51
     .box-shadow(none);
50 52
   }
53
+
54
+  a& {
55
+    &.disabled,
56
+    fieldset[disabled] & {
57
+      pointer-events: none; // Future-proof disabling of clicks on `<a>` elements
58
+    }
59
+  }
51 60
 }
52 61
 
53 62
 
@@ -85,11 +94,11 @@
85 94
 .btn-link {
86 95
   color: @link-color;
87 96
   font-weight: normal;
88
-  cursor: pointer;
89 97
   border-radius: 0;
90 98
 
91 99
   &,
92 100
   &:active,
101
+  &.active,
93 102
   &[disabled],
94 103
   fieldset[disabled] & {
95 104
     background-color: transparent;
@@ -104,7 +113,7 @@
104 113
   &:hover,
105 114
   &:focus {
106 115
     color: @link-hover-color;
107
-    text-decoration: underline;
116
+    text-decoration: @link-hover-decoration;
108 117
     background-color: transparent;
109 118
   }
110 119
   &[disabled],
@@ -123,14 +132,14 @@
123 132
 
124 133
 .btn-lg {
125 134
   // line-height: ensure even-numbered height of button next to large input
126
-  .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
135
+  .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @btn-border-radius-large);
127 136
 }
128 137
 .btn-sm {
129 138
   // line-height: ensure proper height of button next to small input
130
-  .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
139
+  .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);
131 140
 }
132 141
 .btn-xs {
133
-  .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small);
142
+  .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @btn-border-radius-small);
134 143
 }
135 144
 
136 145
 

+ 34
- 7
src/oscar/static/oscar/less/bootstrap3/carousel.less Parādīt failu

@@ -24,6 +24,30 @@
24 24
       &:extend(.img-responsive);
25 25
       line-height: 1;
26 26
     }
27
+
28
+    // WebKit CSS3 transforms for supported devices
29
+    @media all and (transform-3d), (-webkit-transform-3d) {
30
+      .transition-transform(~'0.6s ease-in-out');
31
+      .backface-visibility(~'hidden');
32
+      .perspective(1000px);
33
+
34
+      &.next,
35
+      &.active.right {
36
+        .translate3d(100%, 0, 0);
37
+        left: 0;
38
+      }
39
+      &.prev,
40
+      &.active.left {
41
+        .translate3d(-100%, 0, 0);
42
+        left: 0;
43
+      }
44
+      &.next.left,
45
+      &.prev.right,
46
+      &.active {
47
+        .translate3d(0, 0, 0);
48
+        left: 0;
49
+      }
50
+    }
27 51
   }
28 52
 
29 53
   > .active,
@@ -77,6 +101,7 @@
77 101
   color: @carousel-control-color;
78 102
   text-align: center;
79 103
   text-shadow: @carousel-text-shadow;
104
+  background-color: rgba(0, 0, 0, 0); // Fix IE9 click-thru bug
80 105
   // We can't have this transition here because WebKit cancels the carousel
81 106
   // animation if you trip this while in the middle of another animation.
82 107
 
@@ -106,6 +131,7 @@
106 131
   .glyphicon-chevron-right {
107 132
     position: absolute;
108 133
     top: 50%;
134
+    margin-top: -10px;
109 135
     z-index: 5;
110 136
     display: inline-block;
111 137
   }
@@ -123,7 +149,7 @@
123 149
   .icon-next {
124 150
     width:  20px;
125 151
     height: 20px;
126
-    margin-top: -10px;
152
+    line-height: 1;
127 153
     font-family: serif;
128 154
   }
129 155
 
@@ -171,6 +197,7 @@
171 197
     // Internet Explorer 8-9 does not support clicks on elements without a set
172 198
     // `background-color`. We cannot use `filter` since that's not viewed as a
173 199
     // background color by the browser. Thus, a hack is needed.
200
+    // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Internet_Explorer
174 201
     //
175 202
     // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we
176 203
     // set alpha transparency for the best results possible.
@@ -214,18 +241,18 @@
214 241
     .glyphicon-chevron-right,
215 242
     .icon-prev,
216 243
     .icon-next {
217
-      width: 30px;
218
-      height: 30px;
219
-      margin-top: -15px;
220
-      font-size: 30px;
244
+      width: (@carousel-control-font-size * 1.5);
245
+      height: (@carousel-control-font-size * 1.5);
246
+      margin-top: (@carousel-control-font-size / -2);
247
+      font-size: (@carousel-control-font-size * 1.5);
221 248
     }
222 249
     .glyphicon-chevron-left,
223 250
     .icon-prev {
224
-      margin-left: -15px;
251
+      margin-left: (@carousel-control-font-size / -2);
225 252
     }
226 253
     .glyphicon-chevron-right,
227 254
     .icon-next {
228
-      margin-right: -15px;
255
+      margin-right: (@carousel-control-font-size / -2);
229 256
     }
230 257
   }
231 258
 

+ 1
- 0
src/oscar/static/oscar/less/bootstrap3/close.less Parādīt failu

@@ -23,6 +23,7 @@
23 23
   // Additional properties for button version
24 24
   // iOS requires the button element instead of an anchor tag.
25 25
   // If you want the anchor version, it requires `href="#"`.
26
+  // See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
26 27
   button& {
27 28
     padding: 0;
28 29
     cursor: pointer;

+ 1
- 0
src/oscar/static/oscar/less/bootstrap3/code.less Parādīt failu

@@ -32,6 +32,7 @@ kbd {
32 32
   kbd {
33 33
     padding: 0;
34 34
     font-size: 100%;
35
+    font-weight: bold;
35 36
     box-shadow: none;
36 37
   }
37 38
 }

+ 3
- 1
src/oscar/static/oscar/less/bootstrap3/component-animations.less Parādīt failu

@@ -27,5 +27,7 @@
27 27
   position: relative;
28 28
   height: 0;
29 29
   overflow: hidden;
30
-  .transition(height .35s ease);
30
+  .transition-property(~"height, visibility");
31
+  .transition-duration(.35s);
32
+  .transition-timing-function(ease);
31 33
 }

+ 9
- 8
src/oscar/static/oscar/less/bootstrap3/dropdowns.less Parādīt failu

@@ -10,12 +10,14 @@
10 10
   height: 0;
11 11
   margin-left: 2px;
12 12
   vertical-align: middle;
13
-  border-top:   @caret-width-base solid;
13
+  border-top:   @caret-width-base dashed;
14
+  border-top:   @caret-width-base solid ~"\9"; // IE8
14 15
   border-right: @caret-width-base solid transparent;
15 16
   border-left:  @caret-width-base solid transparent;
16 17
 }
17 18
 
18 19
 // The dropdown wrapper (div)
20
+.dropup,
19 21
 .dropdown {
20 22
   position: relative;
21 23
 }
@@ -103,16 +105,15 @@
103 105
   &:focus {
104 106
     color: @dropdown-link-disabled-color;
105 107
   }
106
-}
107
-// Nuke hover/focus effects
108
-.dropdown-menu > .disabled > a {
108
+
109
+  // Nuke hover/focus effects
109 110
   &:hover,
110 111
   &:focus {
111 112
     text-decoration: none;
112 113
     background-color: transparent;
113 114
     background-image: none; // Remove CSS gradient
114 115
     .reset-filter();
115
-    cursor: not-allowed;
116
+    cursor: @cursor-disabled;
116 117
   }
117 118
 }
118 119
 
@@ -184,14 +185,15 @@
184 185
   // Reverse the caret
185 186
   .caret {
186 187
     border-top: 0;
187
-    border-bottom: @caret-width-base solid;
188
+    border-bottom: @caret-width-base dashed;
189
+    border-bottom: @caret-width-base solid ~"\9"; // IE8
188 190
     content: "";
189 191
   }
190 192
   // Different positioning for bottom up menu
191 193
   .dropdown-menu {
192 194
     top: auto;
193 195
     bottom: 100%;
194
-    margin-bottom: 1px;
196
+    margin-bottom: 2px;
195 197
   }
196 198
 }
197 199
 
@@ -212,4 +214,3 @@
212 214
     }
213 215
   }
214 216
 }
215
-

+ 123
- 50
src/oscar/static/oscar/less/bootstrap3/forms.less Parādīt failu

@@ -56,7 +56,6 @@ input[type="checkbox"] {
56 56
   line-height: normal;
57 57
 }
58 58
 
59
-// Set the height of file controls to match text inputs
60 59
 input[type="file"] {
61 60
   display: block;
62 61
 }
@@ -123,7 +122,7 @@ output {
123 122
   background-color: @input-bg;
124 123
   background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214
125 124
   border: 1px solid @input-border;
126
-  border-radius: @input-border-radius;
125
+  border-radius: @input-border-radius; // Note: This has no effect on <select>s in some browsers, due to the limited stylability of <select>s in CSS.
127 126
   .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
128 127
   .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s");
129 128
 
@@ -133,6 +132,12 @@ output {
133 132
   // Placeholder
134 133
   .placeholder();
135 134
 
135
+  // Unstyle the caret on `<select>`s in IE10+.
136
+  &::-ms-expand {
137
+    border: 0;
138
+    background-color: transparent;
139
+  }
140
+
136 141
   // Disabled and read-only inputs
137 142
   //
138 143
   // HTML5 says that controls under a fieldset > legend:first-child won't be
@@ -141,9 +146,13 @@ output {
141 146
   &[disabled],
142 147
   &[readonly],
143 148
   fieldset[disabled] & {
144
-    cursor: not-allowed;
145 149
     background-color: @input-bg-disabled;
146
-    opacity: 1; // iOS fix for unreadable disabled content
150
+    opacity: 1; // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655
151
+  }
152
+
153
+  &[disabled],
154
+  fieldset[disabled] & {
155
+    cursor: @cursor-disabled;
147 156
   }
148 157
 
149 158
   // Reset height for `textarea`s
@@ -168,24 +177,30 @@ input[type="search"] {
168 177
 // Special styles for iOS temporal inputs
169 178
 //
170 179
 // In Mobile Safari, setting `display: block` on temporal inputs causes the
171
-// text within the input to become vertically misaligned.
172
-// As a workaround, we set a pixel line-height that matches the
173
-// given height of the input. Since this fucks up everything else, we have to
174
-// appropriately reset it for Internet Explorer and the size variations.
175
-
176
-input[type="date"],
177
-input[type="time"],
178
-input[type="datetime-local"],
179
-input[type="month"] {
180
-  line-height: @input-height-base;
181
-  // IE8+ misaligns the text within date inputs, so we reset
182
-  line-height: @line-height-base ~"\0";
180
+// text within the input to become vertically misaligned. As a workaround, we
181
+// set a pixel line-height that matches the given height of the input, but only
182
+// for Safari. See https://bugs.webkit.org/show_bug.cgi?id=139848
183
+//
184
+// Note that as of 9.3, iOS doesn't support `week`.
185
+
186
+@media screen and (-webkit-min-device-pixel-ratio: 0) {
187
+  input[type="date"],
188
+  input[type="time"],
189
+  input[type="datetime-local"],
190
+  input[type="month"] {
191
+    &.form-control {
192
+      line-height: @input-height-base;
193
+    }
183 194
 
184
-  &.input-sm {
185
-    line-height: @input-height-small;
186
-  }
187
-  &.input-lg {
188
-    line-height: @input-height-large;
195
+    &.input-sm,
196
+    .input-group-sm & {
197
+      line-height: @input-height-small;
198
+    }
199
+
200
+    &.input-lg,
201
+    .input-group-lg & {
202
+      line-height: @input-height-large;
203
+    }
189 204
   }
190 205
 }
191 206
 
@@ -196,7 +211,7 @@ input[type="month"] {
196 211
 // horizontal forms, use the predefined grid classes.
197 212
 
198 213
 .form-group {
199
-  margin-bottom: 15px;
214
+  margin-bottom: @form-group-margin-bottom;
200 215
 }
201 216
 
202 217
 
@@ -208,11 +223,11 @@ input[type="month"] {
208 223
 .checkbox {
209 224
   position: relative;
210 225
   display: block;
211
-  min-height: @line-height-computed; // clear the floating input if there is no label text
212 226
   margin-top: 10px;
213 227
   margin-bottom: 10px;
214 228
 
215 229
   label {
230
+    min-height: @line-height-computed; // Ensure the input doesn't jump when there is no text
216 231
     padding-left: 20px;
217 232
     margin-bottom: 0;
218 233
     font-weight: normal;
@@ -236,6 +251,7 @@ input[type="month"] {
236 251
 // Radios and checkboxes on same line
237 252
 .radio-inline,
238 253
 .checkbox-inline {
254
+  position: relative;
239 255
   display: inline-block;
240 256
   padding-left: 20px;
241 257
   margin-bottom: 0;
@@ -258,7 +274,7 @@ input[type="checkbox"] {
258 274
   &[disabled],
259 275
   &.disabled,
260 276
   fieldset[disabled] & {
261
-    cursor: not-allowed;
277
+    cursor: @cursor-disabled;
262 278
   }
263 279
 }
264 280
 // These classes are used directly on <label>s
@@ -266,7 +282,7 @@ input[type="checkbox"] {
266 282
 .checkbox-inline {
267 283
   &.disabled,
268 284
   fieldset[disabled] & {
269
-    cursor: not-allowed;
285
+    cursor: @cursor-disabled;
270 286
   }
271 287
 }
272 288
 // These classes are used on elements with <label> descendants
@@ -275,7 +291,7 @@ input[type="checkbox"] {
275 291
   &.disabled,
276 292
   fieldset[disabled] & {
277 293
     label {
278
-      cursor: not-allowed;
294
+      cursor: @cursor-disabled;
279 295
     }
280 296
   }
281 297
 }
@@ -292,6 +308,7 @@ input[type="checkbox"] {
292 308
   padding-bottom: (@padding-base-vertical + 1);
293 309
   // Remove default margin from `p`
294 310
   margin-bottom: 0;
311
+  min-height: (@line-height-computed + @font-size-base);
295 312
 
296 313
   &.input-lg,
297 314
   &.input-sm {
@@ -305,13 +322,64 @@ input[type="checkbox"] {
305 322
 //
306 323
 // Build on `.form-control` with modifier classes to decrease or increase the
307 324
 // height and font-size of form controls.
325
+//
326
+// The `.form-group-* form-control` variations are sadly duplicated to avoid the
327
+// issue documented in https://github.com/twbs/bootstrap/issues/15074.
308 328
 
309 329
 .input-sm {
310
-  .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
330
+  .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @input-border-radius-small);
331
+}
332
+.form-group-sm {
333
+  .form-control {
334
+    height: @input-height-small;
335
+    padding: @padding-small-vertical @padding-small-horizontal;
336
+    font-size: @font-size-small;
337
+    line-height: @line-height-small;
338
+    border-radius: @input-border-radius-small;
339
+  }
340
+  select.form-control {
341
+    height: @input-height-small;
342
+    line-height: @input-height-small;
343
+  }
344
+  textarea.form-control,
345
+  select[multiple].form-control {
346
+    height: auto;
347
+  }
348
+  .form-control-static {
349
+    height: @input-height-small;
350
+    min-height: (@line-height-computed + @font-size-small);
351
+    padding: (@padding-small-vertical + 1) @padding-small-horizontal;
352
+    font-size: @font-size-small;
353
+    line-height: @line-height-small;
354
+  }
311 355
 }
312 356
 
313 357
 .input-lg {
314
-  .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
358
+  .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @input-border-radius-large);
359
+}
360
+.form-group-lg {
361
+  .form-control {
362
+    height: @input-height-large;
363
+    padding: @padding-large-vertical @padding-large-horizontal;
364
+    font-size: @font-size-large;
365
+    line-height: @line-height-large;
366
+    border-radius: @input-border-radius-large;
367
+  }
368
+  select.form-control {
369
+    height: @input-height-large;
370
+    line-height: @input-height-large;
371
+  }
372
+  textarea.form-control,
373
+  select[multiple].form-control {
374
+    height: auto;
375
+  }
376
+  .form-control-static {
377
+    height: @input-height-large;
378
+    min-height: (@line-height-computed + @font-size-large);
379
+    padding: (@padding-large-vertical + 1) @padding-large-horizontal;
380
+    font-size: @font-size-large;
381
+    line-height: @line-height-large;
382
+  }
315 383
 }
316 384
 
317 385
 
@@ -331,7 +399,7 @@ input[type="checkbox"] {
331 399
 // Feedback icon (requires .glyphicon classes)
332 400
 .form-control-feedback {
333 401
   position: absolute;
334
-  top: (@line-height-computed + 5); // Height of the `label` and its margin
402
+  top: 0;
335 403
   right: 0;
336 404
   z-index: 2; // Ensure icon is above input groups
337 405
   display: block;
@@ -339,13 +407,18 @@ input[type="checkbox"] {
339 407
   height: @input-height-base;
340 408
   line-height: @input-height-base;
341 409
   text-align: center;
410
+  pointer-events: none;
342 411
 }
343
-.input-lg + .form-control-feedback {
412
+.input-lg + .form-control-feedback,
413
+.input-group-lg + .form-control-feedback,
414
+.form-group-lg .form-control + .form-control-feedback {
344 415
   width: @input-height-large;
345 416
   height: @input-height-large;
346 417
   line-height: @input-height-large;
347 418
 }
348
-.input-sm + .form-control-feedback {
419
+.input-sm + .form-control-feedback,
420
+.input-group-sm + .form-control-feedback,
421
+.form-group-sm .form-control + .form-control-feedback {
349 422
   width: @input-height-small;
350 423
   height: @input-height-small;
351 424
   line-height: @input-height-small;
@@ -362,10 +435,15 @@ input[type="checkbox"] {
362 435
   .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg);
363 436
 }
364 437
 
438
+// Reposition feedback icon if input has visible label above
439
+.has-feedback label {
365 440
 
366
-// Reposition feedback icon if label is hidden with "screenreader only" state
367
-.has-feedback label.sr-only ~ .form-control-feedback {
368
-  top: 0;
441
+  & ~ .form-control-feedback {
442
+    top: (@line-height-computed + 5); // Height of the `label` and its margin
443
+  }
444
+  &.sr-only ~ .form-control-feedback {
445
+    top: 0;
446
+  }
369 447
 }
370 448
 
371 449
 
@@ -382,7 +460,6 @@ input[type="checkbox"] {
382 460
 }
383 461
 
384 462
 
385
-
386 463
 // Inline forms
387 464
 //
388 465
 // Make forms appear inline(-block) by adding the `.form-inline` class. Inline
@@ -412,6 +489,11 @@ input[type="checkbox"] {
412 489
       vertical-align: middle;
413 490
     }
414 491
 
492
+    // Make static controls behave like regular ones
493
+    .form-control-static {
494
+      display: inline-block;
495
+    }
496
+
415 497
     .input-group {
416 498
       display: inline-table;
417 499
       vertical-align: middle;
@@ -434,8 +516,7 @@ input[type="checkbox"] {
434 516
     }
435 517
 
436 518
     // Remove default margin on radios/checkboxes that were used for stacking, and
437
-    // then undo the floating of radios and checkboxes to match (which also avoids
438
-    // a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969).
519
+    // then undo the floating of radios and checkboxes to match.
439 520
     .radio,
440 521
     .checkbox {
441 522
       display: inline-block;
@@ -453,10 +534,7 @@ input[type="checkbox"] {
453 534
       margin-left: 0;
454 535
     }
455 536
 
456
-    // Validation states
457
-    //
458
-    // Reposition the icon because it's now within a grid column and columns have
459
-    // `position: relative;` on them. Also accounts for the grid gutter padding.
537
+    // Re-override the feedback icon.
460 538
     .has-feedback .form-control-feedback {
461 539
       top: 0;
462 540
     }
@@ -509,8 +587,7 @@ input[type="checkbox"] {
509 587
   // Reposition the icon because it's now within a grid column and columns have
510 588
   // `position: relative;` on them. Also accounts for the grid gutter padding.
511 589
   .has-feedback .form-control-feedback {
512
-    top: 0;
513
-    right: (@grid-gutter-width / 2);
590
+    right: floor((@grid-gutter-width / 2));
514 591
   }
515 592
 
516 593
   // Form group sizes
@@ -520,21 +597,17 @@ input[type="checkbox"] {
520 597
   .form-group-lg {
521 598
     @media (min-width: @screen-sm-min) {
522 599
       .control-label {
523
-        padding-top: ((@padding-large-vertical * @line-height-large) + 1);
600
+        padding-top: (@padding-large-vertical + 1);
601
+        font-size: @font-size-large;
524 602
       }
525 603
     }
526
-    .form-control {
527
-      &:extend(.input-lg);
528
-    }
529 604
   }
530 605
   .form-group-sm {
531 606
     @media (min-width: @screen-sm-min) {
532 607
       .control-label {
533 608
         padding-top: (@padding-small-vertical + 1);
609
+        font-size: @font-size-small;
534 610
       }
535 611
     }
536
-    .form-control {
537
-      &:extend(.input-sm);
538
-    }
539 612
   }
540 613
 }

+ 75
- 3
src/oscar/static/oscar/less/bootstrap3/glyphicons.less Parādīt failu

@@ -12,6 +12,7 @@
12 12
   font-family: 'Glyphicons Halflings';
13 13
   src: url('@{icon-font-path}@{icon-font-name}.eot');
14 14
   src: url('@{icon-font-path}@{icon-font-name}.eot?#iefix') format('embedded-opentype'),
15
+       url('@{icon-font-path}@{icon-font-name}.woff2') format('woff2'),
15 16
        url('@{icon-font-path}@{icon-font-name}.woff') format('woff'),
16 17
        url('@{icon-font-path}@{icon-font-name}.ttf') format('truetype'),
17 18
        url('@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}') format('svg');
@@ -31,9 +32,10 @@
31 32
 }
32 33
 
33 34
 // Individual icons
34
-.glyphicon-asterisk               { &:before { content: "\2a"; } }
35
-.glyphicon-plus                   { &:before { content: "\2b"; } }
36
-.glyphicon-euro                   { &:before { content: "\20ac"; } }
35
+.glyphicon-asterisk               { &:before { content: "\002a"; } }
36
+.glyphicon-plus                   { &:before { content: "\002b"; } }
37
+.glyphicon-euro,
38
+.glyphicon-eur                    { &:before { content: "\20ac"; } }
37 39
 .glyphicon-minus                  { &:before { content: "\2212"; } }
38 40
 .glyphicon-cloud                  { &:before { content: "\2601"; } }
39 41
 .glyphicon-envelope               { &:before { content: "\2709"; } }
@@ -231,3 +233,73 @@
231 233
 .glyphicon-cloud-upload           { &:before { content: "\e198"; } }
232 234
 .glyphicon-tree-conifer           { &:before { content: "\e199"; } }
233 235
 .glyphicon-tree-deciduous         { &:before { content: "\e200"; } }
236
+.glyphicon-cd                     { &:before { content: "\e201"; } }
237
+.glyphicon-save-file              { &:before { content: "\e202"; } }
238
+.glyphicon-open-file              { &:before { content: "\e203"; } }
239
+.glyphicon-level-up               { &:before { content: "\e204"; } }
240
+.glyphicon-copy                   { &:before { content: "\e205"; } }
241
+.glyphicon-paste                  { &:before { content: "\e206"; } }
242
+// The following 2 Glyphicons are omitted for the time being because
243
+// they currently use Unicode codepoints that are outside the
244
+// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle
245
+// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.
246
+// Notably, the bug affects some older versions of the Android Browser.
247
+// More info: https://github.com/twbs/bootstrap/issues/10106
248
+// .glyphicon-door                   { &:before { content: "\1f6aa"; } }
249
+// .glyphicon-key                    { &:before { content: "\1f511"; } }
250
+.glyphicon-alert                  { &:before { content: "\e209"; } }
251
+.glyphicon-equalizer              { &:before { content: "\e210"; } }
252
+.glyphicon-king                   { &:before { content: "\e211"; } }
253
+.glyphicon-queen                  { &:before { content: "\e212"; } }
254
+.glyphicon-pawn                   { &:before { content: "\e213"; } }
255
+.glyphicon-bishop                 { &:before { content: "\e214"; } }
256
+.glyphicon-knight                 { &:before { content: "\e215"; } }
257
+.glyphicon-baby-formula           { &:before { content: "\e216"; } }
258
+.glyphicon-tent                   { &:before { content: "\26fa"; } }
259
+.glyphicon-blackboard             { &:before { content: "\e218"; } }
260
+.glyphicon-bed                    { &:before { content: "\e219"; } }
261
+.glyphicon-apple                  { &:before { content: "\f8ff"; } }
262
+.glyphicon-erase                  { &:before { content: "\e221"; } }
263
+.glyphicon-hourglass              { &:before { content: "\231b"; } }
264
+.glyphicon-lamp                   { &:before { content: "\e223"; } }
265
+.glyphicon-duplicate              { &:before { content: "\e224"; } }
266
+.glyphicon-piggy-bank             { &:before { content: "\e225"; } }
267
+.glyphicon-scissors               { &:before { content: "\e226"; } }
268
+.glyphicon-bitcoin                { &:before { content: "\e227"; } }
269
+.glyphicon-btc                    { &:before { content: "\e227"; } }
270
+.glyphicon-xbt                    { &:before { content: "\e227"; } }
271
+.glyphicon-yen                    { &:before { content: "\00a5"; } }
272
+.glyphicon-jpy                    { &:before { content: "\00a5"; } }
273
+.glyphicon-ruble                  { &:before { content: "\20bd"; } }
274
+.glyphicon-rub                    { &:before { content: "\20bd"; } }
275
+.glyphicon-scale                  { &:before { content: "\e230"; } }
276
+.glyphicon-ice-lolly              { &:before { content: "\e231"; } }
277
+.glyphicon-ice-lolly-tasted       { &:before { content: "\e232"; } }
278
+.glyphicon-education              { &:before { content: "\e233"; } }
279
+.glyphicon-option-horizontal      { &:before { content: "\e234"; } }
280
+.glyphicon-option-vertical        { &:before { content: "\e235"; } }
281
+.glyphicon-menu-hamburger         { &:before { content: "\e236"; } }
282
+.glyphicon-modal-window           { &:before { content: "\e237"; } }
283
+.glyphicon-oil                    { &:before { content: "\e238"; } }
284
+.glyphicon-grain                  { &:before { content: "\e239"; } }
285
+.glyphicon-sunglasses             { &:before { content: "\e240"; } }
286
+.glyphicon-text-size              { &:before { content: "\e241"; } }
287
+.glyphicon-text-color             { &:before { content: "\e242"; } }
288
+.glyphicon-text-background        { &:before { content: "\e243"; } }
289
+.glyphicon-object-align-top       { &:before { content: "\e244"; } }
290
+.glyphicon-object-align-bottom    { &:before { content: "\e245"; } }
291
+.glyphicon-object-align-horizontal{ &:before { content: "\e246"; } }
292
+.glyphicon-object-align-left      { &:before { content: "\e247"; } }
293
+.glyphicon-object-align-vertical  { &:before { content: "\e248"; } }
294
+.glyphicon-object-align-right     { &:before { content: "\e249"; } }
295
+.glyphicon-triangle-right         { &:before { content: "\e250"; } }
296
+.glyphicon-triangle-left          { &:before { content: "\e251"; } }
297
+.glyphicon-triangle-bottom        { &:before { content: "\e252"; } }
298
+.glyphicon-triangle-top           { &:before { content: "\e253"; } }
299
+.glyphicon-console                { &:before { content: "\e254"; } }
300
+.glyphicon-superscript            { &:before { content: "\e255"; } }
301
+.glyphicon-subscript              { &:before { content: "\e256"; } }
302
+.glyphicon-menu-left              { &:before { content: "\e257"; } }
303
+.glyphicon-menu-right             { &:before { content: "\e258"; } }
304
+.glyphicon-menu-down              { &:before { content: "\e259"; } }
305
+.glyphicon-menu-up                { &:before { content: "\e260"; } }

+ 8
- 3
src/oscar/static/oscar/less/bootstrap3/input-groups.less Parādīt failu

@@ -29,6 +29,10 @@
29 29
 
30 30
     width: 100%;
31 31
     margin-bottom: 0;
32
+
33
+    &:focus {
34
+      z-index: 3;
35
+    }
32 36
   }
33 37
 }
34 38
 
@@ -79,18 +83,18 @@
79 83
   text-align: center;
80 84
   background-color: @input-group-addon-bg;
81 85
   border: 1px solid @input-group-addon-border-color;
82
-  border-radius: @border-radius-base;
86
+  border-radius: @input-border-radius;
83 87
 
84 88
   // Sizing
85 89
   &.input-sm {
86 90
     padding: @padding-small-vertical @padding-small-horizontal;
87 91
     font-size: @font-size-small;
88
-    border-radius: @border-radius-small;
92
+    border-radius: @input-border-radius-small;
89 93
   }
90 94
   &.input-lg {
91 95
     padding: @padding-large-vertical @padding-large-horizontal;
92 96
     font-size: @font-size-large;
93
-    border-radius: @border-radius-large;
97
+    border-radius: @input-border-radius-large;
94 98
   }
95 99
 
96 100
   // Nuke default margins from checkboxes and radios to vertically center within.
@@ -160,6 +164,7 @@
160 164
   &:last-child {
161 165
     > .btn,
162 166
     > .btn-group {
167
+      z-index: 2;
163 168
       margin-left: -1px;
164 169
     }
165 170
   }

+ 10
- 4
src/oscar/static/oscar/less/bootstrap3/jumbotron.less Parādīt failu

@@ -4,7 +4,8 @@
4 4
 
5 5
 
6 6
 .jumbotron {
7
-  padding: @jumbotron-padding;
7
+  padding-top:    @jumbotron-padding;
8
+  padding-bottom: @jumbotron-padding;
8 9
   margin-bottom: @jumbotron-padding;
9 10
   color: @jumbotron-color;
10 11
   background-color: @jumbotron-bg;
@@ -13,6 +14,7 @@
13 14
   .h1 {
14 15
     color: @jumbotron-heading-color;
15 16
   }
17
+
16 18
   p {
17 19
     margin-bottom: (@jumbotron-padding / 2);
18 20
     font-size: @jumbotron-font-size;
@@ -23,8 +25,11 @@
23 25
     border-top-color: darken(@jumbotron-bg, 10%);
24 26
   }
25 27
 
26
-  .container & {
28
+  .container &,
29
+  .container-fluid & {
27 30
     border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container
31
+    padding-left:  (@grid-gutter-width / 2);
32
+    padding-right: (@grid-gutter-width / 2);
28 33
   }
29 34
 
30 35
   .container {
@@ -35,14 +40,15 @@
35 40
     padding-top:    (@jumbotron-padding * 1.6);
36 41
     padding-bottom: (@jumbotron-padding * 1.6);
37 42
 
38
-    .container & {
43
+    .container &,
44
+    .container-fluid & {
39 45
       padding-left:  (@jumbotron-padding * 2);
40 46
       padding-right: (@jumbotron-padding * 2);
41 47
     }
42 48
 
43 49
     h1,
44 50
     .h1 {
45
-      font-size: (@font-size-base * 4.5);
51
+      font-size: @jumbotron-heading-font-size;
46 52
     }
47 53
   }
48 54
 }

+ 10
- 11
src/oscar/static/oscar/less/bootstrap3/list-group.less Parādīt failu

@@ -35,23 +35,16 @@
35 35
     margin-bottom: 0;
36 36
     .border-bottom-radius(@list-group-border-radius);
37 37
   }
38
-
39
-  // Align badges within list items
40
-  > .badge {
41
-    float: right;
42
-  }
43
-  > .badge + .badge {
44
-    margin-right: 5px;
45
-  }
46 38
 }
47 39
 
48 40
 
49
-// Linked list items
41
+// Interactive list items
50 42
 //
51
-// Use anchor elements instead of `li`s or `div`s to create linked list items.
43
+// Use anchor or button elements instead of `li`s or `div`s to create interactive items.
52 44
 // Includes an extra `.active` modifier class for showing selected items.
53 45
 
54
-a.list-group-item {
46
+a.list-group-item,
47
+button.list-group-item {
55 48
   color: @list-group-link-color;
56 49
 
57 50
   .list-group-item-heading {
@@ -67,6 +60,11 @@ a.list-group-item {
67 60
   }
68 61
 }
69 62
 
63
+button.list-group-item {
64
+  width: 100%;
65
+  text-align: left;
66
+}
67
+
70 68
 .list-group-item {
71 69
   // Disabled state
72 70
   &.disabled,
@@ -74,6 +72,7 @@ a.list-group-item {
74 72
   &.disabled:focus {
75 73
     background-color: @list-group-disabled-bg;
76 74
     color: @list-group-disabled-color;
75
+    cursor: @cursor-disabled;
77 76
 
78 77
     // Force color to inherit for custom content
79 78
     .list-group-item-heading {

+ 40
- 30
src/oscar/static/oscar/less/bootstrap3/media.less Parādīt failu

@@ -1,54 +1,64 @@
1
-// Media objects
2
-// Source: http://stubbornella.org/content/?p=497
3
-// --------------------------------------------------
4
-
1
+.media {
2
+  // Proper spacing between instances of .media
3
+  margin-top: 15px;
5 4
 
6
-// Common styles
7
-// -------------------------
5
+  &:first-child {
6
+    margin-top: 0;
7
+  }
8
+}
8 9
 
9
-// Clear the floats
10 10
 .media,
11 11
 .media-body {
12
-  overflow: hidden;
13 12
   zoom: 1;
13
+  overflow: hidden;
14 14
 }
15 15
 
16
-// Proper spacing between instances of .media
17
-.media,
18
-.media .media {
19
-  margin-top: 15px;
20
-}
21
-.media:first-child {
22
-  margin-top: 0;
16
+.media-body {
17
+  width: 10000px;
23 18
 }
24 19
 
25
-// For images and videos, set to block
26 20
 .media-object {
27 21
   display: block;
22
+
23
+  // Fix collapse in webkit from max-width: 100% and display: table-cell.
24
+  &.img-thumbnail {
25
+    max-width: none;
26
+  }
28 27
 }
29 28
 
30
-// Reset margins on headings for tighter default spacing
31
-.media-heading {
32
-  margin: 0 0 5px;
29
+.media-right,
30
+.media > .pull-right {
31
+  padding-left: 10px;
33 32
 }
34 33
 
34
+.media-left,
35
+.media > .pull-left {
36
+  padding-right: 10px;
37
+}
35 38
 
36
-// Media image alignment
37
-// -------------------------
39
+.media-left,
40
+.media-right,
41
+.media-body {
42
+  display: table-cell;
43
+  vertical-align: top;
44
+}
38 45
 
39
-.media {
40
-  > .pull-left {
41
-    margin-right: 10px;
42
-  }
43
-  > .pull-right {
44
-    margin-left: 10px;
45
-  }
46
+.media-middle {
47
+  vertical-align: middle;
46 48
 }
47 49
 
50
+.media-bottom {
51
+  vertical-align: bottom;
52
+}
48 53
 
49
-// Media list variation
50
-// -------------------------
54
+// Reset margins on headings for tighter default spacing
55
+.media-heading {
56
+  margin-top: 0;
57
+  margin-bottom: 5px;
58
+}
51 59
 
60
+// Media list variation
61
+//
52 62
 // Undo default ul/ol styles
53 63
 .media-list {
54 64
   padding-left: 0;

+ 1
- 0
src/oscar/static/oscar/less/bootstrap3/mixins.less Parādīt failu

@@ -11,6 +11,7 @@
11 11
 @import "mixins/responsive-visibility.less";
12 12
 @import "mixins/size.less";
13 13
 @import "mixins/tab-focus.less";
14
+@import "mixins/reset-text.less";
14 15
 @import "mixins/text-emphasis.less";
15 16
 @import "mixins/text-overflow.less";
16 17
 @import "mixins/vendor-prefixes.less";

+ 2
- 1
src/oscar/static/oscar/less/bootstrap3/mixins/background-variant.less Parādīt failu

@@ -2,7 +2,8 @@
2 2
 
3 3
 .bg-variant(@color) {
4 4
   background-color: @color;
5
-  a&:hover {
5
+  a&:hover,
6
+  a&:focus {
6 7
     background-color: darken(@color, 10%);
7 8
   }
8 9
 }

+ 19
- 4
src/oscar/static/oscar/less/bootstrap3/mixins/buttons.less Parādīt failu

@@ -8,14 +8,31 @@
8 8
   background-color: @background;
9 9
   border-color: @border;
10 10
 
11
-  &:hover,
12 11
   &:focus,
12
+  &.focus {
13
+    color: @color;
14
+    background-color: darken(@background, 10%);
15
+        border-color: darken(@border, 25%);
16
+  }
17
+  &:hover {
18
+    color: @color;
19
+    background-color: darken(@background, 10%);
20
+        border-color: darken(@border, 12%);
21
+  }
13 22
   &:active,
14 23
   &.active,
15 24
   .open > .dropdown-toggle& {
16 25
     color: @color;
17 26
     background-color: darken(@background, 10%);
18 27
         border-color: darken(@border, 12%);
28
+
29
+    &:hover,
30
+    &:focus,
31
+    &.focus {
32
+      color: @color;
33
+      background-color: darken(@background, 17%);
34
+          border-color: darken(@border, 25%);
35
+    }
19 36
   }
20 37
   &:active,
21 38
   &.active,
@@ -25,11 +42,9 @@
25 42
   &.disabled,
26 43
   &[disabled],
27 44
   fieldset[disabled] & {
28
-    &,
29 45
     &:hover,
30 46
     &:focus,
31
-    &:active,
32
-    &.active {
47
+    &.focus {
33 48
       background-color: @background;
34 49
           border-color: @border;
35 50
     }

+ 5
- 1
src/oscar/static/oscar/less/bootstrap3/mixins/forms.less Parādīt failu

@@ -10,7 +10,11 @@
10 10
   .radio,
11 11
   .checkbox,
12 12
   .radio-inline,
13
-  .checkbox-inline  {
13
+  .checkbox-inline,
14
+  &.radio label,
15
+  &.checkbox label,
16
+  &.radio-inline label,
17
+  &.checkbox-inline label  {
14 18
     color: @text-color;
15 19
   }
16 20
   // Set the border and box shadow on specific inputs to match

+ 4
- 4
src/oscar/static/oscar/less/bootstrap3/mixins/grid-framework.less Parādīt failu

@@ -5,7 +5,7 @@
5 5
 
6 6
 .make-grid-columns() {
7 7
   // Common styles for all sizes of grid columns, widths 1-12
8
-  .col(@index) when (@index = 1) { // initial
8
+  .col(@index) { // initial
9 9
     @item: ~".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}";
10 10
     .col((@index + 1), @item);
11 11
   }
@@ -19,15 +19,15 @@
19 19
       // Prevent columns from collapsing when empty
20 20
       min-height: 1px;
21 21
       // Inner gutter via padding
22
-      padding-left:  (@grid-gutter-width / 2);
23
-      padding-right: (@grid-gutter-width / 2);
22
+      padding-left:  ceil((@grid-gutter-width / 2));
23
+      padding-right: floor((@grid-gutter-width / 2));
24 24
     }
25 25
   }
26 26
   .col(1); // kickstart it
27 27
 }
28 28
 
29 29
 .float-grid-columns(@class) {
30
-  .col(@index) when (@index = 1) { // initial
30
+  .col(@index) { // initial
31 31
     @item: ~".col-@{class}-@{index}";
32 32
     .col((@index + 1), @item);
33 33
   }

+ 4
- 4
src/oscar/static/oscar/less/bootstrap3/mixins/grid.less Parādīt failu

@@ -6,15 +6,15 @@
6 6
 .container-fixed(@gutter: @grid-gutter-width) {
7 7
   margin-right: auto;
8 8
   margin-left: auto;
9
-  padding-left:  (@gutter / 2);
10
-  padding-right: (@gutter / 2);
9
+  padding-left:  floor((@gutter / 2));
10
+  padding-right: ceil((@gutter / 2));
11 11
   &:extend(.clearfix all);
12 12
 }
13 13
 
14 14
 // Creates a wrapper for a series of columns
15 15
 .make-row(@gutter: @grid-gutter-width) {
16
-  margin-left:  (@gutter / -2);
17
-  margin-right: (@gutter / -2);
16
+  margin-left:  ceil((@gutter / -2));
17
+  margin-right: floor((@gutter / -2));
18 18
   &:extend(.clearfix all);
19 19
 }
20 20
 

+ 2
- 2
src/oscar/static/oscar/less/bootstrap3/mixins/hide-text.less Parādīt failu

@@ -1,12 +1,12 @@
1 1
 // CSS image replacement
2 2
 //
3
-// Heads up! v3 launched with with only `.hide-text()`, but per our pattern for
3
+// Heads up! v3 launched with only `.hide-text()`, but per our pattern for
4 4
 // mixins being reused as classes with the same name, this doesn't hold up. As
5 5
 // of v3.0.1 we have added `.text-hide()` and deprecated `.hide-text()`.
6 6
 //
7 7
 // Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
8 8
 
9
-// Deprecated as of v3.0.1 (will be removed in v4)
9
+// Deprecated as of v3.0.1 (has been removed in v4)
10 10
 .hide-text() {
11 11
   font: ~"0/0" a;
12 12
   color: transparent;

+ 0
- 1
src/oscar/static/oscar/less/bootstrap3/mixins/image.less Parādīt failu

@@ -8,7 +8,6 @@
8 8
 // Keep images from scaling beyond the width of their parents.
9 9
 .img-responsive(@display: block) {
10 10
   display: @display;
11
-  width: 100% \9; // Force IE10 and below to size SVG images correctly
12 11
   max-width: 100%; // Part 1: Set a maximum relative to the parent
13 12
   height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
14 13
 }

+ 1
- 1
src/oscar/static/oscar/less/bootstrap3/mixins/labels.less Parādīt failu

@@ -2,7 +2,7 @@
2 2
 
3 3
 .label-variant(@color) {
4 4
   background-color: @color;
5
-  
5
+
6 6
   &[href] {
7 7
     &:hover,
8 8
     &:focus {

+ 2
- 1
src/oscar/static/oscar/less/bootstrap3/mixins/list-group.less Parādīt failu

@@ -5,7 +5,8 @@
5 5
     color: @color;
6 6
     background-color: @background;
7 7
 
8
-    a& {
8
+    a&,
9
+    button& {
9 10
       color: @color;
10 11
 
11 12
       .list-group-item-heading {

+ 2
- 1
src/oscar/static/oscar/less/bootstrap3/mixins/pagination.less Parādīt failu

@@ -1,11 +1,12 @@
1 1
 // Pagination
2 2
 
3
-.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @border-radius) {
3
+.pagination-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {
4 4
   > li {
5 5
     > a,
6 6
     > span {
7 7
       padding: @padding-vertical @padding-horizontal;
8 8
       font-size: @font-size;
9
+      line-height: @line-height;
9 10
     }
10 11
     &:first-child {
11 12
       > a,

+ 18
- 0
src/oscar/static/oscar/less/bootstrap3/mixins/reset-text.less Parādīt failu

@@ -0,0 +1,18 @@
1
+.reset-text() {
2
+  font-family: @font-family-base;
3
+  // We deliberately do NOT reset font-size.
4
+  font-style: normal;
5
+  font-weight: normal;
6
+  letter-spacing: normal;
7
+  line-break: auto;
8
+  line-height: @line-height-base;
9
+  text-align: left; // Fallback for where `start` is not supported
10
+  text-align: start;
11
+  text-decoration: none;
12
+  text-shadow: none;
13
+  text-transform: none;
14
+  white-space: normal;
15
+  word-break: normal;
16
+  word-spacing: normal;
17
+  word-wrap: normal;
18
+}

+ 1
- 1
src/oscar/static/oscar/less/bootstrap3/mixins/responsive-visibility.less Parādīt failu

@@ -4,7 +4,7 @@
4 4
 // More easily include all the states for responsive-utilities.less.
5 5
 .responsive-visibility() {
6 6
   display: block !important;
7
-  table&  { display: table; }
7
+  table&  { display: table !important; }
8 8
   tr&     { display: table-row !important; }
9 9
   th&,
10 10
   td&     { display: table-cell !important; }

+ 3
- 3
src/oscar/static/oscar/less/bootstrap3/mixins/tab-focus.less Parādīt failu

@@ -1,9 +1,9 @@
1 1
 // WebKit-style focus
2 2
 
3 3
 .tab-focus() {
4
-  // Default
5
-  outline: thin dotted;
6
-  // WebKit
4
+  // WebKit-specific. Other browsers will keep their default outline style.
5
+  // (Initially tried to also force default via `outline: initial`,
6
+  // but that seems to erroneously remove the outline in Firefox altogether.)
7 7
   outline: 5px auto -webkit-focus-ring-color;
8 8
   outline-offset: -2px;
9 9
 }

+ 2
- 1
src/oscar/static/oscar/less/bootstrap3/mixins/text-emphasis.less Parādīt failu

@@ -2,7 +2,8 @@
2 2
 
3 3
 .text-emphasis-variant(@color) {
4 4
   color: @color;
5
-  a&:hover {
5
+  a&:hover,
6
+  a&:focus {
6 7
     color: darken(@color, 10%);
7 8
   }
8 9
 }

+ 8
- 5
src/oscar/static/oscar/less/bootstrap3/mixins/vendor-prefixes.less Parādīt failu

@@ -1,7 +1,7 @@
1 1
 // Vendor Prefixes
2 2
 //
3 3
 // All vendor mixins are deprecated as of v3.2.0 due to the introduction of
4
-// Autoprefixer in our Gruntfile. They will be removed in v4.
4
+// Autoprefixer in our Gruntfile. They have been removed in v4.
5 5
 
6 6
 // - Animations
7 7
 // - Backface visibility
@@ -54,7 +54,7 @@
54 54
 // Prevent browsers from flickering when using CSS 3D transforms.
55 55
 // Default value is `visible`, but can be changed to `hidden`
56 56
 
57
-.backface-visibility(@visibility){
57
+.backface-visibility(@visibility) {
58 58
   -webkit-backface-visibility: @visibility;
59 59
      -moz-backface-visibility: @visibility;
60 60
           backface-visibility: @visibility;
@@ -99,9 +99,12 @@
99 99
 
100 100
 // Placeholder text
101 101
 .placeholder(@color: @input-color-placeholder) {
102
-  &::-moz-placeholder           { color: @color;   // Firefox
103
-                                  opacity: 1; } // See https://github.com/twbs/bootstrap/pull/11526
104
-  &:-ms-input-placeholder       { color: @color; } // Internet Explorer 10+
102
+  // Firefox
103
+  &::-moz-placeholder {
104
+    color: @color;
105
+    opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526
106
+  }
107
+  &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+
105 108
   &::-webkit-input-placeholder  { color: @color; } // Safari and Chrome
106 109
 }
107 110
 

+ 3
- 3
src/oscar/static/oscar/less/bootstrap3/modals.less Parādīt failu

@@ -30,10 +30,10 @@
30 30
 
31 31
   // When fading in the modal, animate it to slide down
32 32
   &.fade .modal-dialog {
33
-    .translate3d(0, -25%, 0);
33
+    .translate(0, -25%);
34 34
     .transition-transform(~"0.3s ease-out");
35 35
   }
36
-  &.in .modal-dialog { .translate3d(0, 0, 0) }
36
+  &.in .modal-dialog { .translate(0, 0) }
37 37
 }
38 38
 .modal-open .modal {
39 39
   overflow-x: hidden;
@@ -79,7 +79,7 @@
79 79
 .modal-header {
80 80
   padding: @modal-title-padding;
81 81
   border-bottom: 1px solid @modal-header-border-color;
82
-  min-height: (@modal-title-padding + @modal-title-line-height);
82
+  &:extend(.clearfix all);
83 83
 }
84 84
 // Close icon
85 85
 .modal-header .close {

+ 30
- 25
src/oscar/static/oscar/less/bootstrap3/navbar.less Parādīt failu

@@ -92,7 +92,7 @@
92 92
   .navbar-collapse {
93 93
     max-height: @navbar-collapse-max-height;
94 94
 
95
-    @media (max-width: @screen-xs-min) and (orientation: landscape) {
95
+    @media (max-device-width: @screen-xs-min) and (orientation: landscape) {
96 96
       max-height: 200px;
97 97
     }
98 98
   }
@@ -141,7 +141,6 @@
141 141
   right: 0;
142 142
   left: 0;
143 143
   z-index: @zindex-navbar-fixed;
144
-  .translate3d(0, 0, 0);
145 144
 
146 145
   // Undo the rounded corners
147 146
   @media (min-width: @grid-float-breakpoint) {
@@ -173,6 +172,10 @@
173 172
     text-decoration: none;
174 173
   }
175 174
 
175
+  > img {
176
+    display: block;
177
+  }
178
+
176 179
   @media (min-width: @grid-float-breakpoint) {
177 180
     .navbar > .container &,
178 181
     .navbar > .container-fluid & {
@@ -271,26 +274,10 @@
271 274
         padding-bottom: @navbar-padding-vertical;
272 275
       }
273 276
     }
274
-
275
-    &.navbar-right:last-child {
276
-      margin-right: -@navbar-padding-horizontal;
277
-    }
278 277
   }
279 278
 }
280 279
 
281 280
 
282
-// Component alignment
283
-//
284
-// Repurpose the pull utilities as their own navbar utilities to avoid specificity
285
-// issues with parents and chaining. Only do this when the navbar is uncollapsed
286
-// though so that navbar contents properly stack and align in mobile.
287
-
288
-@media (min-width: @grid-float-breakpoint) {
289
-  .navbar-left  { .pull-left(); }
290
-  .navbar-right { .pull-right(); }
291
-}
292
-
293
-
294 281
 // Navbar form
295 282
 //
296 283
 // Extension of the `.form-inline` with some extra flavor for optimum display in
@@ -311,6 +298,10 @@
311 298
   .form-group {
312 299
     @media (max-width: @grid-float-breakpoint-max) {
313 300
       margin-bottom: 5px;
301
+
302
+      &:last-child {
303
+        margin-bottom: 0;
304
+      }
314 305
     }
315 306
   }
316 307
 
@@ -326,11 +317,6 @@
326 317
     padding-top: 0;
327 318
     padding-bottom: 0;
328 319
     .box-shadow(none);
329
-
330
-    // Outdent the form if last child to line up with content down the page
331
-    &.navbar-right:last-child {
332
-      margin-right: -@navbar-padding-horizontal;
333
-    }
334 320
   }
335 321
 }
336 322
 
@@ -344,6 +330,8 @@
344 330
 }
345 331
 // Menu position and menu caret support for dropups via extra dropup class
346 332
 .navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
333
+  margin-bottom: 0;
334
+  .border-top-radius(@navbar-border-radius);
347 335
   .border-bottom-radius(0);
348 336
 }
349 337
 
@@ -375,14 +363,31 @@
375 363
     float: left;
376 364
     margin-left: @navbar-padding-horizontal;
377 365
     margin-right: @navbar-padding-horizontal;
366
+  }
367
+}
368
+
378 369
 
379
-    // Outdent the form if last child to line up with content down the page
380
-    &.navbar-right:last-child {
370
+// Component alignment
371
+//
372
+// Repurpose the pull utilities as their own navbar utilities to avoid specificity
373
+// issues with parents and chaining. Only do this when the navbar is uncollapsed
374
+// though so that navbar contents properly stack and align in mobile.
375
+//
376
+// Declared after the navbar components to ensure more specificity on the margins.
377
+
378
+@media (min-width: @grid-float-breakpoint) {
379
+  .navbar-left  { .pull-left(); }
380
+  .navbar-right {
381
+    .pull-right();
382
+    margin-right: -@navbar-padding-horizontal;
383
+
384
+    ~ .navbar-right {
381 385
       margin-right: 0;
382 386
     }
383 387
   }
384 388
 }
385 389
 
390
+
386 391
 // Alternate navbars
387 392
 // --------------------------------------------------
388 393
 

+ 1
- 1
src/oscar/static/oscar/less/bootstrap3/navs.less Parādīt failu

@@ -36,7 +36,7 @@
36 36
         color: @nav-disabled-link-hover-color;
37 37
         text-decoration: none;
38 38
         background-color: transparent;
39
-        cursor: not-allowed;
39
+        cursor: @cursor-disabled;
40 40
       }
41 41
     }
42 42
   }

+ 12
- 13
src/oscar/static/oscar/less/bootstrap3/normalize.less Parādīt failu

@@ -1,9 +1,9 @@
1
-/*! normalize.css v3.0.1 | MIT License | git.io/normalize */
1
+/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
2 2
 
3 3
 //
4 4
 // 1. Set default font family to sans-serif.
5
-// 2. Prevent iOS text size adjust after orientation change, without disabling
6
-//    user zoom.
5
+// 2. Prevent iOS and IE text size adjust after device orientation change,
6
+//    without disabling user zoom.
7 7
 //
8 8
 
9 9
 html {
@@ -25,7 +25,8 @@ body {
25 25
 
26 26
 //
27 27
 // Correct `block` display not defined for any HTML5 element in IE 8/9.
28
-// Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
28
+// Correct `block` display not defined for `details` or `summary` in IE 10/11
29
+// and Firefox.
29 30
 // Correct `block` display not defined for `main` in IE 11.
30 31
 //
31 32
 
@@ -38,6 +39,7 @@ footer,
38 39
 header,
39 40
 hgroup,
40 41
 main,
42
+menu,
41 43
 nav,
42 44
 section,
43 45
 summary {
@@ -69,7 +71,7 @@ audio:not([controls]) {
69 71
 
70 72
 //
71 73
 // Address `[hidden]` styling not present in IE 8/9/10.
72
-// Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
74
+// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
73 75
 //
74 76
 
75 77
 [hidden],
@@ -85,11 +87,12 @@ template {
85 87
 //
86 88
 
87 89
 a {
88
-  background: transparent;
90
+  background-color: transparent;
89 91
 }
90 92
 
91 93
 //
92
-// Improve readability when focused and also mouse hovered in all browsers.
94
+// Improve readability of focused elements when they are also in an
95
+// active/hover state.
93 96
 //
94 97
 
95 98
 a:active,
@@ -207,7 +210,6 @@ figure {
207 210
 //
208 211
 
209 212
 hr {
210
-  -moz-box-sizing: content-box;
211 213
   box-sizing: content-box;
212 214
   height: 0;
213 215
 }
@@ -348,15 +350,12 @@ input[type="number"]::-webkit-outer-spin-button {
348 350
 
349 351
 //
350 352
 // 1. Address `appearance` set to `searchfield` in Safari and Chrome.
351
-// 2. Address `box-sizing` set to `border-box` in Safari and Chrome
352
-//    (include `-moz` to future-proof).
353
+// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
353 354
 //
354 355
 
355 356
 input[type="search"] {
356 357
   -webkit-appearance: textfield; // 1
357
-  -moz-box-sizing: content-box;
358
-  -webkit-box-sizing: content-box; // 2
359
-  box-sizing: content-box;
358
+  box-sizing: content-box; //2
360 359
 }
361 360
 
362 361
 //

+ 1
- 2
src/oscar/static/oscar/less/bootstrap3/pager.less Parādīt failu

@@ -48,8 +48,7 @@
48 48
     > span {
49 49
       color: @pager-disabled-color;
50 50
       background-color: @pager-bg;
51
-      cursor: not-allowed;
51
+      cursor: @cursor-disabled;
52 52
     }
53 53
   }
54
-
55 54
 }

+ 5
- 4
src/oscar/static/oscar/less/bootstrap3/pagination.less Parādīt failu

@@ -40,6 +40,7 @@
40 40
   > li > span {
41 41
     &:hover,
42 42
     &:focus {
43
+      z-index: 2;
43 44
       color: @pagination-hover-color;
44 45
       background-color: @pagination-hover-bg;
45 46
       border-color: @pagination-hover-border;
@@ -51,7 +52,7 @@
51 52
     &,
52 53
     &:hover,
53 54
     &:focus {
54
-      z-index: 2;
55
+      z-index: 3;
55 56
       color: @pagination-active-color;
56 57
       background-color: @pagination-active-bg;
57 58
       border-color: @pagination-active-border;
@@ -69,7 +70,7 @@
69 70
       color: @pagination-disabled-color;
70 71
       background-color: @pagination-disabled-bg;
71 72
       border-color: @pagination-disabled-border;
72
-      cursor: not-allowed;
73
+      cursor: @cursor-disabled;
73 74
     }
74 75
   }
75 76
 }
@@ -79,10 +80,10 @@
79 80
 
80 81
 // Large
81 82
 .pagination-lg {
82
-  .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @border-radius-large);
83
+  .pagination-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);
83 84
 }
84 85
 
85 86
 // Small
86 87
 .pagination-sm {
87
-  .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @border-radius-small);
88
+  .pagination-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);
88 89
 }

+ 33
- 5
src/oscar/static/oscar/less/bootstrap3/panels.less Parādīt failu

@@ -36,7 +36,11 @@
36 36
   font-size: ceil((@font-size-base * 1.125));
37 37
   color: inherit;
38 38
 
39
-  > a {
39
+  > a,
40
+  > small,
41
+  > .small,
42
+  > small > a,
43
+  > .small > a {
40 44
     color: inherit;
41 45
   }
42 46
 }
@@ -56,7 +60,8 @@
56 60
 // any kind of custom content between the two.
57 61
 
58 62
 .panel {
59
-  > .list-group {
63
+  > .list-group,
64
+  > .panel-collapse > .list-group {
60 65
     margin-bottom: 0;
61 66
 
62 67
     .list-group-item {
@@ -71,6 +76,7 @@
71 76
         .border-top-radius((@panel-border-radius - 1));
72 77
       }
73 78
     }
79
+
74 80
     // Add border bottom radius for last one
75 81
     &:last-child {
76 82
       .list-group-item:last-child {
@@ -79,6 +85,11 @@
79 85
       }
80 86
     }
81 87
   }
88
+  > .panel-heading + .panel-collapse > .list-group {
89
+    .list-group-item:first-child {
90
+      .border-top-radius(0);
91
+    }
92
+  }
82 93
 }
83 94
 // Collapse space between when there's no additional content.
84 95
 .panel-heading + .list-group {
@@ -100,6 +111,11 @@
100 111
   > .table-responsive > .table,
101 112
   > .panel-collapse > .table {
102 113
     margin-bottom: 0;
114
+
115
+    caption {
116
+      padding-left: @panel-body-padding;
117
+      padding-right: @panel-body-padding;
118
+    }
103 119
   }
104 120
   // Add border top radius for first one
105 121
   > .table:first-child,
@@ -109,6 +125,9 @@
109 125
     > thead:first-child,
110 126
     > tbody:first-child {
111 127
       > tr:first-child {
128
+        border-top-left-radius: (@panel-border-radius - 1);
129
+        border-top-right-radius: (@panel-border-radius - 1);
130
+
112 131
         td:first-child,
113 132
         th:first-child {
114 133
           border-top-left-radius: (@panel-border-radius - 1);
@@ -128,6 +147,9 @@
128 147
     > tbody:last-child,
129 148
     > tfoot:last-child {
130 149
       > tr:last-child {
150
+        border-bottom-left-radius: (@panel-border-radius - 1);
151
+        border-bottom-right-radius: (@panel-border-radius - 1);
152
+
131 153
         td:first-child,
132 154
         th:first-child {
133 155
           border-bottom-left-radius: (@panel-border-radius - 1);
@@ -140,7 +162,9 @@
140 162
     }
141 163
   }
142 164
   > .panel-body + .table,
143
-  > .panel-body + .table-responsive {
165
+  > .panel-body + .table-responsive,
166
+  > .table + .panel-body,
167
+  > .table-responsive + .panel-body {
144 168
     border-top: 1px solid @table-border-color;
145 169
   }
146 170
   > .table > tbody:first-child > tr:first-child th,
@@ -190,7 +214,7 @@
190 214
 }
191 215
 
192 216
 
193
-// Collapsable panels (aka, accordion)
217
+// Collapsible panels (aka, accordion)
194 218
 //
195 219
 // Wrap a series of panels in `.panel-group` to turn them into an accordion with
196 220
 // the help of our collapse JavaScript plugin.
@@ -202,6 +226,7 @@
202 226
   .panel {
203 227
     margin-bottom: 0;
204 228
     border-radius: @panel-border-radius;
229
+
205 230
     + .panel {
206 231
       margin-top: 5px;
207 232
     }
@@ -209,10 +234,13 @@
209 234
 
210 235
   .panel-heading {
211 236
     border-bottom: 0;
212
-    + .panel-collapse > .panel-body {
237
+
238
+    + .panel-collapse > .panel-body,
239
+    + .panel-collapse > .list-group {
213 240
       border-top: 1px solid @panel-inner-border;
214 241
     }
215 242
   }
243
+
216 244
   .panel-footer {
217 245
     border-top: 0;
218 246
     + .panel-collapse .panel-body {

+ 5
- 7
src/oscar/static/oscar/less/bootstrap3/popovers.less Parādīt failu

@@ -11,7 +11,11 @@
11 11
   display: none;
12 12
   max-width: @popover-max-width;
13 13
   padding: 1px;
14
-  text-align: left; // Reset given new insertion method
14
+  // Our parent element can be arbitrary since popovers are by default inserted as a sibling of their target element.
15
+  // So reset our font and text properties to avoid inheriting weird values.
16
+  .reset-text();
17
+  font-size: @font-size-base;
18
+
15 19
   background-color: @popover-bg;
16 20
   background-clip: padding-box;
17 21
   border: 1px solid @popover-fallback-border-color;
@@ -19,9 +23,6 @@
19 23
   border-radius: @border-radius-large;
20 24
   .box-shadow(0 5px 10px rgba(0,0,0,.2));
21 25
 
22
-  // Overrides for proper insertion
23
-  white-space: normal;
24
-
25 26
   // Offset the popover to account for the popover arrow
26 27
   &.top     { margin-top: -@popover-arrow-width; }
27 28
   &.right   { margin-left: @popover-arrow-width; }
@@ -33,8 +34,6 @@
33 34
   margin: 0; // reset heading margin
34 35
   padding: 8px 14px;
35 36
   font-size: @font-size-base;
36
-  font-weight: normal;
37
-  line-height: 18px;
38 37
   background-color: @popover-title-bg;
39 38
   border-bottom: 1px solid darken(@popover-title-bg, 5%);
40 39
   border-radius: (@border-radius-large - 1) (@border-radius-large - 1) 0 0;
@@ -129,5 +128,4 @@
129 128
       bottom: -@popover-arrow-width;
130 129
     }
131 130
   }
132
-
133 131
 }

+ 96
- 96
src/oscar/static/oscar/less/bootstrap3/print.less Parādīt failu

@@ -1,101 +1,101 @@
1
-//
2
-// Basic print styles
3
-// --------------------------------------------------
4
-// Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css
1
+/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
2
+
3
+// ==========================================================================
4
+// Print styles.
5
+// Inlined to avoid the additional HTTP request: h5bp.com/r
6
+// ==========================================================================
5 7
 
6 8
 @media print {
9
+    *,
10
+    *:before,
11
+    *:after {
12
+        background: transparent !important;
13
+        color: #000 !important; // Black prints faster: h5bp.com/s
14
+        box-shadow: none !important;
15
+        text-shadow: none !important;
16
+    }
17
+
18
+    a,
19
+    a:visited {
20
+        text-decoration: underline;
21
+    }
22
+
23
+    a[href]:after {
24
+        content: " (" attr(href) ")";
25
+    }
26
+
27
+    abbr[title]:after {
28
+        content: " (" attr(title) ")";
29
+    }
30
+
31
+    // Don't show links that are fragment identifiers,
32
+    // or use the `javascript:` pseudo protocol
33
+    a[href^="#"]:after,
34
+    a[href^="javascript:"]:after {
35
+        content: "";
36
+    }
37
+
38
+    pre,
39
+    blockquote {
40
+        border: 1px solid #999;
41
+        page-break-inside: avoid;
42
+    }
43
+
44
+    thead {
45
+        display: table-header-group; // h5bp.com/t
46
+    }
47
+
48
+    tr,
49
+    img {
50
+        page-break-inside: avoid;
51
+    }
52
+
53
+    img {
54
+        max-width: 100% !important;
55
+    }
56
+
57
+    p,
58
+    h2,
59
+    h3 {
60
+        orphans: 3;
61
+        widows: 3;
62
+    }
63
+
64
+    h2,
65
+    h3 {
66
+        page-break-after: avoid;
67
+    }
68
+
69
+    // Bootstrap specific changes start
7 70
 
8
-  * {
9
-    text-shadow: none !important;
10
-    color: #000 !important; // Black prints faster: h5bp.com/s
11
-    background: transparent !important;
12
-    box-shadow: none !important;
13
-  }
14
-
15
-  a,
16
-  a:visited {
17
-    text-decoration: underline;
18
-  }
19
-
20
-  a[href]:after {
21
-    content: " (" attr(href) ")";
22
-  }
23
-
24
-  abbr[title]:after {
25
-    content: " (" attr(title) ")";
26
-  }
27
-
28
-  // Don't show links for images, or javascript/internal links
29
-  a[href^="javascript:"]:after,
30
-  a[href^="#"]:after {
31
-    content: "";
32
-  }
33
-
34
-  pre,
35
-  blockquote {
36
-    border: 1px solid #999;
37
-    page-break-inside: avoid;
38
-  }
39
-
40
-  thead {
41
-    display: table-header-group; // h5bp.com/t
42
-  }
43
-
44
-  tr,
45
-  img {
46
-    page-break-inside: avoid;
47
-  }
48
-
49
-  img {
50
-    max-width: 100% !important;
51
-  }
52
-
53
-  p,
54
-  h2,
55
-  h3 {
56
-    orphans: 3;
57
-    widows: 3;
58
-  }
59
-
60
-  h2,
61
-  h3 {
62
-    page-break-after: avoid;
63
-  }
64
-
65
-  // Chrome (OSX) fix for https://github.com/twbs/bootstrap/issues/11245
66
-  // Once fixed, we can just straight up remove this.
67
-  select {
68
-    background: #fff !important;
69
-  }
70
-
71
-  // Bootstrap components
72
-  .navbar {
73
-    display: none;
74
-  }
75
-  .table {
76
-    td,
77
-    th {
78
-      background-color: #fff !important;
79
-    }
80
-  }
81
-  .btn,
82
-  .dropup > .btn {
83
-    > .caret {
84
-      border-top-color: #000 !important;
85
-    }
86
-  }
87
-  .label {
88
-    border: 1px solid #000;
89
-  }
90
-
91
-  .table {
92
-    border-collapse: collapse !important;
93
-  }
94
-  .table-bordered {
95
-    th,
96
-    td {
97
-      border: 1px solid #ddd !important;
98
-    }
99
-  }
71
+    // Bootstrap components
72
+    .navbar {
73
+        display: none;
74
+    }
75
+    .btn,
76
+    .dropup > .btn {
77
+        > .caret {
78
+            border-top-color: #000 !important;
79
+        }
80
+    }
81
+    .label {
82
+        border: 1px solid #000;
83
+    }
84
+
85
+    .table {
86
+        border-collapse: collapse !important;
87
+
88
+        td,
89
+        th {
90
+            background-color: #fff !important;
91
+        }
92
+    }
93
+    .table-bordered {
94
+        th,
95
+        td {
96
+            border: 1px solid #ddd !important;
97
+        }
98
+    }
100 99
 
100
+    // Bootstrap specific changes end
101 101
 }

+ 1
- 19
src/oscar/static/oscar/less/bootstrap3/progress-bars.less Parādīt failu

@@ -19,7 +19,6 @@
19 19
 }
20 20
 
21 21
 
22
-
23 22
 // Bar itself
24 23
 // -------------------------
25 24
 
@@ -29,7 +28,7 @@
29 28
   height: @line-height-computed;
30 29
   margin-bottom: @line-height-computed;
31 30
   background-color: @progress-bg;
32
-  border-radius: @border-radius-base;
31
+  border-radius: @progress-border-radius;
33 32
   .box-shadow(inset 0 1px 2px rgba(0,0,0,.1));
34 33
 }
35 34
 
@@ -67,23 +66,6 @@
67 66
   .animation(progress-bar-stripes 2s linear infinite);
68 67
 }
69 68
 
70
-// Account for lower percentages
71
-.progress-bar {
72
-  &[aria-valuenow="1"],
73
-  &[aria-valuenow="2"] {
74
-    min-width: 30px;
75
-  }
76
-
77
-  &[aria-valuenow="0"] {
78
-    color: @gray-light;
79
-    min-width: 30px;
80
-    background-color: transparent;
81
-    background-image: none;
82
-    box-shadow: none;
83
-  }
84
-}
85
-
86
-
87 69
 
88 70
 // Variations
89 71
 // -------------------------

+ 10
- 9
src/oscar/static/oscar/less/bootstrap3/responsive-embed.less Parādīt failu

@@ -12,7 +12,8 @@
12 12
   .embed-responsive-item,
13 13
   iframe,
14 14
   embed,
15
-  object {
15
+  object,
16
+  video {
16 17
     position: absolute;
17 18
     top: 0;
18 19
     left: 0;
@@ -21,14 +22,14 @@
21 22
     width: 100%;
22 23
     border: 0;
23 24
   }
25
+}
24 26
 
25
-  // Modifier class for 16:9 aspect ratio
26
-  &.embed-responsive-16by9 {
27
-    padding-bottom: 56.25%;
28
-  }
27
+// Modifier class for 16:9 aspect ratio
28
+.embed-responsive-16by9 {
29
+  padding-bottom: 56.25%;
30
+}
29 31
 
30
-  // Modifier class for 4:3 aspect ratio
31
-  &.embed-responsive-4by3 {
32
-    padding-bottom: 75%;
33
-  }
32
+// Modifier class for 4:3 aspect ratio
33
+.embed-responsive-4by3 {
34
+  padding-bottom: 75%;
34 35
 }

+ 13
- 2
src/oscar/static/oscar/less/bootstrap3/scaffolding.less Parādīt failu

@@ -52,7 +52,7 @@ a {
52 52
   &:hover,
53 53
   &:focus {
54 54
     color: @link-hover-color;
55
-    text-decoration: underline;
55
+    text-decoration: @link-hover-decoration;
56 56
   }
57 57
 
58 58
   &:focus {
@@ -120,7 +120,7 @@ hr {
120 120
 
121 121
 // Only display content to screen readers
122 122
 //
123
-// See: http://a11yproject.com/posts/how-to-hide-content/
123
+// See: http://a11yproject.com/posts/how-to-hide-content
124 124
 
125 125
 .sr-only {
126 126
   position: absolute;
@@ -148,3 +148,14 @@ hr {
148 148
     clip: auto;
149 149
   }
150 150
 }
151
+
152
+
153
+// iOS "clickable elements" fix for role="button"
154
+//
155
+// Fixes "clickability" issue (and more generally, the firing of events such as focus as well)
156
+// for traditionally non-focusable elements with role="button"
157
+// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile
158
+
159
+[role="button"] {
160
+  cursor: pointer;
161
+}

+ 14
- 13
src/oscar/static/oscar/less/bootstrap3/tables.less Parādīt failu

@@ -6,6 +6,12 @@
6 6
 table {
7 7
   background-color: @table-bg;
8 8
 }
9
+caption {
10
+  padding-top: @table-cell-padding;
11
+  padding-bottom: @table-cell-padding;
12
+  color: @text-muted;
13
+  text-align: left;
14
+}
9 15
 th {
10 16
   text-align: left;
11 17
 }
@@ -105,11 +111,8 @@ th {
105 111
 // Default zebra-stripe styles (alternating gray and transparent backgrounds)
106 112
 
107 113
 .table-striped {
108
-  > tbody > tr:nth-child(odd) {
109
-    > td,
110
-    > th {
111
-      background-color: @table-bg-accent;
112
-    }
114
+  > tbody > tr:nth-of-type(odd) {
115
+    background-color: @table-bg-accent;
113 116
   }
114 117
 }
115 118
 
@@ -120,10 +123,7 @@ th {
120 123
 
121 124
 .table-hover {
122 125
   > tbody > tr:hover {
123
-    > td,
124
-    > th {
125
-      background-color: @table-bg-hover;
126
-    }
126
+    background-color: @table-bg-hover;
127 127
   }
128 128
 }
129 129
 
@@ -133,7 +133,7 @@ th {
133 133
 // Reset default table behavior
134 134
 
135 135
 table col[class*="col-"] {
136
-  position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623)
136
+  position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)
137 137
   float: none;
138 138
   display: table-column;
139 139
 }
@@ -141,7 +141,7 @@ table {
141 141
   td,
142 142
   th {
143 143
     &[class*="col-"] {
144
-      position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623)
144
+      position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)
145 145
       float: none;
146 146
       display: table-cell;
147 147
     }
@@ -169,14 +169,15 @@ table {
169 169
 // will display normally.
170 170
 
171 171
 .table-responsive {
172
+  overflow-x: auto;
173
+  min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)
174
+
172 175
   @media screen and (max-width: @screen-xs-max) {
173 176
     width: 100%;
174 177
     margin-bottom: (@line-height-computed * 0.75);
175 178
     overflow-y: hidden;
176
-    overflow-x: auto;
177 179
     -ms-overflow-style: -ms-autohiding-scrollbar;
178 180
     border: 1px solid @table-border-color;
179
-    -webkit-overflow-scrolling: touch;
180 181
 
181 182
     // Tighten up spacing
182 183
     > .table {

+ 49
- 16
src/oscar/static/oscar/less/bootstrap3/theme.less Parādīt failu

@@ -1,3 +1,8 @@
1
+/*!
2
+ * Bootstrap v3.3.7 (http://getbootstrap.com)
3
+ * Copyright 2011-2016 Twitter, Inc.
4
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
5
+ */
1 6
 
2 7
 //
3 8
 // Load core variables and mixins
@@ -7,7 +12,6 @@
7 12
 @import "mixins.less";
8 13
 
9 14
 
10
-
11 15
 //
12 16
 // Buttons
13 17
 // --------------------------------------------------
@@ -28,12 +32,22 @@
28 32
   &.active {
29 33
     .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));
30 34
   }
35
+
36
+  &.disabled,
37
+  &[disabled],
38
+  fieldset[disabled] & {
39
+    .box-shadow(none);
40
+  }
41
+
42
+  .badge {
43
+    text-shadow: none;
44
+  }
31 45
 }
32 46
 
33 47
 // Mixin for generating new styles
34 48
 .btn-styles(@btn-color: #555) {
35 49
   #gradient > .vertical(@start-color: @btn-color; @end-color: darken(@btn-color, 12%));
36
-  .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners
50
+  .reset-filter(); // Disable gradients for IE9 because filter bleeds through rounded corners; see https://github.com/twbs/bootstrap/issues/10620
37 51
   background-repeat: repeat-x;
38 52
   border-color: darken(@btn-color, 14%);
39 53
 
@@ -49,10 +63,18 @@
49 63
     border-color: darken(@btn-color, 14%);
50 64
   }
51 65
 
52
-  &:disabled,
53
-  &[disabled] {
54
-    background-color: darken(@btn-color, 12%);
55
-    background-image: none;
66
+  &.disabled,
67
+  &[disabled],
68
+  fieldset[disabled] & {
69
+    &,
70
+    &:hover,
71
+    &:focus,
72
+    &.focus,
73
+    &:active,
74
+    &.active {
75
+      background-color: darken(@btn-color, 12%);
76
+      background-image: none;
77
+    }
56 78
   }
57 79
 }
58 80
 
@@ -74,7 +96,6 @@
74 96
 .btn-danger  { .btn-styles(@btn-danger-bg); }
75 97
 
76 98
 
77
-
78 99
 //
79 100
 // Images
80 101
 // --------------------------------------------------
@@ -85,7 +106,6 @@
85 106
 }
86 107
 
87 108
 
88
-
89 109
 //
90 110
 // Dropdowns
91 111
 // --------------------------------------------------
@@ -103,7 +123,6 @@
103 123
 }
104 124
 
105 125
 
106
-
107 126
 //
108 127
 // Navbar
109 128
 // --------------------------------------------------
@@ -116,8 +135,9 @@
116 135
   @shadow: inset 0 1px 0 rgba(255,255,255,.15), 0 1px 5px rgba(0,0,0,.075);
117 136
   .box-shadow(@shadow);
118 137
 
138
+  .navbar-nav > .open > a,
119 139
   .navbar-nav > .active > a {
120
-    #gradient > .vertical(@start-color: darken(@navbar-default-bg, 5%); @end-color: darken(@navbar-default-bg, 2%));
140
+    #gradient > .vertical(@start-color: darken(@navbar-default-link-active-bg, 5%); @end-color: darken(@navbar-default-link-active-bg, 2%));
121 141
     .box-shadow(inset 0 3px 9px rgba(0,0,0,.075));
122 142
   }
123 143
 }
@@ -129,10 +149,11 @@
129 149
 // Inverted navbar
130 150
 .navbar-inverse {
131 151
   #gradient > .vertical(@start-color: lighten(@navbar-inverse-bg, 10%); @end-color: @navbar-inverse-bg);
132
-  .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered
133
-
152
+  .reset-filter(); // Remove gradient in IE<10 to fix bug where dropdowns don't get triggered; see https://github.com/twbs/bootstrap/issues/10257
153
+  border-radius: @navbar-border-radius;
154
+  .navbar-nav > .open > a,
134 155
   .navbar-nav > .active > a {
135
-    #gradient > .vertical(@start-color: @navbar-inverse-bg; @end-color: lighten(@navbar-inverse-bg, 2.5%));
156
+    #gradient > .vertical(@start-color: @navbar-inverse-link-active-bg; @end-color: lighten(@navbar-inverse-link-active-bg, 2.5%));
136 157
     .box-shadow(inset 0 3px 9px rgba(0,0,0,.25));
137 158
   }
138 159
 
@@ -149,6 +170,17 @@
149 170
   border-radius: 0;
150 171
 }
151 172
 
173
+// Fix active state of dropdown items in collapsed mode
174
+@media (max-width: @grid-float-breakpoint-max) {
175
+  .navbar .navbar-nav .open .dropdown-menu > .active > a {
176
+    &,
177
+    &:hover,
178
+    &:focus {
179
+      color: #fff;
180
+      #gradient > .vertical(@start-color: @dropdown-link-active-bg; @end-color: darken(@dropdown-link-active-bg, 5%));
181
+    }
182
+  }
183
+}
152 184
 
153 185
 
154 186
 //
@@ -175,7 +207,6 @@
175 207
 .alert-danger     { .alert-styles(@alert-danger-bg); }
176 208
 
177 209
 
178
-
179 210
 //
180 211
 // Progress bars
181 212
 // --------------------------------------------------
@@ -218,8 +249,11 @@
218 249
   text-shadow: 0 -1px 0 darken(@list-group-active-bg, 10%);
219 250
   #gradient > .vertical(@start-color: @list-group-active-bg; @end-color: darken(@list-group-active-bg, 7.5%));
220 251
   border-color: darken(@list-group-active-border, 7.5%);
221
-}
222 252
 
253
+  .badge {
254
+    text-shadow: none;
255
+  }
256
+}
223 257
 
224 258
 
225 259
 //
@@ -245,7 +279,6 @@
245 279
 .panel-danger > .panel-heading    { .panel-heading-styles(@panel-danger-heading-bg); }
246 280
 
247 281
 
248
-
249 282
 //
250 283
 // Wells
251 284
 // --------------------------------------------------

+ 1
- 1
src/oscar/static/oscar/less/bootstrap3/thumbnails.less Parādīt failu

@@ -12,7 +12,7 @@
12 12
   background-color: @thumbnail-bg;
13 13
   border: 1px solid @thumbnail-border;
14 14
   border-radius: @thumbnail-border-radius;
15
-  .transition(all .2s ease-in-out);
15
+  .transition(border .2s ease-in-out);
16 16
 
17 17
   > img,
18 18
   a > img {

+ 13
- 7
src/oscar/static/oscar/less/bootstrap3/tooltip.less Parādīt failu

@@ -8,9 +8,11 @@
8 8
   position: absolute;
9 9
   z-index: @zindex-tooltip;
10 10
   display: block;
11
-  visibility: visible;
11
+  // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
12
+  // So reset our font and text properties to avoid inheriting weird values.
13
+  .reset-text();
12 14
   font-size: @font-size-small;
13
-  line-height: 1.4;
15
+
14 16
   .opacity(0);
15 17
 
16 18
   &.in     { .opacity(@tooltip-opacity); }
@@ -26,7 +28,6 @@
26 28
   padding: 3px 8px;
27 29
   color: @tooltip-color;
28 30
   text-align: center;
29
-  text-decoration: none;
30 31
   background-color: @tooltip-bg;
31 32
   border-radius: @border-radius-base;
32 33
 }
@@ -39,6 +40,7 @@
39 40
   border-color: transparent;
40 41
   border-style: solid;
41 42
 }
43
+// Note: Deprecated .top-left, .top-right, .bottom-left, and .bottom-right as of v3.3.1
42 44
 .tooltip {
43 45
   &.top .tooltip-arrow {
44 46
     bottom: 0;
@@ -49,13 +51,15 @@
49 51
   }
50 52
   &.top-left .tooltip-arrow {
51 53
     bottom: 0;
52
-    left: @tooltip-arrow-width;
54
+    right: @tooltip-arrow-width;
55
+    margin-bottom: -@tooltip-arrow-width;
53 56
     border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
54 57
     border-top-color: @tooltip-arrow-color;
55 58
   }
56 59
   &.top-right .tooltip-arrow {
57 60
     bottom: 0;
58
-    right: @tooltip-arrow-width;
61
+    left: @tooltip-arrow-width;
62
+    margin-bottom: -@tooltip-arrow-width;
59 63
     border-width: @tooltip-arrow-width @tooltip-arrow-width 0;
60 64
     border-top-color: @tooltip-arrow-color;
61 65
   }
@@ -82,13 +86,15 @@
82 86
   }
83 87
   &.bottom-left .tooltip-arrow {
84 88
     top: 0;
85
-    left: @tooltip-arrow-width;
89
+    right: @tooltip-arrow-width;
90
+    margin-top: -@tooltip-arrow-width;
86 91
     border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
87 92
     border-bottom-color: @tooltip-arrow-color;
88 93
   }
89 94
   &.bottom-right .tooltip-arrow {
90 95
     top: 0;
91
-    right: @tooltip-arrow-width;
96
+    left: @tooltip-arrow-width;
97
+    margin-top: -@tooltip-arrow-width;
92 98
     border-width: 0 @tooltip-arrow-width @tooltip-arrow-width;
93 99
     border-bottom-color: @tooltip-arrow-color;
94 100
   }

+ 2
- 13
src/oscar/static/oscar/less/bootstrap3/type.less Parādīt failu

@@ -80,11 +80,6 @@ small,
80 80
   font-size: floor((100% * @font-size-small / @font-size-base));
81 81
 }
82 82
 
83
-// Undo browser default styling
84
-cite {
85
-  font-style: normal;
86
-}
87
-
88 83
 mark,
89 84
 .mark {
90 85
   background-color: @state-warning-bg;
@@ -216,7 +211,7 @@ dd {
216 211
     &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present
217 212
   }
218 213
 
219
-  @media (min-width: @grid-float-breakpoint) {
214
+  @media (min-width: @dl-horizontal-breakpoint) {
220 215
     dt {
221 216
       float: left;
222 217
       width: (@dl-horizontal-offset - 20);
@@ -243,7 +238,7 @@ abbr[data-original-title] {
243 238
 }
244 239
 .initialism {
245 240
   font-size: 90%;
246
-  text-transform: uppercase;
241
+  .text-uppercase();
247 242
 }
248 243
 
249 244
 // Blockquotes
@@ -299,12 +294,6 @@ blockquote.pull-right {
299 294
   }
300 295
 }
301 296
 
302
-// Quotes
303
-blockquote:before,
304
-blockquote:after {
305
-  content: "";
306
-}
307
-
308 297
 // Addresses
309 298
 address {
310 299
   margin-bottom: @line-height-computed;

+ 0
- 2
src/oscar/static/oscar/less/bootstrap3/utilities.less Parādīt failu

@@ -44,7 +44,6 @@
44 44
 
45 45
 .hidden {
46 46
   display: none !important;
47
-  visibility: hidden !important;
48 47
 }
49 48
 
50 49
 
@@ -53,5 +52,4 @@
53 52
 
54 53
 .affix {
55 54
   position: fixed;
56
-  .translate3d(0, 0, 0);
57 55
 }

+ 45
- 22
src/oscar/static/oscar/less/bootstrap3/variables.less Parādīt failu

@@ -7,13 +7,14 @@
7 7
 //
8 8
 //## Gray and brand colors for use across Bootstrap.
9 9
 
10
-@gray-darker:            lighten(#000, 13.5%); // #222
11
-@gray-dark:              lighten(#000, 20%);   // #333
12
-@gray:                   lighten(#000, 33.5%); // #555
13
-@gray-light:             lighten(#000, 46.7%); // #777
14
-@gray-lighter:           lighten(#000, 93.5%); // #eee
15
-
16
-@brand-primary:         #428bca;
10
+@gray-base:              #000;
11
+@gray-darker:            lighten(@gray-base, 13.5%); // #222
12
+@gray-dark:              lighten(@gray-base, 20%);   // #333
13
+@gray:                   lighten(@gray-base, 33.5%); // #555
14
+@gray-light:             lighten(@gray-base, 46.7%); // #777
15
+@gray-lighter:           lighten(@gray-base, 93.5%); // #eee
16
+
17
+@brand-primary:         darken(#428bca, 6.5%); // #337ab7
17 18
 @brand-success:         #5cb85c;
18 19
 @brand-info:            #5bc0de;
19 20
 @brand-warning:         #f0ad4e;
@@ -33,6 +34,8 @@
33 34
 @link-color:            @brand-primary;
34 35
 //** Link hover color set via `darken()` function.
35 36
 @link-hover-color:      darken(@link-color, 15%);
37
+//** Link hover decoration.
38
+@link-hover-decoration: underline;
36 39
 
37 40
 
38 41
 //== Typography
@@ -96,7 +99,7 @@
96 99
 @padding-xs-vertical:       1px;
97 100
 @padding-xs-horizontal:     5px;
98 101
 
99
-@line-height-large:         1.33;
102
+@line-height-large:         1.3333333; // extra decimals for Win 8.1 Chrome
100 103
 @line-height-small:         1.5;
101 104
 
102 105
 @border-radius-base:        4px;
@@ -108,7 +111,7 @@
108 111
 //** Global background color for active items (e.g., navs or dropdowns).
109 112
 @component-active-bg:       @brand-primary;
110 113
 
111
-//** Width of the `border` for generating carets that indicator dropdowns.
114
+//** Width of the `border` for generating carets that indicate dropdowns.
112 115
 @caret-width-base:          4px;
113 116
 //** Carets increase slightly in size for larger components.
114 117
 @caret-width-large:         5px;
@@ -167,6 +170,11 @@
167 170
 
168 171
 @btn-link-disabled-color:        @gray-light;
169 172
 
173
+// Allows for customizing button radius independently from global border radius
174
+@btn-border-radius-base:         @border-radius-base;
175
+@btn-border-radius-large:        @border-radius-large;
176
+@btn-border-radius-small:        @border-radius-small;
177
+
170 178
 
171 179
 //== Forms
172 180
 //
@@ -181,13 +189,21 @@
181 189
 @input-color:                    @gray;
182 190
 //** `<input>` border color
183 191
 @input-border:                   #ccc;
184
-//** `<input>` border radius
192
+
193
+// TODO: Rename `@input-border-radius` to `@input-border-radius-base` in v4
194
+//** Default `.form-control` border radius
195
+// This has no effect on `<select>`s in some browsers, due to the limited stylability of `<select>`s in CSS.
185 196
 @input-border-radius:            @border-radius-base;
197
+//** Large `.form-control` border radius
198
+@input-border-radius-large:      @border-radius-large;
199
+//** Small `.form-control` border radius
200
+@input-border-radius-small:      @border-radius-small;
201
+
186 202
 //** Border color for inputs on focus
187 203
 @input-border-focus:             #66afe9;
188 204
 
189 205
 //** Placeholder text color
190
-@input-color-placeholder:        @gray-light;
206
+@input-color-placeholder:        #999;
191 207
 
192 208
 //** Default `.form-control` height
193 209
 @input-height-base:              (@line-height-computed + (@padding-base-vertical * 2) + 2);
@@ -196,6 +212,9 @@
196 212
 //** Small `.form-control` height
197 213
 @input-height-small:             (floor(@font-size-small * @line-height-small) + (@padding-small-vertical * 2) + 2);
198 214
 
215
+//** `.form-group` margin
216
+@form-group-margin-bottom:       15px;
217
+
199 218
 @legend-color:                   @gray-dark;
200 219
 @legend-border-color:            #e5e5e5;
201 220
 
@@ -204,6 +223,9 @@
204 223
 //** Border color for textual input addons
205 224
 @input-group-addon-border-color: @input-border;
206 225
 
226
+//** Disabled cursor for form controls and buttons.
227
+@cursor-disabled:                not-allowed;
228
+
207 229
 
208 230
 //== Dropdowns
209 231
 //
@@ -315,17 +337,17 @@
315 337
 //## Define the maximum width of `.container` for different screen sizes.
316 338
 
317 339
 // Small screen / tablet
318
-@container-tablet:             ((720px + @grid-gutter-width));
340
+@container-tablet:             (720px + @grid-gutter-width);
319 341
 //** For `@screen-sm-min` and up.
320 342
 @container-sm:                 @container-tablet;
321 343
 
322 344
 // Medium screen / desktop
323
-@container-desktop:            ((940px + @grid-gutter-width));
345
+@container-desktop:            (940px + @grid-gutter-width);
324 346
 //** For `@screen-md-min` and up.
325 347
 @container-md:                 @container-desktop;
326 348
 
327 349
 // Large screen / wide desktop
328
-@container-large-desktop:      ((1140px + @grid-gutter-width));
350
+@container-large-desktop:      (1140px + @grid-gutter-width);
329 351
 //** For `@screen-lg-min` and up.
330 352
 @container-lg:                 @container-large-desktop;
331 353
 
@@ -366,14 +388,14 @@
366 388
 @navbar-default-toggle-border-color:       #ddd;
367 389
 
368 390
 
369
-// Inverted navbar
391
+//=== Inverted navbar
370 392
 // Reset inverted navbar basics
371
-@navbar-inverse-color:                      @gray-light;
393
+@navbar-inverse-color:                      lighten(@gray-light, 15%);
372 394
 @navbar-inverse-bg:                         #222;
373 395
 @navbar-inverse-border:                     darken(@navbar-inverse-bg, 10%);
374 396
 
375 397
 // Inverted navbar links
376
-@navbar-inverse-link-color:                 @gray-light;
398
+@navbar-inverse-link-color:                 lighten(@gray-light, 15%);
377 399
 @navbar-inverse-link-hover-color:           #fff;
378 400
 @navbar-inverse-link-hover-bg:              transparent;
379 401
 @navbar-inverse-link-active-color:          @navbar-inverse-link-hover-color;
@@ -403,8 +425,6 @@
403 425
 @nav-disabled-link-color:                   @gray-light;
404 426
 @nav-disabled-link-hover-color:             @gray-light;
405 427
 
406
-@nav-open-link-hover-color:                 #fff;
407
-
408 428
 //== Tabs
409 429
 @nav-tabs-border-color:                     #ddd;
410 430
 
@@ -469,6 +489,7 @@
469 489
 @jumbotron-bg:                   @gray-lighter;
470 490
 @jumbotron-heading-color:        inherit;
471 491
 @jumbotron-font-size:            ceil((@font-size-base * 1.5));
492
+@jumbotron-heading-font-size:    ceil((@font-size-base * 4.5));
472 493
 
473 494
 
474 495
 //== Form states and alerts
@@ -529,7 +550,7 @@
529 550
 //** Popover arrow width
530 551
 @popover-arrow-width:                 10px;
531 552
 //** Popover arrow color
532
-@popover-arrow-color:                 #fff;
553
+@popover-arrow-color:                 @popover-bg;
533 554
 
534 555
 //** Popover outer arrow width
535 556
 @popover-arrow-outer-width:           (@popover-arrow-width + 1);
@@ -628,6 +649,8 @@
628 649
 @progress-bg:                 #f5f5f5;
629 650
 //** Progress bar text color
630 651
 @progress-bar-color:          #fff;
652
+//** Variable for setting rounded corners on progress bar.
653
+@progress-border-radius:      @border-radius-base;
631 654
 
632 655
 //** Default progress bar color
633 656
 @progress-bar-bg:             @brand-primary;
@@ -840,7 +863,7 @@
840 863
 @page-header-border-color:    @gray-lighter;
841 864
 //** Width of horizontal description list titles
842 865
 @dl-horizontal-offset:        @component-offset-horizontal;
866
+//** Point at which .dl-horizontal becomes horizontal
867
+@dl-horizontal-breakpoint:    @grid-float-breakpoint;
843 868
 //** Horizontal line color.
844 869
 @hr-border:                   @gray-lighter;
845
-
846
-

+ 0
- 9
src/oscar/static/oscar/less/dashboard/mixins.less Parādīt failu

@@ -1,14 +1,5 @@
1 1
 // OSC MIXINS
2 2
 // --------------------------------------------------
3
-.remove_bullets() {
4
-  margin: 0px;
5
-  padding: 0px;
6
-  li {
7
-    padding: 0px;
8
-    list-style: none;
9
-  }
10
-}
11
-
12 3
 .horiz_col() {
13 4
   padding: 0px;
14 5
   margin: 0px;

+ 0
- 38
src/oscar/static/oscar/less/font-awesome/bootstrap.less Parādīt failu

@@ -1,38 +1,6 @@
1 1
 /* BOOTSTRAP SPECIFIC CLASSES
2 2
  * -------------------------- */
3 3
 
4
-/* Bootstrap 2.0 sprites.less reset */
5
-[class^="icon-"],
6
-[class*=" icon-"] {
7
-  display: inline;
8
-  width: auto;
9
-  height: auto;
10
-  line-height: normal;
11
-  vertical-align: baseline;
12
-  background-image: none;
13
-  background-position: 0% 0%;
14
-  background-repeat: repeat;
15
-  margin-top: 0;
16
-}
17
-
18
-/* more sprites.less reset */
19
-.icon-white,
20
-.nav-pills > .active > a > [class^="icon-"],
21
-.nav-pills > .active > a > [class*=" icon-"],
22
-.nav-list > .active > a > [class^="icon-"],
23
-.nav-list > .active > a > [class*=" icon-"],
24
-.navbar-inverse .nav > .active > a > [class^="icon-"],
25
-.navbar-inverse .nav > .active > a > [class*=" icon-"],
26
-.dropdown-menu > li > a:hover > [class^="icon-"],
27
-.dropdown-menu > li > a:hover > [class*=" icon-"],
28
-.dropdown-menu > .active > a > [class^="icon-"],
29
-.dropdown-menu > .active > a > [class*=" icon-"],
30
-.dropdown-submenu:hover > a > [class^="icon-"],
31
-.dropdown-submenu:hover > a > [class*=" icon-"] {
32
-  background-image: none;
33
-}
34
-
35
-
36 4
 /* keeps Bootstrap styles with and without icons the same */
37 5
 .btn, .nav {
38 6
   [class^="icon-"],
@@ -76,9 +44,3 @@
76 44
     &.pull-right.icon-2x { margin-left: .2em; }
77 45
   }
78 46
 }
79
-
80
-/* Fixes alignment in nav lists */
81
-.nav-list [class^="icon-"],
82
-.nav-list [class*=" icon-"] {
83
-  line-height: inherit;
84
-}

Notiek ielāde…
Atcelt
Saglabāt