rvnstat 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. checksums.yaml +7 -0
  2. data/._README.md +0 -0
  3. data/._ss.png +0 -0
  4. data/.gitignore +17 -0
  5. data/Gemfile +6 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +34 -0
  8. data/Rakefile +1 -0
  9. data/bin/._rvnstat +0 -0
  10. data/bin/rvnstat +9 -0
  11. data/config.ru +4 -0
  12. data/config.yml +3 -0
  13. data/lib/._app.rb +0 -0
  14. data/lib/._config.rb +0 -0
  15. data/lib/._require.rb +0 -0
  16. data/lib/._rvnstat.rb +0 -0
  17. data/lib/._vnstat.rb +0 -0
  18. data/lib/app.rb +102 -0
  19. data/lib/config.rb +13 -0
  20. data/lib/require.rb +10 -0
  21. data/lib/rvnstat.rb +5 -0
  22. data/lib/rvnstat/._version.rb +0 -0
  23. data/lib/rvnstat/version.rb +3 -0
  24. data/lib/vnstat.rb +74 -0
  25. data/public/CNAME +1 -0
  26. data/public/CONTRIBUTING.md +192 -0
  27. data/public/Gruntfile.js +418 -0
  28. data/public/LICENSE +21 -0
  29. data/public/README.md +173 -0
  30. data/public/_config.yml +35 -0
  31. data/public/bower.json +24 -0
  32. data/public/browserstack.json +44 -0
  33. data/public/composer.json +25 -0
  34. data/public/dist/css/._custom.css +0 -0
  35. data/public/dist/css/bootstrap-theme.css +347 -0
  36. data/public/dist/css/bootstrap-theme.css.map +1 -0
  37. data/public/dist/css/bootstrap-theme.min.css +7 -0
  38. data/public/dist/css/bootstrap.css +5831 -0
  39. data/public/dist/css/bootstrap.css.map +1 -0
  40. data/public/dist/css/bootstrap.min.css +7 -0
  41. data/public/dist/css/custom.css +20 -0
  42. data/public/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  43. data/public/dist/fonts/glyphicons-halflings-regular.svg +229 -0
  44. data/public/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  45. data/public/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  46. data/public/dist/js/bootstrap.js +1951 -0
  47. data/public/dist/js/bootstrap.min.js +6 -0
  48. data/public/docs/LICENSE +319 -0
  49. data/public/docs/_data/glyphicons.yml +203 -0
  50. data/public/docs/_data/showcase.yml +19 -0
  51. data/public/docs/_includes/ads.html +1 -0
  52. data/public/docs/_includes/customizer-variables.html +1690 -0
  53. data/public/docs/_includes/footer.html +70 -0
  54. data/public/docs/_includes/header.html +42 -0
  55. data/public/docs/_includes/nav-about.html +9 -0
  56. data/public/docs/_includes/nav-components.html +138 -0
  57. data/public/docs/_includes/nav-css.html +127 -0
  58. data/public/docs/_includes/nav-customize.html +46 -0
  59. data/public/docs/_includes/nav-getting-started.html +62 -0
  60. data/public/docs/_includes/nav-javascript.html +89 -0
  61. data/public/docs/_includes/nav-main.html +36 -0
  62. data/public/docs/_includes/nav-migration.html +12 -0
  63. data/public/docs/_includes/social-buttons.html +16 -0
  64. data/public/docs/_layouts/default.html +55 -0
  65. data/public/docs/_layouts/home.html +18 -0
  66. data/public/docs/about.html +149 -0
  67. data/public/docs/assets/css/docs.css +1394 -0
  68. data/public/docs/assets/css/docs.min.css +6 -0
  69. data/public/docs/assets/css/pygments-manni.css +66 -0
  70. data/public/docs/assets/ico/apple-touch-icon-144-precomposed.png +0 -0
  71. data/public/docs/assets/ico/favicon.ico +0 -0
  72. data/public/docs/assets/img/components.png +0 -0
  73. data/public/docs/assets/img/devices.png +0 -0
  74. data/public/docs/assets/img/sass-less.png +0 -0
  75. data/public/docs/assets/js/application.js +101 -0
  76. data/public/docs/assets/js/customize.min.js +49 -0
  77. data/public/docs/assets/js/customizer.js +348 -0
  78. data/public/docs/assets/js/docs.min.js +16 -0
  79. data/public/docs/assets/js/ie8-responsive-file-warning.js +12 -0
  80. data/public/docs/assets/js/raw-files.min.js +8 -0
  81. data/public/docs/assets/js/vendor/blob.js +166 -0
  82. data/public/docs/assets/js/vendor/filesaver.js +236 -0
  83. data/public/docs/assets/js/vendor/holder.js +645 -0
  84. data/public/docs/assets/js/vendor/jszip.js +1474 -0
  85. data/public/docs/assets/js/vendor/less.min.js +16 -0
  86. data/public/docs/assets/js/vendor/uglify.min.js +14 -0
  87. data/public/docs/components.html +3001 -0
  88. data/public/docs/css.html +3346 -0
  89. data/public/docs/customize.html +356 -0
  90. data/public/docs/customizer-nav.jade +15 -0
  91. data/public/docs/customizer-variables.jade +21 -0
  92. data/public/docs/dist/css/bootstrap-theme.css.map +1 -0
  93. data/public/docs/dist/css/bootstrap-theme.min.css +7 -0
  94. data/public/docs/dist/css/bootstrap.css.map +1 -0
  95. data/public/docs/dist/css/bootstrap.min.css +7 -0
  96. data/public/docs/dist/fonts/glyphicons-halflings-regular.eot +0 -0
  97. data/public/docs/dist/fonts/glyphicons-halflings-regular.svg +229 -0
  98. data/public/docs/dist/fonts/glyphicons-halflings-regular.ttf +0 -0
  99. data/public/docs/dist/fonts/glyphicons-halflings-regular.woff +0 -0
  100. data/public/docs/dist/js/bootstrap.min.js +7 -0
  101. data/public/docs/examples/blog/blog.css +168 -0
  102. data/public/docs/examples/blog/index.html +171 -0
  103. data/public/docs/examples/carousel/carousel.css +148 -0
  104. data/public/docs/examples/carousel/index.html +206 -0
  105. data/public/docs/examples/cover/cover.css +161 -0
  106. data/public/docs/examples/cover/index.html +75 -0
  107. data/public/docs/examples/dashboard/dashboard.css +93 -0
  108. data/public/docs/examples/dashboard/index.html +243 -0
  109. data/public/docs/examples/grid/grid.css +28 -0
  110. data/public/docs/examples/grid/index.html +152 -0
  111. data/public/docs/examples/jumbotron-narrow/index.html +82 -0
  112. data/public/docs/examples/jumbotron-narrow/jumbotron-narrow.css +79 -0
  113. data/public/docs/examples/jumbotron/index.html +99 -0
  114. data/public/docs/examples/jumbotron/jumbotron.css +5 -0
  115. data/public/docs/examples/justified-nav/index.html +84 -0
  116. data/public/docs/examples/justified-nav/justified-nav.css +88 -0
  117. data/public/docs/examples/navbar-fixed-top/index.html +91 -0
  118. data/public/docs/examples/navbar-fixed-top/navbar-fixed-top.css +4 -0
  119. data/public/docs/examples/navbar-static-top/index.html +92 -0
  120. data/public/docs/examples/navbar-static-top/navbar-static-top.css +7 -0
  121. data/public/docs/examples/navbar/index.html +90 -0
  122. data/public/docs/examples/navbar/navbar.css +8 -0
  123. data/public/docs/examples/non-responsive/index.html +105 -0
  124. data/public/docs/examples/non-responsive/non-responsive.css +120 -0
  125. data/public/docs/examples/offcanvas/index.html +130 -0
  126. data/public/docs/examples/offcanvas/offcanvas.css +51 -0
  127. data/public/docs/examples/offcanvas/offcanvas.js +5 -0
  128. data/public/docs/examples/screenshots/blog.jpg +0 -0
  129. data/public/docs/examples/screenshots/carousel.jpg +0 -0
  130. data/public/docs/examples/screenshots/cover.jpg +0 -0
  131. data/public/docs/examples/screenshots/dashboard.jpg +0 -0
  132. data/public/docs/examples/screenshots/grid.jpg +0 -0
  133. data/public/docs/examples/screenshots/jumbotron-narrow.jpg +0 -0
  134. data/public/docs/examples/screenshots/jumbotron.jpg +0 -0
  135. data/public/docs/examples/screenshots/justified-nav.jpg +0 -0
  136. data/public/docs/examples/screenshots/navbar-fixed.jpg +0 -0
  137. data/public/docs/examples/screenshots/navbar-static.jpg +0 -0
  138. data/public/docs/examples/screenshots/navbar.jpg +0 -0
  139. data/public/docs/examples/screenshots/non-responsive.jpg +0 -0
  140. data/public/docs/examples/screenshots/offcanvas.jpg +0 -0
  141. data/public/docs/examples/screenshots/sign-in.jpg +0 -0
  142. data/public/docs/examples/screenshots/starter-template.jpg +0 -0
  143. data/public/docs/examples/screenshots/sticky-footer-navbar.jpg +0 -0
  144. data/public/docs/examples/screenshots/sticky-footer.jpg +0 -0
  145. data/public/docs/examples/screenshots/theme.jpg +0 -0
  146. data/public/docs/examples/signin/index.html +50 -0
  147. data/public/docs/examples/signin/signin.css +40 -0
  148. data/public/docs/examples/starter-template/index.html +68 -0
  149. data/public/docs/examples/starter-template/starter-template.css +7 -0
  150. data/public/docs/examples/sticky-footer-navbar/index.html +91 -0
  151. data/public/docs/examples/sticky-footer-navbar/sticky-footer-navbar.css +45 -0
  152. data/public/docs/examples/sticky-footer/index.html +55 -0
  153. data/public/docs/examples/sticky-footer/sticky-footer.css +38 -0
  154. data/public/docs/examples/theme/index.html +384 -0
  155. data/public/docs/examples/theme/theme.css +14 -0
  156. data/public/docs/getting-started.html +773 -0
  157. data/public/docs/grunt/bs-glyphicons-data-generator.js +33 -0
  158. data/public/docs/grunt/bs-lessdoc-parser.js +236 -0
  159. data/public/docs/grunt/bs-raw-files-generator.js +31 -0
  160. data/public/docs/index.html +72 -0
  161. data/public/docs/javascript.html +2141 -0
  162. data/public/docs/migration.html +423 -0
  163. data/public/fonts/glyphicons-halflings-regular.eot +0 -0
  164. data/public/fonts/glyphicons-halflings-regular.svg +229 -0
  165. data/public/fonts/glyphicons-halflings-regular.ttf +0 -0
  166. data/public/fonts/glyphicons-halflings-regular.woff +0 -0
  167. data/public/js/._exporting.js +0 -0
  168. data/public/js/._highcharts-all.js +0 -0
  169. data/public/js/._jquery-min.js +0 -0
  170. data/public/js/.jscs.json +15 -0
  171. data/public/js/.jshintrc +14 -0
  172. data/public/js/affix.js +137 -0
  173. data/public/js/alert.js +88 -0
  174. data/public/js/bootstrap.min.js +6 -0
  175. data/public/js/button.js +107 -0
  176. data/public/js/carousel.js +205 -0
  177. data/public/js/collapse.js +170 -0
  178. data/public/js/dropdown.js +147 -0
  179. data/public/js/highcharts.js +294 -0
  180. data/public/js/jquery-1.11.0.min.js +4 -0
  181. data/public/js/modal.js +243 -0
  182. data/public/js/popover.js +110 -0
  183. data/public/js/scrollspy.js +153 -0
  184. data/public/js/tab.js +125 -0
  185. data/public/js/tests/index.html +54 -0
  186. data/public/js/tests/unit/affix.js +50 -0
  187. data/public/js/tests/unit/alert.js +62 -0
  188. data/public/js/tests/unit/button.js +122 -0
  189. data/public/js/tests/unit/carousel.js +110 -0
  190. data/public/js/tests/unit/collapse.js +164 -0
  191. data/public/js/tests/unit/dropdown.js +218 -0
  192. data/public/js/tests/unit/modal.js +195 -0
  193. data/public/js/tests/unit/phantom.js +69 -0
  194. data/public/js/tests/unit/popover.js +133 -0
  195. data/public/js/tests/unit/scrollspy.js +36 -0
  196. data/public/js/tests/unit/tab.js +86 -0
  197. data/public/js/tests/unit/tooltip.js +432 -0
  198. data/public/js/tests/vendor/jquery.js +6 -0
  199. data/public/js/tests/vendor/qunit.css +245 -0
  200. data/public/js/tests/vendor/qunit.js +2210 -0
  201. data/public/js/tooltip.js +399 -0
  202. data/public/js/transition.js +48 -0
  203. data/public/less/.csscomb.json +297 -0
  204. data/public/less/.csslintrc +19 -0
  205. data/public/less/alerts.less +67 -0
  206. data/public/less/badges.less +55 -0
  207. data/public/less/bootstrap.less +49 -0
  208. data/public/less/breadcrumbs.less +26 -0
  209. data/public/less/button-groups.less +226 -0
  210. data/public/less/buttons.less +155 -0
  211. data/public/less/carousel.less +232 -0
  212. data/public/less/close.less +33 -0
  213. data/public/less/code.less +63 -0
  214. data/public/less/component-animations.less +29 -0
  215. data/public/less/dropdowns.less +213 -0
  216. data/public/less/forms.less +419 -0
  217. data/public/less/glyphicons.less +233 -0
  218. data/public/less/grid.less +100 -0
  219. data/public/less/input-groups.less +157 -0
  220. data/public/less/jumbotron.less +44 -0
  221. data/public/less/labels.less +64 -0
  222. data/public/less/list-group.less +110 -0
  223. data/public/less/media.less +56 -0
  224. data/public/less/mixins.less +926 -0
  225. data/public/less/modals.less +138 -0
  226. data/public/less/navbar.less +616 -0
  227. data/public/less/navs.less +242 -0
  228. data/public/less/normalize.less +423 -0
  229. data/public/less/pager.less +55 -0
  230. data/public/less/pagination.less +88 -0
  231. data/public/less/panels.less +230 -0
  232. data/public/less/popovers.less +133 -0
  233. data/public/less/print.less +101 -0
  234. data/public/less/progress-bars.less +80 -0
  235. data/public/less/responsive-utilities.less +93 -0
  236. data/public/less/scaffolding.less +134 -0
  237. data/public/less/tables.less +233 -0
  238. data/public/less/theme.less +247 -0
  239. data/public/less/thumbnails.less +36 -0
  240. data/public/less/tooltip.less +95 -0
  241. data/public/less/type.less +296 -0
  242. data/public/less/utilities.less +56 -0
  243. data/public/less/variables.less +827 -0
  244. data/public/less/wells.less +29 -0
  245. data/public/package.json +71 -0
  246. data/public/test-infra/README.md +100 -0
  247. data/public/test-infra/npm-shrinkwrap.canonical.json +1 -0
  248. data/public/test-infra/requirements.txt +1 -0
  249. data/public/test-infra/s3_cache.py +107 -0
  250. data/public/test-infra/sauce_browsers.yml +83 -0
  251. data/public/test-infra/shrinkwrap.js +24 -0
  252. data/public/test-infra/uncached-npm-install.sh +4 -0
  253. data/rvnstat.gemspec +26 -0
  254. data/rvnstat.yml +3 -0
  255. data/ss.png +0 -0
  256. data/untitled.txt +0 -0
  257. data/views/._hourly.erb +0 -0
  258. data/views/._index.erb +0 -0
  259. data/views/._live_traffic.erb +0 -0
  260. data/views/._monthly.erb +0 -0
  261. data/views/._top_ten.erb +0 -0
  262. data/views/day_detail.erb +44 -0
  263. data/views/day_total.erb +42 -0
  264. data/views/graph_test.erb +2 -0
  265. data/views/hourly.erb +19 -0
  266. data/views/index.erb +71 -0
  267. data/views/layout.erb +28 -0
  268. data/views/live_traffic.erb +57 -0
  269. data/views/monthly.erb +21 -0
  270. data/views/top_ten.erb +21 -0
  271. metadata +385 -0
