dvl-core 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +4 -0
- data/.hound.yml +5 -0
- data/.ruby-version +1 -0
- data/Gemfile +2 -0
- data/LICENSE.md +20 -0
- data/README.md +35 -0
- data/circle.yml +7 -0
- data/dvl-core.gemspec +30 -0
- data/lib/dvl/core.rb +11 -0
- data/lib/dvl/core/version.rb +5 -0
- data/preview/app.rb +252 -0
- data/script/bootstrap +45 -0
- data/script/cibuild +3 -0
- data/script/preview +3 -0
- data/script/release +38 -0
- data/spec/dvl_core_spec.rb +30 -0
- data/vendor/assets/javascripts/dvl/core.js +4 -0
- data/vendor/assets/javascripts/dvl/core/buttons.js +116 -0
- data/vendor/assets/javascripts/dvl/core/dropdowns.js +161 -0
- data/vendor/assets/javascripts/dvl/core/modals.js +281 -0
- data/vendor/assets/javascripts/dvl/core/tooltips.js +478 -0
- data/vendor/assets/stylesheets/dvl/core.scss +21 -0
- data/vendor/assets/stylesheets/dvl/core/buttons.scss +152 -0
- data/vendor/assets/stylesheets/dvl/core/code.scss +31 -0
- data/vendor/assets/stylesheets/dvl/core/dropdowns.scss +309 -0
- data/vendor/assets/stylesheets/dvl/core/forms.scss +434 -0
- data/vendor/assets/stylesheets/dvl/core/grid.scss +87 -0
- data/vendor/assets/stylesheets/dvl/core/includes.scss +163 -0
- data/vendor/assets/stylesheets/dvl/core/labels.scss +31 -0
- data/vendor/assets/stylesheets/dvl/core/legacy.scss +287 -0
- data/vendor/assets/stylesheets/dvl/core/links.scss +53 -0
- data/vendor/assets/stylesheets/dvl/core/lists.scss +30 -0
- data/vendor/assets/stylesheets/dvl/core/media.scss +24 -0
- data/vendor/assets/stylesheets/dvl/core/modals.scss +173 -0
- data/vendor/assets/stylesheets/dvl/core/pagination.scss +70 -0
- data/vendor/assets/stylesheets/dvl/core/print.scss +69 -0
- data/vendor/assets/stylesheets/dvl/core/progress.scss +16 -0
- data/vendor/assets/stylesheets/dvl/core/resets.scss +92 -0
- data/vendor/assets/stylesheets/dvl/core/shame.scss +35 -0
- data/vendor/assets/stylesheets/dvl/core/sidebar.scss +101 -0
- data/vendor/assets/stylesheets/dvl/core/tables.scss +122 -0
- data/vendor/assets/stylesheets/dvl/core/tooltips.scss +87 -0
- data/vendor/assets/stylesheets/dvl/core/typography.scss +158 -0
- metadata +228 -0
@@ -0,0 +1,35 @@
|
|
1
|
+
// Rules
|
2
|
+
// 1. If it’s a hack, it goes in shame.css.
|
3
|
+
// 2. Document all hacks fully:
|
4
|
+
// - What part of the codebase does it relate to?
|
5
|
+
// - Why was this needed?
|
6
|
+
// - How does this fix it?
|
7
|
+
// - How might you fix it properly, given more time?
|
8
|
+
// 3. Do not blame the developer; if they explained why
|
9
|
+
// they had to do it, then their reasons are probably
|
10
|
+
// (hopefully) valid.
|
11
|
+
// 4. Try and clean shame.css up when you have some down time.
|
12
|
+
// - Even better, create an issue where you can allocate
|
13
|
+
// some time for it.
|
14
|
+
//
|
15
|
+
// App-specific hacks are located in app/stylesheets/shame.scss
|
16
|
+
|
17
|
+
|
18
|
+
// Need to consolidate this with a.uppercase
|
19
|
+
// and .caps within the next few weeks.
|
20
|
+
//
|
21
|
+
// See issue #700.
|
22
|
+
//
|
23
|
+
// —Josh
|
24
|
+
|
25
|
+
button.uppercase {
|
26
|
+
text-transform: uppercase;
|
27
|
+
color: $darkGray;
|
28
|
+
font-size: 0.85rem;
|
29
|
+
font-weight: 600;
|
30
|
+
letter-spacing: 0.04rem;
|
31
|
+
&:hover {
|
32
|
+
text-decoration: none;
|
33
|
+
color: $darkerGray;
|
34
|
+
}
|
35
|
+
}
|
@@ -0,0 +1,101 @@
|
|
1
|
+
// Sidebar
|
2
|
+
|
3
|
+
.sidebar_box {
|
4
|
+
background-color: $lighterGray;
|
5
|
+
border: 1px solid #d8d8d8;
|
6
|
+
padding: 1rem;
|
7
|
+
hr {
|
8
|
+
margin: 0.75rem 0;
|
9
|
+
}
|
10
|
+
}
|
11
|
+
.sidebar_section {
|
12
|
+
margin-bottom: 1rem;
|
13
|
+
font-size: 0.9rem;
|
14
|
+
@include cf();
|
15
|
+
h4 {
|
16
|
+
font-size: 1rem;
|
17
|
+
line-height: 1;
|
18
|
+
color: $darkestGray;
|
19
|
+
margin-bottom: 0.35rem;
|
20
|
+
}
|
21
|
+
}
|
22
|
+
|
23
|
+
// Sidebar sections with icons on the left
|
24
|
+
|
25
|
+
.sidebar_data {
|
26
|
+
padding: 0 1rem;
|
27
|
+
li {
|
28
|
+
border-bottom: 1px solid $lightGray;
|
29
|
+
padding: 0.75rem 0;
|
30
|
+
&:first-of-type {
|
31
|
+
padding-top: 0;
|
32
|
+
}
|
33
|
+
&:last-of-type {
|
34
|
+
border-bottom: 0;
|
35
|
+
padding-bottom: 0;
|
36
|
+
}
|
37
|
+
}
|
38
|
+
}
|
39
|
+
|
40
|
+
.sidebar_data_icon {
|
41
|
+
float: left;
|
42
|
+
width: 2rem;
|
43
|
+
padding-top: 0.5rem;
|
44
|
+
text-align: center;
|
45
|
+
i {
|
46
|
+
font-size: 26px;
|
47
|
+
color: $darkerGray;
|
48
|
+
}
|
49
|
+
}
|
50
|
+
|
51
|
+
.sidebar_data_text {
|
52
|
+
margin-left: 3.5rem;
|
53
|
+
}
|
54
|
+
|
55
|
+
.sidebar_data_label {
|
56
|
+
font-size: 0.9rem;
|
57
|
+
}
|
58
|
+
|
59
|
+
.sidebar_data_value {
|
60
|
+
font-size: 1.1rem;
|
61
|
+
color: #999;
|
62
|
+
font-weight: 600;
|
63
|
+
}
|
64
|
+
|
65
|
+
.sidebar_data_details {
|
66
|
+
font-size: 0.9rem;
|
67
|
+
color: #999;
|
68
|
+
}
|
69
|
+
|
70
|
+
// List of items in
|
71
|
+
.sidebar_data_list {
|
72
|
+
a, span {
|
73
|
+
float: left;
|
74
|
+
@include ellipses;
|
75
|
+
}
|
76
|
+
a {
|
77
|
+
width: 46%;
|
78
|
+
margin-right: 4%;
|
79
|
+
}
|
80
|
+
span {
|
81
|
+
width: 50%;
|
82
|
+
}
|
83
|
+
}
|
84
|
+
|
85
|
+
.sidebar_social {
|
86
|
+
padding: 1rem 1rem 0;
|
87
|
+
@include cf;
|
88
|
+
}
|
89
|
+
|
90
|
+
.sidebar_submit {
|
91
|
+
padding-bottom: 1rem;
|
92
|
+
.button {
|
93
|
+
width: 100%;
|
94
|
+
}
|
95
|
+
}
|
96
|
+
|
97
|
+
.sidebar_submit_hint {
|
98
|
+
text-align: center;
|
99
|
+
font-size: 0.85rem;
|
100
|
+
margin-top: 0.25rem;
|
101
|
+
}
|
@@ -0,0 +1,122 @@
|
|
1
|
+
// Tables
|
2
|
+
|
3
|
+
// Borderless
|
4
|
+
|
5
|
+
table {
|
6
|
+
max-width: 100%;
|
7
|
+
width: 100%;
|
8
|
+
border-spacing: 0; /* 1 */
|
9
|
+
border-collapse: collapse; /* 1 */
|
10
|
+
empty-cells: show;
|
11
|
+
font-size: 0.9rem;
|
12
|
+
word-break: break-word;
|
13
|
+
th,
|
14
|
+
tfoot td {
|
15
|
+
color: $black;
|
16
|
+
text-align: left;
|
17
|
+
font-weight: bold;
|
18
|
+
}
|
19
|
+
thead th,
|
20
|
+
tfoot td {
|
21
|
+
background-color: $lighterGray;
|
22
|
+
}
|
23
|
+
thead th {
|
24
|
+
color: $darkestGray;
|
25
|
+
font-size: 0.9rem;
|
26
|
+
font-weight: 600;
|
27
|
+
word-break: normal;
|
28
|
+
}
|
29
|
+
th,
|
30
|
+
td {
|
31
|
+
overflow: visible;
|
32
|
+
padding: 1rem;
|
33
|
+
vertical-align: top;
|
34
|
+
}
|
35
|
+
&.condensed {
|
36
|
+
th, td {
|
37
|
+
padding: 0.5rem;
|
38
|
+
}
|
39
|
+
}
|
40
|
+
|
41
|
+
&.vertical_middle {
|
42
|
+
th, td {
|
43
|
+
vertical-align: middle;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
th.sortable a {
|
47
|
+
color: $darkestGray;
|
48
|
+
i {
|
49
|
+
color: $darkerGray;
|
50
|
+
margin-left: 0.25rem;
|
51
|
+
font-size: 1rem;
|
52
|
+
}
|
53
|
+
&:hover {
|
54
|
+
text-decoration: none;
|
55
|
+
}
|
56
|
+
}
|
57
|
+
|
58
|
+
/* Outer border only */
|
59
|
+
&.border {
|
60
|
+
border: 1px solid $lightGray;
|
61
|
+
}
|
62
|
+
|
63
|
+
/* Borders for rows & columns */
|
64
|
+
&.border_all {
|
65
|
+
th, td {
|
66
|
+
border-top: 1px solid $lightGray;
|
67
|
+
border-left: 1px solid $lightGray;
|
68
|
+
}
|
69
|
+
}
|
70
|
+
|
71
|
+
/* Border for rows only */
|
72
|
+
&.border_rows {
|
73
|
+
th, td {
|
74
|
+
border-top: 1px solid $lightGray;
|
75
|
+
}
|
76
|
+
/* Add bottom border to last row in the table */
|
77
|
+
tr:last-child td {
|
78
|
+
border-bottom: 1px solid $lightGray;
|
79
|
+
}
|
80
|
+
}
|
81
|
+
|
82
|
+
/* Border for columns only */
|
83
|
+
&.border_cols {
|
84
|
+
th, td {
|
85
|
+
border-left: 1px solid $lightGray;
|
86
|
+
}
|
87
|
+
tr th,
|
88
|
+
tr td {
|
89
|
+
&:first-child {
|
90
|
+
border-left: 0;
|
91
|
+
}
|
92
|
+
}
|
93
|
+
}
|
94
|
+
/* Remove top border to avoid double border on .border tables */
|
95
|
+
&.border {
|
96
|
+
&.border-all,
|
97
|
+
&.border-rows {
|
98
|
+
thead:first-child tr:first-child {
|
99
|
+
th, td {
|
100
|
+
border-top: 0;
|
101
|
+
}
|
102
|
+
}
|
103
|
+
}
|
104
|
+
}
|
105
|
+
&.border-all {
|
106
|
+
tr th,
|
107
|
+
tr td {
|
108
|
+
&:first-child {
|
109
|
+
border-left: 0;
|
110
|
+
}
|
111
|
+
}
|
112
|
+
tr:first-child,
|
113
|
+
thead:first-child tr:first-child {
|
114
|
+
th {
|
115
|
+
border-left: 0;
|
116
|
+
}
|
117
|
+
}
|
118
|
+
}
|
119
|
+
&.stripes tbody > tr:nth-child(even) {
|
120
|
+
background-color: $lightestGray;
|
121
|
+
}
|
122
|
+
}
|
@@ -0,0 +1,87 @@
|
|
1
|
+
// Bootstrap tooltips
|
2
|
+
|
3
|
+
.tooltip {
|
4
|
+
position: absolute;
|
5
|
+
z-index: 1030;
|
6
|
+
display: block;
|
7
|
+
font-size: 0.9rem;
|
8
|
+
line-height: 1.6;
|
9
|
+
opacity: 0;
|
10
|
+
visibility: visible;
|
11
|
+
min-width: 40px;
|
12
|
+
transition: transform 0.25s $ease_out_back, opacity 120ms ease-out;
|
13
|
+
&.top, &.bottom {
|
14
|
+
padding: 5px 0;
|
15
|
+
}
|
16
|
+
&.right, &.left {
|
17
|
+
padding: 0 5px;
|
18
|
+
}
|
19
|
+
&.top {
|
20
|
+
margin-top: -3px;
|
21
|
+
transform: translateY(5px) translateZ(0);
|
22
|
+
}
|
23
|
+
&.right {
|
24
|
+
margin-left: 3px;
|
25
|
+
transform: translateX(-5px) translateZ(0);
|
26
|
+
}
|
27
|
+
&.bottom {
|
28
|
+
margin-top: 3px;
|
29
|
+
transform: translateY(-5px) translateZ(0);
|
30
|
+
}
|
31
|
+
&.left {
|
32
|
+
margin-left: -3px;
|
33
|
+
transform: translateX(5px) translateZ(0);
|
34
|
+
}
|
35
|
+
&.in {
|
36
|
+
opacity: 0.9;
|
37
|
+
transform: translate(0,0);
|
38
|
+
}
|
39
|
+
}
|
40
|
+
|
41
|
+
.tooltip-inner {
|
42
|
+
max-width: 200px;
|
43
|
+
padding: 0.25rem 0.5rem;
|
44
|
+
color: #ffffff;
|
45
|
+
text-align: center;
|
46
|
+
text-decoration: none;
|
47
|
+
background-color: #000;
|
48
|
+
border-radius: $radius;
|
49
|
+
}
|
50
|
+
|
51
|
+
.tooltip-arrow {
|
52
|
+
position: absolute;
|
53
|
+
width: 0;
|
54
|
+
height: 0;
|
55
|
+
border-color: transparent;
|
56
|
+
border-style: solid;
|
57
|
+
.tooltip.top &,
|
58
|
+
.tooltip.bottom & {
|
59
|
+
left: 50%;
|
60
|
+
margin-left: -5px;
|
61
|
+
}
|
62
|
+
.tooltip.right &,
|
63
|
+
.tooltip.left & {
|
64
|
+
top: 50%;
|
65
|
+
margin-top: -5px;
|
66
|
+
}
|
67
|
+
.tooltip.top & {
|
68
|
+
bottom: 0;
|
69
|
+
border-top-color: #000;
|
70
|
+
border-width: 5px 5px 0;
|
71
|
+
}
|
72
|
+
.tooltip.right & {
|
73
|
+
left: 0;
|
74
|
+
border-right-color: #000;
|
75
|
+
border-width: 5px 5px 5px 0;
|
76
|
+
}
|
77
|
+
.tooltip.left & {
|
78
|
+
right: 0;
|
79
|
+
border-left-color: #000;
|
80
|
+
border-width: 5px 0 5px 5px;
|
81
|
+
}
|
82
|
+
.tooltip.bottom & {
|
83
|
+
top: 0;
|
84
|
+
border-bottom-color: #000;
|
85
|
+
border-width: 0 5px 5px;
|
86
|
+
}
|
87
|
+
}
|
@@ -0,0 +1,158 @@
|
|
1
|
+
/* ================================================================== *
|
2
|
+
Typography ($typography)
|
3
|
+
|
4
|
+
Modular scale: 12px @ 1:1.333 (perfect fourth)
|
5
|
+
Important number: 20px (maximum <html> `font-size`)
|
6
|
+
http://modularscale.com/scale/?px1=12&px2=20&ra1=1.333&ra2=0
|
7
|
+
\* ================================================================== */
|
8
|
+
|
9
|
+
html {
|
10
|
+
font-size: 75%;
|
11
|
+
}
|
12
|
+
/* 12px */
|
13
|
+
@media only screen and (min-width: 320px) {
|
14
|
+
html {
|
15
|
+
font-size: 75%;
|
16
|
+
}
|
17
|
+
}
|
18
|
+
/* 13px */
|
19
|
+
@media only screen and (min-width: 480px) {
|
20
|
+
html {
|
21
|
+
font-size: 81.25%;
|
22
|
+
}
|
23
|
+
}
|
24
|
+
/* 14px */
|
25
|
+
@media only screen and (min-width: 640px) {
|
26
|
+
html {
|
27
|
+
font-size: 87.5%;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
/* 16px */
|
31
|
+
/**
|
32
|
+
* 1. Remove default `margin`
|
33
|
+
* 2. Inherits percentage declared on above <html> as root `font-size`
|
34
|
+
* 3. Unitless `line-height`, which acts as multiple of root `font-size`
|
35
|
+
*/
|
36
|
+
body {
|
37
|
+
margin: 0; /* 1 */
|
38
|
+
color: $bodyFontColor;
|
39
|
+
font-size: 1rem; /* 2 */
|
40
|
+
font-family: 'Open Sans', "Helvetica Neue", Arial, sans-serif;
|
41
|
+
line-height: 1.5; /* 3 */
|
42
|
+
}
|
43
|
+
/* Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome */
|
44
|
+
b,
|
45
|
+
strong {
|
46
|
+
font-weight: 600;
|
47
|
+
}
|
48
|
+
|
49
|
+
blockquote,
|
50
|
+
dl,
|
51
|
+
figure,
|
52
|
+
hr,
|
53
|
+
menu,
|
54
|
+
ol,
|
55
|
+
p,
|
56
|
+
pre,
|
57
|
+
summary,
|
58
|
+
table,
|
59
|
+
ul {
|
60
|
+
margin: 0 0 1rem;
|
61
|
+
}
|
62
|
+
|
63
|
+
dl {
|
64
|
+
dt {
|
65
|
+
color: $black;
|
66
|
+
font-weight: 700;
|
67
|
+
}
|
68
|
+
|
69
|
+
dd {
|
70
|
+
margin: 0 0 1rem;
|
71
|
+
}
|
72
|
+
}
|
73
|
+
|
74
|
+
em,
|
75
|
+
i,
|
76
|
+
cite {
|
77
|
+
font-style: italic;
|
78
|
+
}
|
79
|
+
|
80
|
+
/* NOTE: Use `text-rendering` with caution - http://cbrac.co/SJt8p1 */
|
81
|
+
h1,
|
82
|
+
h2,
|
83
|
+
h3,
|
84
|
+
h4,
|
85
|
+
h5,
|
86
|
+
h6 {
|
87
|
+
margin: 0 0 0.75rem;
|
88
|
+
color: $black;
|
89
|
+
font-weight: 600;
|
90
|
+
line-height: 1.333;
|
91
|
+
text-rendering: optimizeLegibility;
|
92
|
+
}
|
93
|
+
|
94
|
+
h1 {
|
95
|
+
font-size: 2rem;
|
96
|
+
}
|
97
|
+
|
98
|
+
h2 {
|
99
|
+
font-size: 1.6rem;
|
100
|
+
}
|
101
|
+
|
102
|
+
h3 {
|
103
|
+
font-size: 1.4rem;
|
104
|
+
}
|
105
|
+
|
106
|
+
h4 {
|
107
|
+
font-size: 1.2rem;
|
108
|
+
}
|
109
|
+
|
110
|
+
h5 {
|
111
|
+
font-size: 1rem;
|
112
|
+
}
|
113
|
+
|
114
|
+
h6 {
|
115
|
+
font-size: 0.75rem;
|
116
|
+
}
|
117
|
+
|
118
|
+
/* Address differences between Firefox and other browsers */
|
119
|
+
hr {
|
120
|
+
-webkit-box-sizing: content-box;
|
121
|
+
-moz-box-sizing: content-box;
|
122
|
+
box-sizing: content-box;
|
123
|
+
height: 0;
|
124
|
+
border: 0;
|
125
|
+
border-bottom: 1px solid $lightGray;
|
126
|
+
}
|
127
|
+
|
128
|
+
/* 1. Address inconsistent and variable `font-size` in all browsers */
|
129
|
+
small {
|
130
|
+
display: inline-block;
|
131
|
+
font-size: 87.5%; /* 1 */
|
132
|
+
line-height: 1.333;
|
133
|
+
}
|
134
|
+
|
135
|
+
/* Prevent <sub> and <sup> affecting `line-height` in all browsers */
|
136
|
+
sub,
|
137
|
+
sup {
|
138
|
+
position: relative;
|
139
|
+
vertical-align: baseline;
|
140
|
+
font-size: 75%;
|
141
|
+
line-height: 0;
|
142
|
+
}
|
143
|
+
|
144
|
+
sup {
|
145
|
+
top: -0.5em;
|
146
|
+
}
|
147
|
+
|
148
|
+
sub {
|
149
|
+
bottom: -0.25em;
|
150
|
+
}
|
151
|
+
|
152
|
+
.caps {
|
153
|
+
font-weight: 600;
|
154
|
+
text-transform: uppercase;
|
155
|
+
color: $darkerGray;
|
156
|
+
font-size: 0.96rem;
|
157
|
+
letter-spacing: 0.06rem;
|
158
|
+
}
|