google-buttons-sass 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 (34) hide show
  1. data/LICENSE +14 -0
  2. data/README.md +91 -0
  3. data/lib/google-buttons-sass/compass_functions.rb +10 -0
  4. data/lib/google-buttons-sass/engine.rb +7 -0
  5. data/lib/google-buttons-sass/rails_functions.rb +14 -0
  6. data/lib/google-buttons-sass.rb +43 -0
  7. data/templates/project/manifest.rb +17 -0
  8. data/templates/project/styles.scss +3 -0
  9. data/vendor/assets/images/checkmark.png +0 -0
  10. data/vendor/assets/images/grey-disclosure-arrow-up-down.png +0 -0
  11. data/vendor/assets/javascripts/bootstrap-popover.js +98 -0
  12. data/vendor/assets/javascripts/google-buttons.js +3 -0
  13. data/vendor/assets/javascripts/google-select-dropdown.js +89 -0
  14. data/vendor/assets/javascripts/google-select.js +84 -0
  15. data/vendor/assets/stylesheets/alerts.scss +21 -0
  16. data/vendor/assets/stylesheets/bootstrap-mixins.scss +625 -0
  17. data/vendor/assets/stylesheets/breadcrumbs.scss +8 -0
  18. data/vendor/assets/stylesheets/button-groups.scss +124 -0
  19. data/vendor/assets/stylesheets/buttons.scss +396 -0
  20. data/vendor/assets/stylesheets/dropdowns.scss +95 -0
  21. data/vendor/assets/stylesheets/forms.scss +229 -0
  22. data/vendor/assets/stylesheets/google-buttons.scss +42 -0
  23. data/vendor/assets/stylesheets/mixins.scss +44 -0
  24. data/vendor/assets/stylesheets/navs.scss +76 -0
  25. data/vendor/assets/stylesheets/pager.scss +40 -0
  26. data/vendor/assets/stylesheets/pagination.scss +68 -0
  27. data/vendor/assets/stylesheets/popovers.scss +36 -0
  28. data/vendor/assets/stylesheets/progress-bars.scss +7 -0
  29. data/vendor/assets/stylesheets/scrollbars.scss +43 -0
  30. data/vendor/assets/stylesheets/sprites.scss +12 -0
  31. data/vendor/assets/stylesheets/tooltip.scss +10 -0
  32. data/vendor/assets/stylesheets/variables.scss +199 -0
  33. data/vendor/assets/stylesheets/wells.scss +17 -0
  34. metadata +127 -0