@@ -0,0 +1,101 @@
1
+ //
2
+ // Basic print styles
3
+ // --------------------------------------------------
4
+ // Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css
5
+
6
+ @media print {
7
+
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
+ }
100
+
101
+ }
@@ -0,0 +1,80 @@
1
+ //
2
+ // Progress bars
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Bar animations
7
+ // -------------------------
8
+
9
+ // WebKit
10
+ @-webkit-keyframes progress-bar-stripes {
11
+ from { background-position: 40px 0; }
12
+ to { background-position: 0 0; }
13
+ }
14
+
15
+ // Spec and IE10+
16
+ @keyframes progress-bar-stripes {
17
+ from { background-position: 40px 0; }
18
+ to { background-position: 0 0; }
19
+ }
20
+
21
+
22
+
23
+ // Bar itself
24
+ // -------------------------
25
+
26
+ // Outer container
27
+ .progress {
28
+ overflow: hidden;
29
+ height: @line-height-computed;
30
+ margin-bottom: @line-height-computed;
31
+ background-color: @progress-bg;
32
+ border-radius: @border-radius-base;
33
+ .box-shadow(inset 0 1px 2px rgba(0,0,0,.1));
34
+ }
35
+
36
+ // Bar of progress
37
+ .progress-bar {
38
+ float: left;
39
+ width: 0%;
40
+ height: 100%;
41
+ font-size: @font-size-small;
42
+ line-height: @line-height-computed;
43
+ color: @progress-bar-color;
44
+ text-align: center;
45
+ background-color: @progress-bar-bg;
46
+ .box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));
47
+ .transition(width .6s ease);
48
+ }
49
+
50
+ // Striped bars
51
+ .progress-striped .progress-bar {
52
+ #gradient > .striped();
53
+ background-size: 40px 40px;
54
+ }
55
+
56
+ // Call animation for the active one
57
+ .progress.active .progress-bar {
58
+ .animation(progress-bar-stripes 2s linear infinite);
59
+ }
60
+
61
+
62
+
63
+ // Variations
64
+ // -------------------------
65
+
66
+ .progress-bar-success {
67
+ .progress-bar-variant(@progress-bar-success-bg);
68
+ }
69
+
70
+ .progress-bar-info {
71
+ .progress-bar-variant(@progress-bar-info-bg);
72
+ }
73
+
74
+ .progress-bar-warning {
75
+ .progress-bar-variant(@progress-bar-warning-bg);
76
+ }
77
+
78
+ .progress-bar-danger {
79
+ .progress-bar-variant(@progress-bar-danger-bg);
80
+ }
@@ -0,0 +1,93 @@
1
+ //
2
+ // Responsive: Utility classes
3
+ // --------------------------------------------------
4
+
5
+
6
+ // IE10 in Windows (Phone) 8
7
+ //
8
+ // Support for responsive views via media queries is kind of borked in IE10, for
9
+ // Surface/desktop in split view and for Windows Phone 8. This particular fix
10
+ // must be accompanied by a snippet of JavaScript to sniff the user agent and
11
+ // apply some conditional CSS to *only* the Surface/desktop Windows 8. Look at
12
+ // our Getting Started page for more information on this bug.
13
+ //
14
+ // For more information, see the following:
15
+ //
16
+ // Issue: https://github.com/twbs/bootstrap/issues/10497
17
+ // Docs: http://getbootstrap.com/getting-started/#browsers
18
+ // Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/
19
+
20
+ @-ms-viewport {
21
+ width: device-width;
22
+ }
23
+
24
+
25
+ // Visibility utilities
26
+ .visible-xs {
27
+ .responsive-invisibility();
28
+
29
+ @media (max-width: @screen-xs-max) {
30
+ .responsive-visibility();
31
+ }
32
+ }
33
+ .visible-sm {
34
+ .responsive-invisibility();
35
+
36
+ @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
37
+ .responsive-visibility();
38
+ }
39
+ }
40
+ .visible-md {
41
+ .responsive-invisibility();
42
+
43
+ @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
44
+ .responsive-visibility();
45
+ }
46
+ }
47
+ .visible-lg {
48
+ .responsive-invisibility();
49
+
50
+ @media (min-width: @screen-lg-min) {
51
+ .responsive-visibility();
52
+ }
53
+ }
54
+
55
+ .hidden-xs {
56
+ @media (max-width: @screen-xs-max) {
57
+ .responsive-invisibility();
58
+ }
59
+ }
60
+ .hidden-sm {
61
+ @media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {
62
+ .responsive-invisibility();
63
+ }
64
+ }
65
+ .hidden-md {
66
+ @media (min-width: @screen-md-min) and (max-width: @screen-md-max) {
67
+ .responsive-invisibility();
68
+ }
69
+ }
70
+ .hidden-lg {
71
+ @media (min-width: @screen-lg-min) {
72
+ .responsive-invisibility();
73
+ }
74
+ }
75
+
76
+
77
+ // Print utilities
78
+ //
79
+ // Media queries are placed on the inside to be mixin-friendly.
80
+
81
+ .visible-print {
82
+ .responsive-invisibility();
83
+
84
+ @media print {
85
+ .responsive-visibility();
86
+ }
87
+ }
88
+
89
+ .hidden-print {
90
+ @media print {
91
+ .responsive-invisibility();
92
+ }
93
+ }
@@ -0,0 +1,134 @@
1
+ //
2
+ // Scaffolding
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Reset the box-sizing
7
+ //
8
+ // Heads up! This reset may cause conflicts with some third-party widgets.
9
+ // For recommendations on resolving such conflicts, see
10
+ // http://getbootstrap.com/getting-started/#third-box-sizing
11
+ * {
12
+ .box-sizing(border-box);
13
+ }
14
+ *:before,
15
+ *:after {
16
+ .box-sizing(border-box);
17
+ }
18
+
19
+
20
+ // Body reset
21
+
22
+ html {
23
+ font-size: 62.5%;
24
+ -webkit-tap-highlight-color: rgba(0,0,0,0);
25
+ }
26
+
27
+ body {
28
+ font-family: @font-family-base;
29
+ font-size: @font-size-base;
30
+ line-height: @line-height-base;
31
+ color: @text-color;
32
+ background-color: @body-bg;
33
+ }
34
+
35
+ // Reset fonts for relevant elements
36
+ input,
37
+ button,
38
+ select,
39
+ textarea {
40
+ font-family: inherit;
41
+ font-size: inherit;
42
+ line-height: inherit;
43
+ }
44
+
45
+
46
+ // Links
47
+
48
+ a {
49
+ color: @link-color;
50
+ text-decoration: none;
51
+
52
+ &:hover,
53
+ &:focus {
54
+ color: @link-hover-color;
55
+ text-decoration: underline;
56
+ }
57
+
58
+ &:focus {
59
+ .tab-focus();
60
+ }
61
+ }
62
+
63
+
64
+ // Figures
65
+ //
66
+ // We reset this here because previously Normalize had no `figure` margins. This
67
+ // ensures we don't break anyone's use of the element.
68
+
69
+ figure {
70
+ margin: 0;
71
+ }
72
+
73
+
74
+ // Images
75
+
76
+ img {
77
+ vertical-align: middle;
78
+ }
79
+
80
+ // Responsive images (ensure images don't scale beyond their parents)
81
+ .img-responsive {
82
+ .img-responsive();
83
+ }
84
+
85
+ // Rounded corners
86
+ .img-rounded {
87
+ border-radius: @border-radius-large;
88
+ }
89
+
90
+ // Image thumbnails
91
+ //
92
+ // Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.
93
+ .img-thumbnail {
94
+ padding: @thumbnail-padding;
95
+ line-height: @line-height-base;
96
+ background-color: @thumbnail-bg;
97
+ border: 1px solid @thumbnail-border;
98
+ border-radius: @thumbnail-border-radius;
99
+ .transition(all .2s ease-in-out);
100
+
101
+ // Keep them at most 100% wide
102
+ .img-responsive(inline-block);
103
+ }
104
+
105
+ // Perfect circle
106
+ .img-circle {
107
+ border-radius: 50%; // set radius in percents
108
+ }
109
+
110
+
111
+ // Horizontal rules
112
+
113
+ hr {
114
+ margin-top: @line-height-computed;
115
+ margin-bottom: @line-height-computed;
116
+ border: 0;
117
+ border-top: 1px solid @hr-border;
118
+ }
119
+
120
+
121
+ // Only display content to screen readers
122
+ //
123
+ // See: http://a11yproject.com/posts/how-to-hide-content/
124
+
125
+ .sr-only {
126
+ position: absolute;
127
+ width: 1px;
128
+ height: 1px;
129
+ margin: -1px;
130
+ padding: 0;
131
+ overflow: hidden;
132
+ clip: rect(0,0,0,0);
133
+ border: 0;
134
+ }
@@ -0,0 +1,233 @@
1
+ //
2
+ // Tables
3
+ // --------------------------------------------------
4
+
5
+
6
+ table {
7
+ max-width: 100%;
8
+ background-color: @table-bg;
9
+ }
10
+ th {
11
+ text-align: left;
12
+ }
13
+
14
+
15
+ // Baseline styles
16
+
17
+ .table {
18
+ width: 100%;
19
+ margin-bottom: @line-height-computed;
20
+ // Cells
21
+ > thead,
22
+ > tbody,
23
+ > tfoot {
24
+ > tr {
25
+ > th,
26
+ > td {
27
+ padding: @table-cell-padding;
28
+ line-height: @line-height-base;
29
+ vertical-align: top;
30
+ border-top: 1px solid @table-border-color;
31
+ }
32
+ }
33
+ }
34
+ // Bottom align for column headings
35
+ > thead > tr > th {
36
+ vertical-align: bottom;
37
+ border-bottom: 2px solid @table-border-color;
38
+ }
39
+ // Remove top border from thead by default
40
+ > caption + thead,
41
+ > colgroup + thead,
42
+ > thead:first-child {
43
+ > tr:first-child {
44
+ > th,
45
+ > td {
46
+ border-top: 0;
47
+ }
48
+ }
49
+ }
50
+ // Account for multiple tbody instances
51
+ > tbody + tbody {
52
+ border-top: 2px solid @table-border-color;
53
+ }
54
+
55
+ // Nesting
56
+ .table {
57
+ background-color: @body-bg;
58
+ }
59
+ }
60
+
61
+
62
+ // Condensed table w/ half padding
63
+
64
+ .table-condensed {
65
+ > thead,
66
+ > tbody,
67
+ > tfoot {
68
+ > tr {
69
+ > th,
70
+ > td {
71
+ padding: @table-condensed-cell-padding;
72
+ }
73
+ }
74
+ }
75
+ }
76
+
77
+
78
+ // Bordered version
79
+ //
80
+ // Add borders all around the table and between all the columns.
81
+
82
+ .table-bordered {
83
+ border: 1px solid @table-border-color;
84
+ > thead,
85
+ > tbody,
86
+ > tfoot {
87
+ > tr {
88
+ > th,
89
+ > td {
90
+ border: 1px solid @table-border-color;
91
+ }
92
+ }
93
+ }
94
+ > thead > tr {
95
+ > th,
96
+ > td {
97
+ border-bottom-width: 2px;
98
+ }
99
+ }
100
+ }
101
+
102
+
103
+ // Zebra-striping
104
+ //
105
+ // Default zebra-stripe styles (alternating gray and transparent backgrounds)
106
+
107
+ .table-striped {
108
+ > tbody > tr:nth-child(odd) {
109
+ > td,
110
+ > th {
111
+ background-color: @table-bg-accent;
112
+ }
113
+ }
114
+ }
115
+
116
+
117
+ // Hover effect
118
+ //
119
+ // Placed here since it has to come after the potential zebra striping
120
+
121
+ .table-hover {
122
+ > tbody > tr:hover {
123
+ > td,
124
+ > th {
125
+ background-color: @table-bg-hover;
126
+ }
127
+ }
128
+ }
129
+
130
+
131
+ // Table cell sizing
132
+ //
133
+ // Reset default table behavior
134
+
135
+ table col[class*="col-"] {
136
+ position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623)
137
+ float: none;
138
+ display: table-column;
139
+ }
140
+ table {
141
+ td,
142
+ th {
143
+ &[class*="col-"] {
144
+ position: static; // Prevent border hiding in Firefox and IE9/10 (see https://github.com/twbs/bootstrap/issues/11623)
145
+ float: none;
146
+ display: table-cell;
147
+ }
148
+ }
149
+ }
150
+
151
+
152
+ // Table backgrounds
153
+ //
154
+ // Exact selectors below required to override `.table-striped` and prevent
155
+ // inheritance to nested tables.
156
+
157
+ // Generate the contextual variants
158
+ .table-row-variant(active; @table-bg-active);
159
+ .table-row-variant(success; @state-success-bg);
160
+ .table-row-variant(info; @state-info-bg);
161
+ .table-row-variant(warning; @state-warning-bg);
162
+ .table-row-variant(danger; @state-danger-bg);
163
+
164
+
165
+ // Responsive tables
166
+ //
167
+ // Wrap your tables in `.table-responsive` and we'll make them mobile friendly
168
+ // by enabling horizontal scrolling. Only applies <768px. Everything above that
169
+ // will display normally.
170
+
171
+ @media (max-width: @screen-xs-max) {
172
+ .table-responsive {
173
+ width: 100%;
174
+ margin-bottom: (@line-height-computed * 0.75);
175
+ overflow-y: hidden;
176
+ overflow-x: scroll;
177
+ -ms-overflow-style: -ms-autohiding-scrollbar;
178
+ border: 1px solid @table-border-color;
179
+ -webkit-overflow-scrolling: touch;
180
+
181
+ // Tighten up spacing
182
+ > .table {
183
+ margin-bottom: 0;
184
+
185
+ // Ensure the content doesn't wrap
186
+ > thead,
187
+ > tbody,
188
+ > tfoot {
189
+ > tr {
190
+ > th,
191
+ > td {
192
+ white-space: nowrap;
193
+ }
194
+ }
195
+ }
196
+ }
197
+
198
+ // Special overrides for the bordered tables
199
+ > .table-bordered {
200
+ border: 0;
201
+
202
+ // Nuke the appropriate borders so that the parent can handle them
203
+ > thead,
204
+ > tbody,
205
+ > tfoot {
206
+ > tr {
207
+ > th:first-child,
208
+ > td:first-child {
209
+ border-left: 0;
210
+ }
211
+ > th:last-child,
212
+ > td:last-child {
213
+ border-right: 0;
214
+ }
215
+ }
216
+ }
217
+
218
+ // Only nuke the last row's bottom-border in `tbody` and `tfoot` since
219
+ // chances are there will be only one `tr` in a `thead` and that would
220
+ // remove the border altogether.
221
+ > tbody,
222
+ > tfoot {
223
+ > tr:last-child {
224
+ > th,
225
+ > td {
226
+ border-bottom: 0;
227
+ }
228
+ }
229
+ }
230
+
231
+ }
232
+ }
233
+ }