git-visualiser 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/bin/git_vis +19 -0
- data/lib/application/application.rb +82 -0
- data/lib/application/coffee_engine.rb +20 -0
- data/lib/application/images/ajax-loader.gif +0 -0
- data/lib/application/javascripts/branch_graph.coffee +424 -0
- data/lib/application/javascripts/commit_graph.coffee +442 -0
- data/lib/application/javascripts/common.coffee +50 -0
- data/lib/application/javascripts/d3.min.js +5 -0
- data/lib/application/javascripts/data_convert.coffee +56 -0
- data/lib/application/javascripts/jquery.min.js +6 -0
- data/lib/application/javascripts/moment.min.js +6 -0
- data/lib/application/javascripts/namespace.coffee +2 -0
- data/lib/application/sass_engine.rb +14 -0
- data/lib/application/stylesheets/scss/app.scss +172 -0
- data/lib/application/stylesheets/scss/flat_ui/_config.sass +16 -0
- data/lib/application/stylesheets/scss/flat_ui/_icon-font-24.sass +91 -0
- data/lib/application/stylesheets/scss/flat_ui/_icon-font.sass +91 -0
- data/lib/application/stylesheets/scss/flat_ui/_mixins.sass +96 -0
- data/lib/application/stylesheets/scss/flat_ui/_spaces.sass +129 -0
- data/lib/application/stylesheets/scss/flat_ui/flat-ui.sass +39 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_btn.sass +73 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_checkbox-and-radio.sass +86 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_demo.sass +228 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_footer.sass +57 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_input.sass +66 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_login.sass +95 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_navbar.sass +152 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_pager.sass +56 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_pagination.sass +75 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_palette.sass +88 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_progress.sass +29 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_select.sass +163 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_share.sass +34 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_tagsinput.sass +91 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_tile.sass +42 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_todo.sass +77 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_toggle.sass +85 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_tooltip.sass +45 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_type.sass +43 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_ui-slider.sass +44 -0
- data/lib/application/stylesheets/scss/flat_ui/modules/_video.sass +358 -0
- data/lib/application/views/authors_list.haml +11 -0
- data/lib/application/views/index.haml +48 -0
- data/lib/application/visualisation.rb +156 -0
- metadata +87 -0
@@ -0,0 +1,57 @@
|
|
1
|
+
// Footer
|
2
|
+
footer
|
3
|
+
background-color: desaturate(scale-color($base, $lightness: 91%), 15%)
|
4
|
+
color: desaturate(scale-color($base, $lightness: 66%), 22%)
|
5
|
+
font-size: 15px
|
6
|
+
padding: 0
|
7
|
+
|
8
|
+
a
|
9
|
+
color: desaturate(scale-color($base, $lightness: 50%), 25%)
|
10
|
+
font-weight: 700
|
11
|
+
|
12
|
+
p
|
13
|
+
font-size: 15px
|
14
|
+
line-height: 20px
|
15
|
+
|
16
|
+
.footer-title
|
17
|
+
margin: 0 0 22px
|
18
|
+
padding-top: 21px
|
19
|
+
|
20
|
+
.footer-brand
|
21
|
+
display: block
|
22
|
+
margin-bottom: 26px
|
23
|
+
width: 220px
|
24
|
+
|
25
|
+
img
|
26
|
+
width: 216px
|
27
|
+
|
28
|
+
// Footer banner
|
29
|
+
.footer-banner
|
30
|
+
background-color: $firm
|
31
|
+
color: scale-color(desaturate($firm, 15%), $lightness: 80%)
|
32
|
+
margin-left: 42px
|
33
|
+
min-height: 286px
|
34
|
+
padding: 0 30px 30px
|
35
|
+
|
36
|
+
.footer-title
|
37
|
+
color: $inverse
|
38
|
+
|
39
|
+
a
|
40
|
+
color: scale-color(desaturate($firm, 15%), $lightness: 80%)
|
41
|
+
text-decoration: underline
|
42
|
+
&:hover
|
43
|
+
text-decoration: none
|
44
|
+
|
45
|
+
ul
|
46
|
+
list-style-type: none
|
47
|
+
margin: 0 0 26px
|
48
|
+
|
49
|
+
li
|
50
|
+
border-top: 1px solid scale-color($firm, $lightness: 4%)
|
51
|
+
line-height: 19px
|
52
|
+
padding: 6px 0
|
53
|
+
&:first-child
|
54
|
+
border-top: none
|
55
|
+
padding-top: 1px
|
56
|
+
|
57
|
+
|
@@ -0,0 +1,66 @@
|
|
1
|
+
=input-states($color)
|
2
|
+
border-color: $color
|
3
|
+
color: $color
|
4
|
+
+box-shadow(none)
|
5
|
+
&:focus
|
6
|
+
+box-shadow(none)
|
7
|
+
|
8
|
+
// Text fields
|
9
|
+
textarea,
|
10
|
+
input[type="text"],
|
11
|
+
input[type="password"],
|
12
|
+
input[type="datetime"],
|
13
|
+
input[type="datetime-local"],
|
14
|
+
input[type="date"],
|
15
|
+
input[type="month"],
|
16
|
+
input[type="time"],
|
17
|
+
input[type="week"],
|
18
|
+
input[type="number"],
|
19
|
+
input[type="email"],
|
20
|
+
input[type="url"],
|
21
|
+
input[type="search"],
|
22
|
+
input[type="tel"],
|
23
|
+
input[type="color"],
|
24
|
+
.uneditable-input
|
25
|
+
border: 2px solid scale-color($base, $lightness: 85%)
|
26
|
+
color: $base
|
27
|
+
font-family: $base-font-family
|
28
|
+
font-size: $base-font-size
|
29
|
+
padding: 8px 0 9px 10px
|
30
|
+
text-indent: 1px
|
31
|
+
+border-radius(6px)
|
32
|
+
+box-shadow(none)
|
33
|
+
+placeholder-color(desaturate(scale-color($base, $lightness: 60%), 15%))
|
34
|
+
|
35
|
+
&:focus
|
36
|
+
border-color: $firm
|
37
|
+
+box-shadow(none)
|
38
|
+
|
39
|
+
.control-group.error &
|
40
|
+
+input-states($danger)
|
41
|
+
|
42
|
+
.control-group.success &
|
43
|
+
+input-states($success)
|
44
|
+
|
45
|
+
.control-group.warning &
|
46
|
+
+input-states($warning)
|
47
|
+
|
48
|
+
.control-group.info &
|
49
|
+
+input-states($info)
|
50
|
+
|
51
|
+
// Disabled state -----------------
|
52
|
+
input[disabled],
|
53
|
+
input[readonly],
|
54
|
+
textarea[disabled],
|
55
|
+
textarea[readonly]
|
56
|
+
background-color: scale-color($gray, $lightness: 80%)
|
57
|
+
border-color: transparent
|
58
|
+
color: scale-color($gray, $lightness: 50%)
|
59
|
+
cursor: default
|
60
|
+
|
61
|
+
// Text field grids -----------------
|
62
|
+
input,
|
63
|
+
textarea,
|
64
|
+
.uneditable-input
|
65
|
+
width: 192px
|
66
|
+
|
@@ -0,0 +1,95 @@
|
|
1
|
+
$form-color: scale-color(desaturate($base, 15%), $lightness: 91%)
|
2
|
+
|
3
|
+
// Login screen
|
4
|
+
.login
|
5
|
+
background: url('../images/login/imac.png') 0 0 no-repeat
|
6
|
+
background-size: 940px 778px
|
7
|
+
color: $inverse
|
8
|
+
margin-bottom: 77px
|
9
|
+
padding: 38px 38px 267px
|
10
|
+
position: relative
|
11
|
+
|
12
|
+
.login-screen
|
13
|
+
background-color: $firm
|
14
|
+
min-height: 317px
|
15
|
+
padding: 123px 199px 33px 306px
|
16
|
+
|
17
|
+
.login-icon
|
18
|
+
left: 200px
|
19
|
+
position: absolute
|
20
|
+
top: 160px
|
21
|
+
width: 96px
|
22
|
+
|
23
|
+
> img
|
24
|
+
display: block
|
25
|
+
margin-bottom: 6px
|
26
|
+
width: 100%
|
27
|
+
|
28
|
+
> h4
|
29
|
+
font-size: 17px
|
30
|
+
font-weight: 200
|
31
|
+
line-height: 34px
|
32
|
+
opacity: .95
|
33
|
+
|
34
|
+
small
|
35
|
+
color: inherit
|
36
|
+
display: block
|
37
|
+
font-size: inherit
|
38
|
+
font-weight: 700
|
39
|
+
|
40
|
+
// Login form
|
41
|
+
.login-form
|
42
|
+
background-color: $form-color
|
43
|
+
border-radius: 6px
|
44
|
+
padding: 24px 23px 20px
|
45
|
+
position: relative
|
46
|
+
|
47
|
+
// Ear
|
48
|
+
&:before
|
49
|
+
content: ''
|
50
|
+
border-style: solid
|
51
|
+
border-width: 12px 12px 12px 0
|
52
|
+
border-color: transparent $form-color transparent transparent
|
53
|
+
height: 0px
|
54
|
+
position: absolute
|
55
|
+
left: -12px
|
56
|
+
top: 35px
|
57
|
+
width: 0
|
58
|
+
// Make corners smooth
|
59
|
+
-webkit-transform: rotate(360deg)
|
60
|
+
|
61
|
+
.control-group
|
62
|
+
margin-bottom: 6px
|
63
|
+
position: relative
|
64
|
+
|
65
|
+
.login-field
|
66
|
+
border-color: transparent
|
67
|
+
font-size: 17px
|
68
|
+
padding-bottom: 11px
|
69
|
+
padding-top: 11px
|
70
|
+
text-indent: 3px
|
71
|
+
width: 299px
|
72
|
+
&:focus
|
73
|
+
& + .login-field-icon
|
74
|
+
color: $firm
|
75
|
+
|
76
|
+
.login-field-icon
|
77
|
+
color: scale-color($gray, $lightness: 40%)
|
78
|
+
font-size: 16px
|
79
|
+
position: absolute
|
80
|
+
right: 13px
|
81
|
+
top: 14px
|
82
|
+
+transition(.25s)
|
83
|
+
|
84
|
+
.login-link
|
85
|
+
color: scale-color($gray, $lightness: 40%)
|
86
|
+
display: block
|
87
|
+
font-size: 13px
|
88
|
+
margin-top: 15px
|
89
|
+
text-align: center
|
90
|
+
|
91
|
+
// Serving 2x images
|
92
|
+
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 2)
|
93
|
+
.login
|
94
|
+
background-image: url('../images/login/imac-2x.png')
|
95
|
+
|
@@ -0,0 +1,152 @@
|
|
1
|
+
// Top navigation
|
2
|
+
.navbar
|
3
|
+
font-size: 18px
|
4
|
+
|
5
|
+
.brand
|
6
|
+
color: $firm
|
7
|
+
font-size: inherit
|
8
|
+
font-weight: 700
|
9
|
+
padding-bottom: 16px
|
10
|
+
padding-top: 15px
|
11
|
+
|
12
|
+
.nav
|
13
|
+
// First level nav
|
14
|
+
> li
|
15
|
+
&:hover
|
16
|
+
> ul
|
17
|
+
top: 100%
|
18
|
+
|
19
|
+
// Second level nav
|
20
|
+
> ul
|
21
|
+
padding-top: 13px
|
22
|
+
top: 80%
|
23
|
+
// IE treats transparent background as not hoverable area. Let's fix that.
|
24
|
+
background-color: #{$inverse}\9
|
25
|
+
// Dropdown triangle ear
|
26
|
+
+dropdown-arrow
|
27
|
+
|
28
|
+
// Third level nav
|
29
|
+
li
|
30
|
+
&:hover
|
31
|
+
ul
|
32
|
+
opacity: 1
|
33
|
+
-webkit-transform: scale(1, 1)
|
34
|
+
visibility: visible
|
35
|
+
display: block\9
|
36
|
+
ul
|
37
|
+
left: 100%
|
38
|
+
|
39
|
+
// First level level
|
40
|
+
> a
|
41
|
+
padding: 14px 15px 17px
|
42
|
+
&:hover
|
43
|
+
color: $firm
|
44
|
+
|
45
|
+
li
|
46
|
+
position: relative
|
47
|
+
|
48
|
+
&:hover
|
49
|
+
> ul
|
50
|
+
opacity: 1
|
51
|
+
z-index: 100
|
52
|
+
-webkit-transform: scale(1, 1)
|
53
|
+
visibility: visible
|
54
|
+
// Show on hover
|
55
|
+
display: block\9
|
56
|
+
|
57
|
+
// Sub menu
|
58
|
+
ul
|
59
|
+
border-radius: 4px
|
60
|
+
left: 15px
|
61
|
+
list-style-type: none
|
62
|
+
margin-left: 0
|
63
|
+
opacity: 0
|
64
|
+
position: absolute
|
65
|
+
top: 0
|
66
|
+
width: 234px
|
67
|
+
z-index: -100
|
68
|
+
// Trigger transform to hide nav completely without 'ghost' bug (when switching from :hover to initial)
|
69
|
+
-webkit-transform: scale(1, .99)
|
70
|
+
-webkit-transform-origin: 0 0
|
71
|
+
// Don't show it at all by default since IE doesn't get modern transitions
|
72
|
+
visibility: hidden
|
73
|
+
display: none\9
|
74
|
+
+transition(.3s ease-out)
|
75
|
+
|
76
|
+
// Deep level sub menu
|
77
|
+
ul
|
78
|
+
left: 95%
|
79
|
+
padding-left: 5px
|
80
|
+
|
81
|
+
// Sub menu item
|
82
|
+
li
|
83
|
+
background-color: $base
|
84
|
+
padding: 0 3px 3px
|
85
|
+
|
86
|
+
&:first-child
|
87
|
+
border-radius: 4px 4px 0 0
|
88
|
+
padding-top: 3px
|
89
|
+
|
90
|
+
&:last-child
|
91
|
+
border-radius: 0 0 4px 4px
|
92
|
+
|
93
|
+
&.active
|
94
|
+
> a, > a:hover
|
95
|
+
background-color: $firm
|
96
|
+
color: $inverse
|
97
|
+
|
98
|
+
// Sub menu link
|
99
|
+
a
|
100
|
+
border-radius: 2px
|
101
|
+
color: $inverse
|
102
|
+
display: block
|
103
|
+
font-size: 14px
|
104
|
+
padding: 6px 9px
|
105
|
+
text-decoration: none
|
106
|
+
&:hover
|
107
|
+
background-color: $firm
|
108
|
+
|
109
|
+
.navbar-inner
|
110
|
+
border: none
|
111
|
+
padding-left: 4px
|
112
|
+
padding-right: 4px
|
113
|
+
+border-radius(6px)
|
114
|
+
+drop-ie-gradient
|
115
|
+
|
116
|
+
// Inverse skin --------------------------
|
117
|
+
.navbar-inverse
|
118
|
+
.navbar-inner
|
119
|
+
background: $base
|
120
|
+
+drop-ie-gradient
|
121
|
+
|
122
|
+
.nav
|
123
|
+
> li > a
|
124
|
+
color: $inverse
|
125
|
+
|
126
|
+
.active > a
|
127
|
+
&, &:hover, &:focus
|
128
|
+
background-color: transparent
|
129
|
+
color: $firm
|
130
|
+
+box-shadow(none)
|
131
|
+
|
132
|
+
// Unread icon ---------------------------
|
133
|
+
.navbar-unread
|
134
|
+
background-color: $danger
|
135
|
+
border-radius: 30px
|
136
|
+
color: $inverse
|
137
|
+
display: none
|
138
|
+
font-size: 12px
|
139
|
+
font-weight: 500
|
140
|
+
line-height: 18px
|
141
|
+
min-width: 8px
|
142
|
+
padding: 0 5px
|
143
|
+
position: absolute
|
144
|
+
right: -7px
|
145
|
+
text-align: center
|
146
|
+
text-shadow: none
|
147
|
+
top: 8px
|
148
|
+
z-index: 10
|
149
|
+
|
150
|
+
.active &
|
151
|
+
display: block
|
152
|
+
|
@@ -0,0 +1,56 @@
|
|
1
|
+
// Pager module
|
2
|
+
$pager-padding: 9px 18px 10px
|
3
|
+
|
4
|
+
.pager
|
5
|
+
background-color: $base
|
6
|
+
border-radius: 6px
|
7
|
+
color: $inverse
|
8
|
+
font-size: 16px
|
9
|
+
font-weight: 700
|
10
|
+
+inline-block
|
11
|
+
|
12
|
+
li
|
13
|
+
&:first-child
|
14
|
+
> a, > span
|
15
|
+
border-left: none
|
16
|
+
padding-left: 20px
|
17
|
+
+border-radius(6px 0 0 6px)
|
18
|
+
|
19
|
+
img
|
20
|
+
margin-left: 0
|
21
|
+
margin-right: 13px
|
22
|
+
margin-left: 0\9
|
23
|
+
margin-right: 9px\9
|
24
|
+
|
25
|
+
&.pager-center
|
26
|
+
padding: $pager-padding
|
27
|
+
padding-left: 0
|
28
|
+
padding-right: 0
|
29
|
+
+inline-block
|
30
|
+
|
31
|
+
&.previous, &.next
|
32
|
+
img
|
33
|
+
// For retina 2x image that is scaled down to 14px for all common screens
|
34
|
+
height: 14px
|
35
|
+
margin: -1px 0 0 13px
|
36
|
+
margin-left: 9px\9
|
37
|
+
vertical-align: middle
|
38
|
+
|
39
|
+
|
40
|
+
> a, > span
|
41
|
+
background: none
|
42
|
+
border: none
|
43
|
+
border-left: 2px solid scale-color($base, $lightness: -15%)
|
44
|
+
color: $inverse
|
45
|
+
padding: $pager-padding
|
46
|
+
padding-left: 7px
|
47
|
+
text-decoration: none
|
48
|
+
white-space: nowrap
|
49
|
+
+border-radius(0 6px 6px 0)
|
50
|
+
|
51
|
+
&:hover, &:focus
|
52
|
+
background-color: scale-color($base, $lightness: 20%)
|
53
|
+
|
54
|
+
&:active
|
55
|
+
background-color: scale-color($base, $lightness: -15%)
|
56
|
+
|
@@ -0,0 +1,75 @@
|
|
1
|
+
// Pagination (very similar to Pager)
|
2
|
+
$pagination-color: desaturate(lighten($base, 57.5%), 17%)
|
3
|
+
|
4
|
+
.pagination
|
5
|
+
ul
|
6
|
+
background: $pagination-color
|
7
|
+
+border-radius(6px)
|
8
|
+
+box-shadow(none)
|
9
|
+
|
10
|
+
> li
|
11
|
+
&:first-child
|
12
|
+
+border-radius(6px 0 0 6px)
|
13
|
+
|
14
|
+
&:last-child
|
15
|
+
+border-radius(0 6px 6px 0)
|
16
|
+
|
17
|
+
&.previous,
|
18
|
+
&.next
|
19
|
+
> a, > span
|
20
|
+
background: transparent
|
21
|
+
border: none
|
22
|
+
border-right: 2px solid $inverse !important
|
23
|
+
margin: 0 9px 0 0
|
24
|
+
padding: 11px 17px 12px 17px
|
25
|
+
+border-radius(6px 0 0 6px)
|
26
|
+
+box-shadow(none !important)
|
27
|
+
|
28
|
+
&.next
|
29
|
+
> a, > span
|
30
|
+
border-left: 2px solid $inverse !important
|
31
|
+
margin-left: 9px
|
32
|
+
margin-right: 0
|
33
|
+
+border-radius(0 6px 6px 0)
|
34
|
+
|
35
|
+
&.active
|
36
|
+
> a, > span
|
37
|
+
background-color: $inverse
|
38
|
+
border-color: $inverse
|
39
|
+
border-width: 2px
|
40
|
+
color: $pagination-color
|
41
|
+
margin: 10px 5px 9px
|
42
|
+
|
43
|
+
&:hover, &:focus
|
44
|
+
background-color: $inverse
|
45
|
+
border-color: $inverse
|
46
|
+
color: $pagination-color
|
47
|
+
+box-shadow(none)
|
48
|
+
|
49
|
+
> a, > span
|
50
|
+
background: $inverse
|
51
|
+
border: 5px solid $pagination-color
|
52
|
+
border-radius: 50px
|
53
|
+
color: $inverse
|
54
|
+
line-height: 16px
|
55
|
+
margin: 7px 2px 6px
|
56
|
+
padding: 0 4px
|
57
|
+
+transition((background .2s ease-out, border-color 0s ease-out, color .2s ease-out))
|
58
|
+
|
59
|
+
&:hover, :focus
|
60
|
+
background-color: $firm
|
61
|
+
border-color: $firm
|
62
|
+
color: $inverse
|
63
|
+
+transition((background .2s ease-out, border-color .2s ease-out, color .2s ease-out))
|
64
|
+
|
65
|
+
&:active
|
66
|
+
background-color: scale-color($firm, $lightness: -15%)
|
67
|
+
border-color: scale-color($firm, $lightness: -15%)
|
68
|
+
|
69
|
+
img
|
70
|
+
// For retina 2x image that is scaled down to 14px for all common screens
|
71
|
+
height: 14px
|
72
|
+
margin-top: -1px
|
73
|
+
vertical-align: middle
|
74
|
+
width: 13px
|
75
|
+
|