codeclimate-styles 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +4 -0
  3. data/Rakefile +1 -0
  4. data/assets/images/cc/styles/icons/add_collaborator_linear.svg +1 -0
  5. data/assets/images/cc/styles/icons/add_collaborator_solid.svg +1 -0
  6. data/assets/images/cc/styles/icons/add_linear.svg +1 -0
  7. data/assets/images/cc/styles/icons/add_solid.svg +1 -0
  8. data/assets/images/cc/styles/icons/alert_solid.svg +1 -0
  9. data/assets/images/cc/styles/icons/arrow_linear.svg +1 -0
  10. data/assets/images/cc/styles/icons/arrow_solid.svg +1 -0
  11. data/assets/images/cc/styles/icons/badge_linear.svg +1 -0
  12. data/assets/images/cc/styles/icons/badge_solid.svg +1 -0
  13. data/assets/images/cc/styles/icons/branch_solid.svg +1 -0
  14. data/assets/images/cc/styles/icons/checkmark.svg +1 -0
  15. data/assets/images/cc/styles/icons/code_badge.svg +1 -0
  16. data/assets/images/cc/styles/icons/docs_linear.svg +1 -0
  17. data/assets/images/cc/styles/icons/docs_solid.svg +1 -0
  18. data/assets/images/cc/styles/icons/error.svg +1 -0
  19. data/assets/images/cc/styles/icons/eye_disabled.svg +1 -0
  20. data/assets/images/cc/styles/icons/eye_enabled.svg +1 -0
  21. data/assets/images/cc/styles/icons/file_linear.svg +1 -0
  22. data/assets/images/cc/styles/icons/files_linear.svg +1 -0
  23. data/assets/images/cc/styles/icons/files_solid.svg +1 -0
  24. data/assets/images/cc/styles/icons/folder_linear.svg +1 -0
  25. data/assets/images/cc/styles/icons/folder_solid.svg +1 -0
  26. data/assets/images/cc/styles/icons/hourglass_badge.svg +1 -0
  27. data/assets/images/cc/styles/icons/info_linear.svg +1 -0
  28. data/assets/images/cc/styles/icons/info_solid.svg +1 -0
  29. data/assets/images/cc/styles/icons/link_arrow.svg +1 -0
  30. data/assets/images/cc/styles/icons/lock_linear.svg +1 -0
  31. data/assets/images/cc/styles/icons/lock_solid.svg +1 -0
  32. data/assets/images/cc/styles/icons/logout_linear.svg +1 -0
  33. data/assets/images/cc/styles/icons/new_alert.svg +1 -0
  34. data/assets/images/cc/styles/icons/nubbin_arrow.svg +1 -0
  35. data/assets/images/cc/styles/icons/post_entry.svg +1 -0
  36. data/assets/images/cc/styles/icons/post_entry_unread.svg +1 -0
  37. data/assets/images/cc/styles/icons/search_linear.svg +1 -0
  38. data/assets/images/cc/styles/icons/search_solid.svg +1 -0
  39. data/assets/images/cc/styles/icons/settings_linear.svg +1 -0
  40. data/assets/images/cc/styles/icons/settings_solid.svg +1 -0
  41. data/assets/images/cc/styles/icons/small_dismiss_x.svg +1 -0
  42. data/assets/images/cc/styles/icons/star_linear.svg +1 -0
  43. data/assets/images/cc/styles/icons/star_solid.svg +1 -0
  44. data/assets/images/cc/styles/icons/sucess.svg +1 -0
  45. data/assets/images/cc/styles/icons/sync.svg +1 -0
  46. data/assets/images/cc/styles/icons/ticket_linear.svg +1 -0
  47. data/assets/images/cc/styles/icons/trial_icon.svg +1 -0
  48. data/assets/images/cc/styles/icons/user_settings_linear.svg +1 -0
  49. data/assets/images/cc/styles/logo/ff_logo_white.svg +1 -0
  50. data/assets/images/cc/styles/logo/logo.svg +1 -0
  51. data/assets/images/cc/styles/logo/logo_with_wordmark.svg +1 -0
  52. data/assets/javascripts/cc/styles/grid_overlay.js +151 -0
  53. data/assets/stylesheets/cc/_styles.scss +5 -0
  54. data/assets/stylesheets/cc/styles/_colors.scss +75 -0
  55. data/assets/stylesheets/cc/styles/_mixins.scss +2 -0
  56. data/assets/stylesheets/cc/styles/_modules.scss +9 -0
  57. data/assets/stylesheets/cc/styles/mixins/_ff_mask_image.scss +9 -0
  58. data/assets/stylesheets/cc/styles/mixins/_transitions.scss +7 -0
  59. data/assets/stylesheets/cc/styles/modules/_buttons.scss +186 -0
  60. data/assets/stylesheets/cc/styles/modules/_code.scss +221 -0
  61. data/assets/stylesheets/cc/styles/modules/_forms.scss +246 -0
  62. data/assets/stylesheets/cc/styles/modules/_layout.scss +237 -0
  63. data/assets/stylesheets/cc/styles/modules/_lists.scss +178 -0
  64. data/assets/stylesheets/cc/styles/modules/_misc.scss +820 -0
  65. data/assets/stylesheets/cc/styles/modules/_tabs.scss +80 -0
  66. data/assets/stylesheets/cc/styles/modules/_typography.scss +220 -0
  67. data/assets/stylesheets/cc/styles/modules/_util.scss +27 -0
  68. data/assets/stylesheets/vendor/reset.scss +2 -0
  69. data/codeclimate-styles.gemspec +18 -0
  70. data/lib/cc/styles/engine.rb +18 -0
  71. data/lib/cc/styles/version.rb +5 -0
  72. data/lib/cc/styles.rb +13 -0
  73. data/lib/codeclimate-styles.rb +3 -0
  74. metadata +116 -0
