codeclimate-styles 0.1.0

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 (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
+