@@ -0,0 +1,229 @@
1
+ // Forms.less
2
+ // Base styles for various input types, form layouts, and states
3
+ // -------------------------------------------------------------
4
+
5
+
6
+ // Form controls
7
+ // -------------------------
8
+
9
+ // Shared size and type resets
10
+ select,
11
+ textarea,
12
+ input[type="text"],
13
+ input[type="password"],
14
+ input[type="datetime"],
15
+ input[type="datetime-local"],
16
+ input[type="date"],
17
+ input[type="month"],
18
+ input[type="time"],
19
+ input[type="week"],
20
+ input[type="number"],
21
+ input[type="email"],
22
+ input[type="url"],
23
+ input[type="search"],
24
+ input[type="tel"],
25
+ input[type="color"],
26
+ .uneditable-input {
27
+ padding: 4px 8px;
28
+ }
29
+
30
+ // Reset appearance properties for textual inputs and textarea
31
+ // Declare width for legacy (can't be on input[type=*] selectors or it's too specific)
32
+ .g-select,
33
+ input,
34
+ textarea {
35
+ width: 210px;
36
+ }
37
+ // Reset height since textareas have rows
38
+ textarea {
39
+ padding-right: 4px;
40
+ }
41
+ // Everything else
42
+ textarea,
43
+ input[type="text"],
44
+ input[type="password"],
45
+ input[type="datetime"],
46
+ input[type="datetime-local"],
47
+ input[type="date"],
48
+ input[type="month"],
49
+ input[type="time"],
50
+ input[type="week"],
51
+ input[type="number"],
52
+ input[type="email"],
53
+ input[type="url"],
54
+ input[type="search"],
55
+ input[type="tel"],
56
+ input[type="color"],
57
+ .uneditable-input {
58
+ border: 1px solid #d9d9d9;
59
+ border-top: 1px solid #c0c0c0;
60
+ @include border-radius($inputBorderRadius);
61
+ @include box-shadow(none);
62
+ @include transition(none);
63
+
64
+ &:hover {
65
+ border: 1px solid #b9b9b9;
66
+ border-top: 1px solid #a0a0a0;
67
+ @include box-shadow(inset 0 1px 2px rgba(0,0,0,0.1));
68
+ z-index: 2;
69
+ }
70
+
71
+ // Focus state
72
+ &:focus,
73
+ &.focused {
74
+ outline: none;
75
+ border: 1px solid #4d90fe;
76
+ @include transition(none);
77
+ @include box-shadow(inset 0 1px 2px rgba(0,0,0,0.3));
78
+ }
79
+ }
80
+
81
+
82
+ // CHECKBOXES & RADIOS
83
+ // -------------------
84
+
85
+ // Google style
86
+ input[type="checkbox"],
87
+ input[type="radio"] {
88
+ -webkit-appearance: none;
89
+ appearance: none;
90
+ width: 13px;
91
+ height: 13px;
92
+ background: white;
93
+ border: 1px solid #dcdcdc;
94
+ @include border-radius(1px);
95
+ @include box-sizing(border-box);
96
+ position: relative;
97
+ }
98
+ input[type="radio"] {
99
+ @include border-radius(1em);
100
+ width: 15px;
101
+ height: 15px;
102
+ }
103
+ input[type="checkbox"]:hover {
104
+ border-color: #c6c6c6;
105
+ @include box-shadow(inset 0 1px 1px rgba(0, 0, 0, 0.1));
106
+ }
107
+ input[type="checkbox"]:active,
108
+ input[type="radio"]:active {
109
+ border-color: #c6c6c6;
110
+ background: #EBEBEB;
111
+ }
112
+ input[type="checkbox"]:checked,
113
+ input[type="radio"]:checked {
114
+ background: #fff;
115
+ }
116
+ input[type="checkbox"]:checked::after {
117
+ content: asset-url("checkmark.png", image);
118
+ display: block;
119
+ position: absolute;
120
+ top: -6px;
121
+ left: -5px;
122
+ }
123
+ input[type="radio"]:checked::after {
124
+ content: '';
125
+ display: block;
126
+ position: relative;
127
+ top: 3px;
128
+ left: 3px;
129
+ width: 7px;
130
+ height: 7px;
131
+ background: #666;
132
+ @include border-radius(1em);
133
+ }
134
+ input[type="checkbox"]:focus,
135
+ input[type="radio"]:focus {
136
+ outline: none;
137
+ border-color: #4d90fe;
138
+ }
139
+
140
+
141
+ // DISABLED STATE
142
+ // --------------
143
+
144
+ // Disabled and read-only inputs
145
+ input[disabled],
146
+ select[disabled],
147
+ textarea[disabled] {
148
+ cursor: not-allowed;
149
+ border: 1px solid #e5e5e5;
150
+ background: #f1f1f1;
151
+
152
+ &:hover {
153
+ @include box-shadow(none);
154
+ }
155
+ }
156
+ input[readonly],
157
+ select[readonly],
158
+ textarea[readonly] {
159
+ cursor: not-allowed;
160
+ border: 1px solid #d9d9d9;
161
+
162
+ &:hover,
163
+ &:focus {
164
+ @include box-shadow(none);
165
+ }
166
+ }
167
+
168
+
169
+ // FORM FIELD FEEDBACK STATES
170
+ // --------------------------
171
+
172
+ // HTML5 invalid states
173
+ // Shares styles with the .control-group.error above
174
+ .g-select:focus:required:invalid,
175
+ input:focus:required:invalid,
176
+ textarea:focus:required:invalid,
177
+ select:focus:required:invalid {
178
+ color: #b94a48;
179
+ border-color: #ee5f5b;
180
+ &:focus {
181
+ border-color: #4d90fe;
182
+ @include box-shadow(0);
183
+ }
184
+ }
185
+
186
+
187
+ // HORIZONTAL & VERTICAL FORMS
188
+ // ---------------------------
189
+
190
+ // Common properties
191
+ // -----------------
192
+
193
+ .form-search,
194
+ .form-inline,
195
+ .form-horizontal {
196
+ .g-select,
197
+ input,
198
+ textarea,
199
+ select,
200
+ .help-inline,
201
+ .uneditable-input,
202
+ .input-prepend,
203
+ .input-append {
204
+ display: inline-block;
205
+ @include ie7-inline-block();
206
+ margin-bottom: 0;
207
+ }
208
+ // Re-hide hidden elements due to specifity
209
+ .hide {
210
+ display: none;
211
+ }
212
+ }
213
+
214
+ .btn.g-select {
215
+ font-weight: bold;
216
+ text-align: left;
217
+ padding: 4px 8px;
218
+ }
219
+ .btn.g-select:after {
220
+ content: "";
221
+ position: absolute;
222
+ display: inline-block;
223
+ top: 9px;
224
+ right: 6px;
225
+ width: 7px;
226
+ height: 11px;
227
+ background-image: asset-url("grey-disclosure-arrow-up-down.png", image);
228
+ background-repeat: no-repeat;
229
+ }
@@ -0,0 +1,42 @@
1
+ /*!
2
+ * Google Buttons Bootstrap
3
+ *
4
+ * This CSS is intended to be used on top of Twitter Bootstrap, to theme
5
+ * it in the Google style.
6
+ *
7
+ * Constructed by Tim O'Donnell (http://github.com/todc)
8
+ * Gemmed by Pete Brousalis (http://github.com/brousalis)
9
+ */
10
+
11
+ // Bootstrap
12
+ @import "bootstrap-mixins";
13
+
14
+ // Core variables and mixins
15
+ @import "variables";
16
+ @import "mixins";
17
+
18
+ // Base CSS
19
+ @import "forms";
20
+
21
+ // Components: common
22
+ @import "dropdowns";
23
+ @import "wells";
24
+ @import "scrollbars";
25
+
26
+ // Components: Buttons & Alerts
27
+ @import "buttons";
28
+ @import "button-groups";
29
+ @import "alerts";
30
+
31
+ // Components: Nav
32
+ @import "navs";
33
+ @import "breadcrumbs";
34
+ @import "pagination";
35
+ @import "pager";
36
+
37
+ // Components: Popovers
38
+ @import "tooltip";
39
+ @import "popovers";
40
+
41
+ // Components: Misc
42
+ @import "progress-bars";
@@ -0,0 +1,44 @@
1
+ // Mixins.less
2
+ // Snippets of reusable CSS to develop faster and keep code readable
3
+ // -----------------------------------------------------------------
4
+
5
+ // Popover arrows
6
+ // -------------------------
7
+ // For popovers
8
+ @mixin top($arrowWidth: 9px, $color: $white) {
9
+ bottom: 0;
10
+ left: 50%;
11
+ margin-bottom: -$arrowWidth + 6px;
12
+ margin-left: -$arrowWidth;
13
+ border-left: $arrowWidth solid transparent;
14
+ border-right: $arrowWidth solid transparent;
15
+ border-top: $arrowWidth solid $color;
16
+ }
17
+ @mixin left($arrowWidth: 9px, $color: $white) {
18
+ top: 50%;
19
+ right: 0;
20
+ margin-right: -$arrowWidth + 6px;
21
+ margin-top: -$arrowWidth;
22
+ border-top: $arrowWidth solid transparent;
23
+ border-bottom: $arrowWidth solid transparent;
24
+ border-left: $arrowWidth solid $color;
25
+ }
26
+ @mixin bottom($arrowWidth: 9px, $color: $white) {
27
+ top: 0;
28
+ left: 50%;
29
+ margin-top: -$arrowWidth + 6px;
30
+ margin-left: -$arrowWidth;
31
+ border-left: $arrowWidth solid transparent;
32
+ border-right: $arrowWidth solid transparent;
33
+ border-bottom: $arrowWidth solid $color;
34
+ }
35
+ @mixin right($arrowWidth: 9px, $color: $white) {
36
+ top: 50%;
37
+ left: 0;
38
+ margin-left: -$arrowWidth + 6px;
39
+ margin-top: -$arrowWidth;
40
+ border-top: $arrowWidth solid transparent;
41
+ border-bottom: $arrowWidth solid transparent;
42
+ border-right: $arrowWidth solid $color;
43
+ border-color: transparent $color;
44
+ }
@@ -0,0 +1,76 @@
1
+ // NAVIGATIONS
2
+ // -----------
3
+
4
+ .nav-list > .active > a,
5
+ .nav-list > .active > a:hover {
6
+ background-color: #4D90FE;
7
+ }
8
+
9
+ // Actual tabs (as links)
10
+ .nav-tabs > li > a {
11
+ @include border-radius(2px 2px 0 0);
12
+ }
13
+
14
+ // Links rendered as pills
15
+ .nav-pills > li > a {
16
+ @include border-radius(2px);
17
+ }
18
+
19
+ // Active state
20
+ .nav-pills > .active > a,
21
+ .nav-pills > .active > a:hover {
22
+ background-color: #4D90FE;
23
+ }
24
+
25
+
26
+ .nav-tabs.nav-stacked > li:first-child > a {
27
+ @include border-radius(2px 2px 0 0);
28
+ }
29
+ .nav-tabs.nav-stacked > li:last-child > a {
30
+ @include border-radius(0 0 2px 2px);
31
+ }
32
+ .nav-tabs.nav-stacked > li > a:hover {
33
+ border-color: #ddd;
34
+ z-index: 2;
35
+ }
36
+
37
+
38
+ // TABS
39
+ // ----
40
+
41
+ .nav-tabs > li > a {
42
+ color: #666;
43
+ }
44
+ .nav-tabs > .active > a,
45
+ .nav-tabs > .active > a:hover {
46
+ font-weight: bold;
47
+ color: #333;
48
+ }
49
+
50
+
51
+ // DROPDOWNS
52
+ // ---------
53
+
54
+ .nav-tabs .dropdown-menu {
55
+ @include border-radius(0); // remove the top rounded corners here since there is a hard edge above the menu
56
+ }
57
+ .nav-pills .dropdown-menu {
58
+ @include border-radius(0); // make rounded corners match the pills
59
+ }
60
+
61
+ // BOTTOM
62
+ // ------
63
+
64
+ .tabs-below > .nav-tabs > li > a {
65
+ @include border-radius(0 0 2px 2px);
66
+ }
67
+
68
+ // LEFT & RIGHT
69
+ // ------------
70
+
71
+ .tabs-left > .nav-tabs > li > a {
72
+ @include border-radius(2px 0 0 2px);
73
+ }
74
+ .tabs-right > .nav-tabs > li > a {
75
+ @include border-radius(0 2px 2px 0);
76
+ }
@@ -0,0 +1,40 @@
1
+ // PAGER
2
+ // -----
3
+
4
+ .pager a {
5
+ padding: 4px 12px;
6
+
7
+ border: 1px solid #dcdcdc;
8
+ @include border-radius(2px);
9
+ background-color: $btnBackground;
10
+ @include gradient-vertical(#f5f5f5,#f1f1f1);
11
+
12
+ color: #333;
13
+ text-shadow: 0 1px 0 #fff;
14
+ text-decoration: none;
15
+ white-space: nowrap;
16
+ font-weight: bold;
17
+
18
+ cursor: default;
19
+ outline: none;
20
+ overflow: visible;
21
+ }
22
+ .pager a:hover {
23
+ border-color: #c6c6c6;
24
+ @include gradient-vertical(#f8f8f8,#f1f1f1);
25
+ @include box-shadow(0 1px 1px rgba(0,0,0,0.1));
26
+ }
27
+ .pager a:active {
28
+ background-color: #f4f4f4;
29
+ @include gradient-vertical(#f6f6f6,#f1f1f1);
30
+ @include box-shadow(inset 0 1px 2px rgba(0, 0, 0, 0.1));
31
+ }
32
+ .pager .disabled a,
33
+ .pager .disabled a:hover {
34
+ color: darken($white, 30%);
35
+ border-color: darken($white, 15%);
36
+ background-color: $btnBackground;
37
+ @include gradient-vertical(#f5f5f5,#f1f1f1);
38
+ @include box-shadow(none);
39
+ text-shadow: none;
40
+ }
@@ -0,0 +1,68 @@
1
+ // PAGINATION
2
+ // ----------
3
+
4
+ .pagination ul {
5
+ @include border-radius(2px);
6
+ }
7
+ .pagination a {
8
+ position: relative;
9
+ padding: 4px 12px;
10
+ margin-left: -1px;
11
+
12
+ border: 1px solid #dcdcdc;
13
+ background-color: $btnBackground;
14
+ @include gradient-vertical(#f5f5f5,#f1f1f1);
15
+
16
+ color: #333;
17
+ font-family: $baseFontFamily;
18
+ font-size: $baseFontSize;
19
+ font-weight: bold;
20
+ line-height: $baseLineHeight;
21
+ text-align: center;
22
+ text-shadow: 0 1px 0 #fff;
23
+ white-space: nowrap;
24
+
25
+ cursor: default;
26
+ outline: none;
27
+ overflow: visible;
28
+
29
+ z-index: 1000;
30
+ }
31
+ .pagination a:hover,
32
+ .pagination a:active {
33
+ border-color: #c6c6c6;
34
+ z-index: 1010;
35
+
36
+ background-color: #f5f5f5;
37
+ @include gradient-vertical(#f8f8f8,#f1f1f1);
38
+
39
+ @include box-shadow(0 1px 1px rgba(0,0,0,0.1));
40
+ }
41
+ .pagination a:active {
42
+ background-color: #f4f4f4;
43
+ @include gradient-vertical(#f6f6f6,#f1f1f1);
44
+ @include box-shadow(inset 0 1px 2px rgba(0, 0, 0, 0.1));
45
+ }
46
+ .pagination .active a {
47
+ color: #4D90FE;
48
+ }
49
+ .pagination .disabled span,
50
+ .pagination .disabled a,
51
+ .pagination .disabled a:hover {
52
+ color: darken($white, 30%);
53
+ border-color: darken($white, 15%);
54
+ background-color: $btnBackground;
55
+ @include gradient-vertical(#f5f5f5,#f1f1f1);
56
+ @include box-shadow(none);
57
+ text-shadow: none;
58
+ }
59
+ .pagination .disabled a [class^="icon-"] {
60
+ @include opacity(30);
61
+ }
62
+ .pagination li:first-child a {
63
+ margin-left: 0;
64
+ @include border-radius(2px 0 0 2px);
65
+ }
66
+ .pagination li:last-child a {
67
+ @include border-radius(0 2px 2px 0);
68
+ }
@@ -0,0 +1,36 @@
1
+ // POPOVERS
2
+ // --------
3
+
4
+ .popover {
5
+ &.top .arrow { @include top(); }
6
+ &.top .arrowbefore { @include top(10px, #bbb); }
7
+
8
+ &.right .arrow { @include right(); }
9
+ &.right .arrowbefore { @include right(10px, #bbb); }
10
+
11
+ &.bottom .arrow { @include bottom(); }
12
+ &.bottom .arrowbefore { @include bottom(10px, #bbb); }
13
+
14
+ &.left .arrow { @include left(); }
15
+ &.left .arrowbefore { @include left(10px, #bbb); }
16
+
17
+ .arrowbefore {
18
+ position: absolute;
19
+ width: 0;
20
+ height: 0;
21
+ }
22
+ }
23
+ .popover-inner {
24
+ padding: 0px;
25
+ border: 1px solid;
26
+ border-color: #bbb #bbb #a8a8a8;
27
+ background: #bbb; // has to be full background declaration for IE fallback
28
+ @include border-radius(0);
29
+ @include box-shadow(0 1px 3px rgba(0,0,0,0.2));
30
+ }
31
+ .popover-title {
32
+ @include border-radius(0);
33
+ }
34
+ .popover-content {
35
+ @include border-radius(0);
36
+ }
@@ -0,0 +1,7 @@
1
+ // PROGRESS BARS
2
+ // -------------
3
+
4
+ // Outer container
5
+ .progress {
6
+ @include border-radius(2px);
7
+ }
@@ -0,0 +1,43 @@
1
+ .scrollable::-webkit-scrollbar {
2
+ height: 16px;
3
+ width: 12px;
4
+ }
5
+ .scrollable::-webkit-scrollbar-button:start:decrement,
6
+ .scrollable::-webkit-scrollbar-button:end:increment {
7
+ background-color: transparent;
8
+ display: block;
9
+ height: 0;
10
+ }
11
+ .scrollable::-webkit-scrollbar-track {
12
+ background-clip: padding-box;
13
+ border: solid
14
+ transparent;
15
+ border-width: 0 0 0 4px;
16
+ }
17
+ .scrollable::-webkit-scrollbar-track-piece {
18
+ background-color: transparent;
19
+ @include border-radius(0);
20
+ }
21
+ .scrollable::-webkit-scrollbar:hover {
22
+ background-color: #f3f3f3;
23
+ border-left: 1px solid #dbdbdb;
24
+ }
25
+ .scrollable::-webkit-scrollbar-thumb:vertical,
26
+ .scrollable::-webkit-scrollbar-thumb:horizontal {
27
+ background-color: #c6c6c6;
28
+ @include border-radius(0);
29
+ }
30
+ .scrollable::-webkit-scrollbar-thumb {
31
+ background-color: rgba(0,0,0,0.2);
32
+ border: solid transparent;
33
+ border-width: 1px 1px 1px 2px;
34
+ @include box-shadow(#{"inset 1px 1px 0 rgba(0,0,0,0.10),inset 0 -1px 0 rgba(0,0,0,0.07)"});
35
+ background-clip: padding-box;
36
+ }
37
+ .scrollable::-webkit-scrollbar-thumb:hover {
38
+ background-color: #949494;
39
+ }
40
+ .scrollable::-webkit-scrollbar-thumb:active{
41
+ background-color: rgba(0,0,0,0.5);
42
+ @include box-shadow(inset 1px 1px 3px rgba(0,0,0,0.35));
43
+ }
@@ -0,0 +1,12 @@
1
+ // SPRITES
2
+ // Glyphs and icons for buttons, nav, and more
3
+ // -------------------------------------------
4
+
5
+ [class^="icon-"] {
6
+ margin-top: -2px;
7
+ }
8
+
9
+ .disabled > [class^="icon-"],
10
+ .disabled2 > [class^="icon-"] {
11
+ @include opacity(50);
12
+ }
@@ -0,0 +1,10 @@
1
+ // TOOLTIP
2
+ // ------=
3
+
4
+ .tooltip {
5
+ font-weight: bold;
6
+ &.in { @include opacity(100); }
7
+ }
8
+ .tooltip-inner {
9
+ @include border-radius(0px);
10
+ }