@@ -0,0 +1,237 @@
1
+ .container {
2
+ margin: 0 auto;
3
+ max-width: 1050px;
4
+ position: relative;
5
+ }
6
+
7
+ /*doc
8
+ ---
9
+ title: Table
10
+ name: table
11
+ category: layout
12
+ ---
13
+
14
+ ```slim_example
15
+ table.table
16
+ thead
17
+ tr
18
+ td Name
19
+ td Code
20
+ tbody
21
+ tr
22
+ td foo.rb
23
+ td B
24
+ ```
25
+ */
26
+
27
+ .table {
28
+ margin-bottom: 48px;
29
+ width: 100%;
30
+
31
+ thead td {
32
+ background: $grayscale-pearl;
33
+ border-bottom: 1px solid darken($grayscale-pearl, 1%);
34
+ color: $grayscale-storm;
35
+ font-size: 12px;
36
+ letter-spacing: .07em;
37
+ padding: 13px 18px;
38
+ text-transform: uppercase;
39
+ }
40
+
41
+ thead a {
42
+ color: $grayscale-storm;
43
+
44
+ &:hover {
45
+ color: $grayscale-deep;
46
+ }
47
+ }
48
+
49
+ tbody td {
50
+ border-bottom: 1px solid darken($grayscale-pearl, 1%);
51
+ color: $grayscale-storm;
52
+ font-size: 15px;
53
+ padding: 18px;
54
+ }
55
+
56
+ td {
57
+ vertical-align: middle;
58
+ }
59
+
60
+ a {
61
+ color: $sky-dark;
62
+ }
63
+
64
+ a:hover {
65
+ color: $sky-light;
66
+ }
67
+
68
+ .active a {
69
+ color: $grayscale-deep;
70
+ }
71
+ }
72
+
73
+ .table--sortable {
74
+
75
+ .asc a,
76
+ .desc a {
77
+ display: inline-block;
78
+ padding-right: 14px;
79
+ position: relative;
80
+
81
+ &::before {
82
+ @include ff-mask-image(image-url("cc/styles/icons/nubbin_arrow.svg"));
83
+ background-color: $grayscale-deep;
84
+ bottom: 0;
85
+ content: "";
86
+ mask-position: right center;
87
+ mask-repeat: no-repeat;
88
+ mask-size: 100% auto;
89
+ position: absolute;
90
+ right: 0;
91
+ top: 0;
92
+ width: 7px;
93
+ }
94
+ }
95
+
96
+ .asc a {
97
+ &::before {
98
+ transform: rotate(180deg);
99
+ }
100
+ }
101
+ }
102
+
103
+ /*doc
104
+ ---
105
+ title: Columns
106
+ name: columns
107
+ category: layout
108
+ ---
109
+
110
+ Creates a 12-column grid using
111
+ [flexbox](https://css-tricks.com/snippets/css/a-guide-to-flexbox/). Use the
112
+ `size` modifiers to specify column size (where the width is n/16th of the
113
+ container). Use the `offset` modifiers to specify a left margin (where the
114
+ margin is n/16th of the container).
115
+
116
+ ```slim_example
117
+ .cols
118
+ .col.col--size-2 Foo
119
+ .col.col--size-8.col--offset-2 Bar
120
+ ```
121
+
122
+ The bare `.cols` is best for top-level page structure where wrapping is not
123
+ needed. For wrapping columns, use `.cols--wrap`.
124
+
125
+ For percentage-based columns that aren't strictly aligned to the page layout
126
+ grid, use `.cols--fluid`.
127
+ */
128
+
129
+ $columns: 12;
130
+ $col-width: 60px;
131
+ $gutter: 30px;
132
+
133
+ .cols {
134
+ display: flex;
135
+ flex-direction: row;
136
+ }
137
+
138
+ .col {
139
+ box-sizing: border-box;
140
+ flex: 0 0 auto;
141
+ margin-left: $gutter;
142
+
143
+ &:first-child {
144
+ margin-left: 0;
145
+ }
146
+ }
147
+
148
+ .col--pad-gutter-l {
149
+ padding-left: $gutter;
150
+ }
151
+
152
+ .cols--wrap {
153
+ $half-gutter: $gutter / 2;
154
+
155
+ flex-wrap: wrap;
156
+ margin: 0 (0 - $half-gutter);
157
+
158
+ > .col {
159
+ margin: 0 0 $gutter;
160
+ padding: 0 $half-gutter;
161
+ }
162
+ }
163
+
164
+ .cols--fluid {
165
+ $half-gutter: .6rem;
166
+
167
+ margin: 0 (0 - $half-gutter);
168
+
169
+ > .col {
170
+ margin: 0 0 $half-gutter;
171
+ padding: 0 $half-gutter;
172
+ }
173
+ }
174
+
175
+ @for $i from 1 through $columns {
176
+ $strict-width: ($col-width * $i) + ($gutter * ($i - 1));
177
+ $percent-width: (100% / $columns) * $i;
178
+
179
+ .col--size-#{$i} {
180
+ flex-basis: $strict-width;
181
+ max-width: $strict-width;
182
+ }
183
+
184
+ .col--offset-#{$i} {
185
+ margin-left: (($gutter + $col-width) * $i) + $gutter;
186
+ }
187
+
188
+ .cols--wrap {
189
+ > .col--size-#{$i} {
190
+ flex-basis: $strict-width + $gutter;
191
+ max-width: $strict-width + $gutter;
192
+ }
193
+
194
+ > .col--offset-#{$i} {
195
+ margin-left: $strict-width + ($gutter / 2);
196
+ }
197
+ }
198
+
199
+ .cols--fluid {
200
+ > .col--size-#{$i} {
201
+ flex-basis: $percent-width;
202
+ max-width: $percent-width;
203
+ }
204
+
205
+ > .col--offset-#{$i} {
206
+ margin-left: $percent-width;
207
+ }
208
+ }
209
+ }
210
+
211
+ /*doc
212
+ ---
213
+ title: Expanding columns
214
+ name: columns_expand
215
+ category: layout
216
+ ---
217
+
218
+ For cases where some content should expand to fill and other content should not.
219
+
220
+ ```slim_example
221
+ .cols.cols--expand
222
+ .col Left
223
+ .col.col--shrink Right
224
+ ```
225
+ */
226
+ .cols--expand {
227
+ justify-content: space-between;
228
+
229
+ .col {
230
+ flex: 1 0 auto;
231
+ }
232
+
233
+ .col--shrink {
234
+ flex: 0 0 auto;
235
+ }
236
+ }
237
+
@@ -0,0 +1,178 @@
1
+ /*doc
2
+ ---
3
+ title: Bulleted list
4
+ name: bulleted-list
5
+ category: lists
6
+ ---
7
+
8
+ ```slim_example
9
+ ul.list--bulleted
10
+ li Item 1
11
+ li item 2
12
+ ```
13
+ */
14
+ .list--bulleted {
15
+ list-style: disc outside;
16
+ margin-left: 0;
17
+ padding-left: 20px;
18
+
19
+ li {
20
+ margin-bottom: 10px;
21
+ }
22
+ }
23
+
24
+ /*doc
25
+ ---
26
+ title: Filter Lists
27
+ name: filter
28
+ category: misc
29
+ ---
30
+
31
+ ```slim_example
32
+ ul.filter
33
+ li.active
34
+ a href="#" JavaScript
35
+ li
36
+ a href="#" Ruby
37
+ li
38
+ a href="#" PHP
39
+ li
40
+ a href="#" Python
41
+ ```
42
+
43
+ ```slim_example
44
+ ul.filter.filter--multiselect
45
+ li.checkbox
46
+ input type="checkbox" id="javascript"
47
+ label(for="javascript") JavaScript
48
+ li.checkbox
49
+ input type="checkbox" id="ruby"
50
+ label(for="ruby") Ruby
51
+ li.checkbox
52
+ input type="checkbox" id="php"
53
+ label(for="php") PHP
54
+ li.checkbox
55
+ input type="checkbox" id="python"
56
+ label(for="python") Python
57
+ ```
58
+ */
59
+
60
+ $filter-shadow-color: rgba(0, 0, 0, .06);
61
+
62
+ .filter {
63
+ border: 0;
64
+ list-style: none;
65
+ margin: 0 0 24px -12px;
66
+ padding: 0;
67
+
68
+ > li {
69
+ font-size: 14px;
70
+ line-height: 1;
71
+
72
+ > a {
73
+ border-radius: 3px;
74
+ color: $green;
75
+ display: block;
76
+ padding: 6px 12px;
77
+ text-decoration: none;
78
+ }
79
+
80
+ > a:hover {
81
+ color: $green-dark;
82
+ }
83
+
84
+ &.active > a {
85
+ background-color: $green;
86
+ box-shadow: 0 1px 2px $filter-shadow-color;
87
+ color: $white;
88
+ }
89
+ }
90
+
91
+ }
92
+
93
+ .filter--multiselect {
94
+ > li {
95
+ display: block;
96
+ margin: 10px 13px;
97
+ }
98
+
99
+ label {
100
+ color: $green;
101
+ display: block;
102
+ padding-left: 22px;
103
+
104
+ &:hover {
105
+ color: $green-dark;
106
+ }
107
+ }
108
+ }
109
+
110
+ /*doc
111
+ ---
112
+ title: Icon Menu
113
+ name: icon-menu
114
+ category: misc
115
+ ---
116
+
117
+ ```slim_example
118
+ ul.icon-menu
119
+ li.icon-menu__item--icon-add: a(href="index.html") Home
120
+ li.icon-menu__item--icon-add-collaborator: a(href="about.html") About
121
+ ```
122
+ */
123
+
124
+ .icon-menu {
125
+ li {
126
+ margin-bottom: 6px;
127
+ }
128
+
129
+ a {
130
+ color: $grayscale-smoke;
131
+ display: inline-block;
132
+ font-size: 13px;
133
+ line-height: 17px;
134
+ padding-left: 26px;
135
+ position: relative;
136
+
137
+ &:hover {
138
+ color: $green;
139
+ }
140
+
141
+ &::before {
142
+ background-color: $grayscale-smoke;
143
+ bottom: 0;
144
+ content: "";
145
+ left: 0;
146
+ mask-position: center left;
147
+ mask-repeat: no-repeat;
148
+ mask-size: auto 100%;
149
+ position: absolute;
150
+ top: 0;
151
+ width: 20px;
152
+ }
153
+
154
+ &:hover::before {
155
+ background-color: $green;
156
+ }
157
+ }
158
+
159
+ }
160
+
161
+ .icon-menu__item--icon-add {
162
+ a::before {
163
+ @include ff-mask-image(image-url("cc/styles/icons/add_linear.svg"));
164
+ }
165
+ }
166
+
167
+ .icon-menu__item--icon-add-collaborator {
168
+ a::before {
169
+ @include ff-mask-image(image-url("cc/styles/icons/add_collaborator_linear.svg"));
170
+ }
171
+ }
172
+
173
+ .icon-menu__item--icon-settings {
174
+ a::before {
175
+ @include ff-mask-image(image-url("cc/styles/icons/settings_linear.svg"));
176
+ }
177
+ }
178
+