flat-ui-sass 2.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +18 -0
  3. data/.gitmodules +3 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +256 -0
  7. data/Rakefile +14 -0
  8. data/app/helpers/flat_ui/rails/icon_helper.rb +60 -0
  9. data/bin/fui_convert +9 -0
  10. data/flat-ui-sass.gemspec +28 -0
  11. data/lib/flat-ui-sass.rb +98 -0
  12. data/lib/flat-ui-sass/cli.rb +56 -0
  13. data/lib/flat-ui-sass/engine.rb +13 -0
  14. data/lib/flat-ui-sass/sass_functions.rb +56 -0
  15. data/lib/flat-ui-sass/version.rb +4 -0
  16. data/lib/tasks/converter.rb +99 -0
  17. data/lib/tasks/converter/filesystem.rb +16 -0
  18. data/lib/tasks/converter/flat_ui_fonts_conversion.rb +19 -0
  19. data/lib/tasks/converter/flat_ui_images_conversion.rb +19 -0
  20. data/lib/tasks/converter/flat_ui_js_conversion.rb +28 -0
  21. data/lib/tasks/converter/flat_ui_less_conversion.rb +328 -0
  22. data/lib/tasks/converter/logger.rb +61 -0
  23. data/lib/tasks/flat-ui-sass.rake +8 -0
  24. data/templates/project/_variables.scss.erb +5 -0
  25. data/templates/project/manifest.rb +57 -0
  26. data/templates/project/styles.scss +4 -0
  27. data/vendor/assets/fonts/flat-ui/flat-ui-icons-regular.eot +0 -0
  28. data/vendor/assets/fonts/flat-ui/flat-ui-icons-regular.svg +140 -0
  29. data/vendor/assets/fonts/flat-ui/flat-ui-icons-regular.ttf +0 -0
  30. data/vendor/assets/fonts/flat-ui/flat-ui-icons-regular.woff +0 -0
  31. data/vendor/assets/images/flat-ui/icons/png/Book.png +0 -0
  32. data/vendor/assets/images/flat-ui/icons/png/Calendar.png +0 -0
  33. data/vendor/assets/images/flat-ui/icons/png/Chat.png +0 -0
  34. data/vendor/assets/images/flat-ui/icons/png/Clipboard.png +0 -0
  35. data/vendor/assets/images/flat-ui/icons/png/Compas.png +0 -0
  36. data/vendor/assets/images/flat-ui/icons/png/Gift-Box.png +0 -0
  37. data/vendor/assets/images/flat-ui/icons/png/Infinity-Loop.png +0 -0
  38. data/vendor/assets/images/flat-ui/icons/png/Mail.png +0 -0
  39. data/vendor/assets/images/flat-ui/icons/png/Map.png +0 -0
  40. data/vendor/assets/images/flat-ui/icons/png/Pensils.png +0 -0
  41. data/vendor/assets/images/flat-ui/icons/png/Pocket.png +0 -0
  42. data/vendor/assets/images/flat-ui/icons/png/Retina-Ready.png +0 -0
  43. data/vendor/assets/images/flat-ui/icons/png/Toilet-Paper.png +0 -0
  44. data/vendor/assets/images/flat-ui/icons/png/Watches.png +0 -0
  45. data/vendor/assets/images/flat-ui/icons/svg/book.svg +1 -0
  46. data/vendor/assets/images/flat-ui/icons/svg/calendar.svg +1 -0
  47. data/vendor/assets/images/flat-ui/icons/svg/chat.svg +1 -0
  48. data/vendor/assets/images/flat-ui/icons/svg/clipboard.svg +1 -0
  49. data/vendor/assets/images/flat-ui/icons/svg/clocks.svg +9 -0
  50. data/vendor/assets/images/flat-ui/icons/svg/compas.svg +1 -0
  51. data/vendor/assets/images/flat-ui/icons/svg/gift-box.svg +1 -0
  52. data/vendor/assets/images/flat-ui/icons/svg/loop.svg +5 -0
  53. data/vendor/assets/images/flat-ui/icons/svg/mail.svg +1 -0
  54. data/vendor/assets/images/flat-ui/icons/svg/map.svg +1 -0
  55. data/vendor/assets/images/flat-ui/icons/svg/paper-bag.svg +1 -0
  56. data/vendor/assets/images/flat-ui/icons/svg/pencils.svg +1 -0
  57. data/vendor/assets/images/flat-ui/icons/svg/retina.svg +1 -0
  58. data/vendor/assets/images/flat-ui/icons/svg/toilet-paper.svg +1 -0
  59. data/vendor/assets/images/flat-ui/login/icon.png +0 -0
  60. data/vendor/assets/images/flat-ui/login/imac-2x.png +0 -0
  61. data/vendor/assets/images/flat-ui/login/imac.png +0 -0
  62. data/vendor/assets/images/flat-ui/switch/mask-square.png +0 -0
  63. data/vendor/assets/images/flat-ui/switch/mask.png +0 -0
  64. data/vendor/assets/images/flat-ui/tile/ribbon-2x.png +0 -0
  65. data/vendor/assets/images/flat-ui/tile/ribbon.png +0 -0
  66. data/vendor/assets/images/flat-ui/todo/done-2x.png +0 -0
  67. data/vendor/assets/images/flat-ui/todo/done.png +0 -0
  68. data/vendor/assets/images/flat-ui/todo/search-2x.png +0 -0
  69. data/vendor/assets/images/flat-ui/todo/search.png +0 -0
  70. data/vendor/assets/images/flat-ui/todo/todo-2x.png +0 -0
  71. data/vendor/assets/images/flat-ui/todo/todo.png +0 -0
  72. data/vendor/assets/images/flat-ui/video/fullscreen-2x.png +0 -0
  73. data/vendor/assets/images/flat-ui/video/fullscreen.png +0 -0
  74. data/vendor/assets/images/flat-ui/video/pause-2x.png +0 -0
  75. data/vendor/assets/images/flat-ui/video/pause.png +0 -0
  76. data/vendor/assets/images/flat-ui/video/play-2x.png +0 -0
  77. data/vendor/assets/images/flat-ui/video/play.png +0 -0
  78. data/vendor/assets/images/flat-ui/video/poster.jpg +0 -0
  79. data/vendor/assets/images/flat-ui/video/volume-full-2x.png +0 -0
  80. data/vendor/assets/images/flat-ui/video/volume-full.png +0 -0
  81. data/vendor/assets/images/flat-ui/video/volume-off-2x.png +0 -0
  82. data/vendor/assets/images/flat-ui/video/volume-off.png +0 -0
  83. data/vendor/assets/javascripts/flat-ui.js +2 -0
  84. data/vendor/assets/javascripts/flat-ui/flatui-checkbox.js +112 -0
  85. data/vendor/assets/javascripts/flat-ui/flatui-radio.js +139 -0
  86. data/vendor/assets/stylesheets/flat-ui.scss +1 -0
  87. data/vendor/assets/stylesheets/flat-ui/_mixins.scss +878 -0
  88. data/vendor/assets/stylesheets/flat-ui/_spaces.scss +172 -0
  89. data/vendor/assets/stylesheets/flat-ui/_variables.scss +509 -0
  90. data/vendor/assets/stylesheets/flat-ui/flat-ui.scss +45 -0
  91. data/vendor/assets/stylesheets/flat-ui/modules/_button-groups.scss +110 -0
  92. data/vendor/assets/stylesheets/flat-ui/modules/_buttons.scss +151 -0
  93. data/vendor/assets/stylesheets/flat-ui/modules/_caret.scss +30 -0
  94. data/vendor/assets/stylesheets/flat-ui/modules/_checkbox-and-radio.scss +143 -0
  95. data/vendor/assets/stylesheets/flat-ui/modules/_code.scss +49 -0
  96. data/vendor/assets/stylesheets/flat-ui/modules/_dropdown.scss +223 -0
  97. data/vendor/assets/stylesheets/flat-ui/modules/_footer.scss +76 -0
  98. data/vendor/assets/stylesheets/flat-ui/modules/_forms.scss +188 -0
  99. data/vendor/assets/stylesheets/flat-ui/modules/_glyphicons.scss +135 -0
  100. data/vendor/assets/stylesheets/flat-ui/modules/_input-groups.scss +153 -0
  101. data/vendor/assets/stylesheets/flat-ui/modules/_input-icons.scss +72 -0
  102. data/vendor/assets/stylesheets/flat-ui/modules/_local-fonts.scss +69 -0
  103. data/vendor/assets/stylesheets/flat-ui/modules/_login.scss +111 -0
  104. data/vendor/assets/stylesheets/flat-ui/modules/_navbar.scss +876 -0
  105. data/vendor/assets/stylesheets/flat-ui/modules/_pager.scss +51 -0
  106. data/vendor/assets/stylesheets/flat-ui/modules/_pagination.scss +166 -0
  107. data/vendor/assets/stylesheets/flat-ui/modules/_palette.scss +71 -0
  108. data/vendor/assets/stylesheets/flat-ui/modules/_progress-bars.scss +34 -0
  109. data/vendor/assets/stylesheets/flat-ui/modules/_scaffolding.scss +64 -0
  110. data/vendor/assets/stylesheets/flat-ui/modules/_select.scss +145 -0
  111. data/vendor/assets/stylesheets/flat-ui/modules/_share.scss +44 -0
  112. data/vendor/assets/stylesheets/flat-ui/modules/_slider.scss +105 -0
  113. data/vendor/assets/stylesheets/flat-ui/modules/_switch.scss +150 -0
  114. data/vendor/assets/stylesheets/flat-ui/modules/_tagsinput.scss +121 -0
  115. data/vendor/assets/stylesheets/flat-ui/modules/_thumbnails.scss +38 -0
  116. data/vendor/assets/stylesheets/flat-ui/modules/_tile.scss +54 -0
  117. data/vendor/assets/stylesheets/flat-ui/modules/_todo.scss +110 -0
  118. data/vendor/assets/stylesheets/flat-ui/modules/_tooltip.scss +56 -0
  119. data/vendor/assets/stylesheets/flat-ui/modules/_type.scss +208 -0
  120. data/vendor/assets/stylesheets/flat-ui/modules/_typeahead.scss +41 -0
  121. data/vendor/assets/stylesheets/flat-ui/modules/_video.scss +458 -0
  122. metadata +251 -0
@@ -0,0 +1,44 @@
1
+ //
2
+ // Sharing box
3
+ // --------------------------------------------------
4
+
5
+ // Module color variable
6
+ $share-color: mix($brand-primary, $inverse, 8%);
7
+
8
+ .share {
9
+ background-color: $share-color;
10
+ position: relative;
11
+ border-radius: $border-radius-large;
12
+ @include dropdown-arrow($share-color, -9px, 23px);
13
+
14
+ ul {
15
+ list-style-type: none;
16
+ margin: 0;
17
+ padding: 15px;
18
+ }
19
+ li {
20
+ font-size: $component-font-size-base;
21
+ line-height: 1.4;
22
+ padding-top: 11px;
23
+ @include clearfix();
24
+
25
+ &:first-child {
26
+ padding-top: 0;
27
+ }
28
+ }
29
+ .toggle {
30
+ float: right;
31
+ margin: 0;
32
+ }
33
+ .btn {
34
+ border-radius: 0 0 $border-radius-large $border-radius-large;
35
+ }
36
+ }
37
+
38
+ .share-label {
39
+ float: left;
40
+ font-size: 15px;
41
+ line-height: 1.4;
42
+ padding-top: 5px;
43
+ width: 50%;
44
+ }
@@ -0,0 +1,105 @@
1
+ // Slider
2
+ // --------------------------------------------------
3
+
4
+ // Default controls
5
+ // -------------------------
6
+
7
+ .ui-slider {
8
+ @extend .progress;
9
+ margin-bottom: 20px;
10
+ position: relative;
11
+ cursor: pointer;
12
+ }
13
+
14
+ .ui-slider-handle {
15
+ background-color: $slider-handle-bg;
16
+ border-radius: 50%;
17
+ cursor: pointer;
18
+ height: 18px;
19
+ position: absolute;
20
+ width: 18px;
21
+ z-index: 2;
22
+ @include transition(background .25s);
23
+
24
+ &:hover,
25
+ &:focus {
26
+ background-color: $slider-handle-hover-bg;
27
+ outline: none;
28
+ }
29
+ &:active {
30
+ background-color: $slider-handle-active-bg;
31
+ }
32
+ }
33
+
34
+ .ui-slider-range {
35
+ background-color: $slider-range-bg;
36
+ display: block;
37
+ height: 100%;
38
+ position: absolute;
39
+ z-index: 1;
40
+ }
41
+
42
+ // Segments
43
+ // -------------------------
44
+ .ui-slider-segment {
45
+ background-color: $slider-segment-bg;
46
+ border-radius: 50%;
47
+ height: 6px;
48
+ width: 6px;
49
+ }
50
+
51
+ // Values
52
+ // -------------------------
53
+ .ui-slider-value {
54
+ float: right;
55
+ font-size: $slider-value-font-size;
56
+ margin-top: $slider-height;
57
+
58
+ &.first {
59
+ clear: left;
60
+ float: left;
61
+ }
62
+ }
63
+
64
+ // Horizontal orientation
65
+ // -------------------------
66
+
67
+ .ui-slider-horizontal {
68
+ .ui-slider-handle {
69
+ margin-left: -9px;
70
+ top: -3px;
71
+
72
+ &[style*="100"] {
73
+ margin-left: -15px;
74
+ }
75
+ }
76
+ .ui-slider-range {
77
+ border-radius: 30px 0 0 30px;
78
+ }
79
+ .ui-slider-segment {
80
+ float: left;
81
+ margin: 3px -6px 0 0;
82
+ }
83
+ }
84
+
85
+ // Vertical orientation
86
+ // -------------------------
87
+
88
+ .ui-slider-vertical {
89
+ width: $slider-height;
90
+
91
+ .ui-slider-handle {
92
+ margin-left: -3px;
93
+ margin-bottom: -11px;
94
+ top: auto;
95
+ }
96
+ .ui-slider-range {
97
+ width: 100%;
98
+ bottom: 0;
99
+ border-radius: 0 0 30px 30px;
100
+ }
101
+ .ui-slider-segment {
102
+ position: absolute;
103
+ right: 3px;
104
+ }
105
+ }
@@ -0,0 +1,150 @@
1
+ /* ============================================================
2
+ * bootstrapSwitch v1.3 by Larentis Mattia @spiritualGuru
3
+ * http://www.larentis.eu/switch/
4
+ * ============================================================
5
+ * Licensed under the Apache License, Version 2.0
6
+ * http://www.apache.org/licenses/LICENSE-2.0
7
+ * ============================================================ */
8
+
9
+ .has-switch {
10
+ border-radius: $switch-border-radius;
11
+ display: inline-block;
12
+ cursor: pointer;
13
+ line-height: $line-height-base;
14
+ overflow: hidden;
15
+ position: relative;
16
+ text-align: left;
17
+ width: $switch-width;
18
+ @include mask(url(if($flat-ui-sass-asset-helper, flat-ui-image-path("flat-ui/switch/mask.png"), "flat-ui/switch/mask.png")) 0 0 no-repeat);
19
+ @include user-select(none);
20
+
21
+ &.deactivate {
22
+ @include opacity(.5);
23
+ cursor: default !important;
24
+
25
+ label,
26
+ span {
27
+ cursor: default !important;
28
+ }
29
+ }
30
+
31
+ > div {
32
+ width: 130px;
33
+ position: relative;
34
+ top: 0;
35
+
36
+ &.switch-animate {
37
+ @include transition(left .25s ease-out);
38
+ }
39
+
40
+ &.switch-off {
41
+ left: -50px;
42
+
43
+ label {
44
+ background-color: mix($brand-primary, white, 63%);
45
+ border-color: $gray-light;
46
+ @include box-shadow(-1px 0 0 fade($inverse, 50%));
47
+ }
48
+ }
49
+
50
+ &.switch-on {
51
+ left: 0;
52
+
53
+ label {
54
+ background-color: $brand-secondary;
55
+ }
56
+ }
57
+ }
58
+
59
+ input[type=checkbox] {
60
+ display: none;
61
+ }
62
+
63
+ span {
64
+ cursor: pointer;
65
+ font-size: $component-font-size-base; // 15px
66
+ font-weight: 700;
67
+ float: left;
68
+ height: 29px;
69
+ line-height: 19px;
70
+ margin: 0;
71
+ padding-bottom: 6px;
72
+ padding-top: 5px;
73
+ position: relative;
74
+ text-align: center;
75
+ width: 50%;
76
+ z-index: 1;
77
+ @include transition(.25s ease-out);
78
+
79
+ &.switch-left {
80
+ border-radius: $switch-border-radius 0 0 $switch-border-radius;
81
+ background-color: $brand-primary;
82
+ color: $brand-secondary;
83
+ border-left: 1px solid transparent;
84
+ }
85
+
86
+ &.switch-right {
87
+ border-radius: 0 $switch-border-radius $switch-border-radius 0;
88
+ background-color: $gray-light;
89
+ color: $inverse;
90
+ text-indent: 7px;
91
+
92
+ [class*="fui-"] {
93
+ text-indent: 0;
94
+ }
95
+ }
96
+ }
97
+
98
+ label {
99
+ border: 4px solid $brand-primary;
100
+ border-radius: 50%;
101
+ float: left;
102
+ height: 29px;
103
+ margin: 0 -15px;
104
+ padding: 0;
105
+ position: relative;
106
+ vertical-align: middle;
107
+ width: 29px;
108
+ z-index: 100;
109
+ @include transition(.25s ease-out);
110
+ }
111
+ }
112
+
113
+ // Square Switch
114
+ // -------------------------------
115
+ .switch-square {
116
+ border-radius: $border-radius-large;
117
+ @include mask(url(if($flat-ui-sass-asset-helper, flat-ui-image-path("flat-ui/switch/mask.png"), "flat-ui/switch/mask.png")) 0 0 no-repeat);
118
+
119
+ > div {
120
+ &.switch-off {
121
+ label {
122
+ border-color: mix($brand-primary, white, 63%);
123
+ border-radius: $border-radius-large 0 0 $border-radius-large;
124
+ }
125
+ }
126
+ }
127
+
128
+ span {
129
+ &.switch-left {
130
+ border-radius: $border-radius-large 0 0 $border-radius-large;
131
+
132
+ [class*="fui-"] {
133
+ text-indent: -10px;
134
+ }
135
+ }
136
+
137
+ &.switch-right {
138
+ border-radius: 0 $border-radius-large $border-radius-large 0;
139
+
140
+ [class*="fui-"] {
141
+ text-indent: 5px;
142
+ }
143
+ }
144
+ }
145
+
146
+ label {
147
+ border-radius: 0 $border-radius-large $border-radius-large 0;
148
+ border-color: $brand-secondary;
149
+ }
150
+ }
@@ -0,0 +1,121 @@
1
+ //
2
+ // Tags Input
3
+ // --------------------------------------------------
4
+
5
+ .tagsinput {
6
+ background: white;
7
+ border: 2px solid $brand-secondary;
8
+ border-radius: $border-radius-large;
9
+ height: 100px;
10
+ margin-bottom: 18px;
11
+ padding: 6px 1px 1px 6px;
12
+ overflow-y: auto;
13
+ text-align: left;
14
+
15
+ .tag {
16
+ border-radius: $border-radius-base;
17
+ background-color: $brand-secondary;
18
+ color: $inverse;
19
+ font-size: ceil($component-font-size-base * 0.933); // ~14px
20
+ cursor: pointer;
21
+ display: inline-block;
22
+ margin-right: 5px;
23
+ margin-bottom: 5px;
24
+ overflow: hidden;
25
+ line-height: 15px;
26
+ padding: 6px 13px 8px 19px;
27
+ position: relative;
28
+ vertical-align: middle;
29
+ @include transition(.25s linear);
30
+
31
+ &:hover {
32
+ background-color: mix($brand-secondary, black, 85%);
33
+ color: $inverse;
34
+ padding-left: 12px;
35
+ padding-right: 20px;
36
+
37
+ .tagsinput-remove-link {
38
+ color: $inverse;
39
+ opacity: 1;
40
+ // Opacity fallback for IE
41
+ display: block\9;
42
+ }
43
+ }
44
+ }
45
+
46
+ input {
47
+ background: transparent;
48
+ border: none;
49
+ color: $brand-primary;
50
+ font-family: $font-family-base;
51
+ font-size: ceil($component-font-size-base * 0.933); // ~14px
52
+ margin: 0px;
53
+ padding: 0 0 0 5px;
54
+ outline: none !important;
55
+ margin: 6px 5px 0 0;
56
+ vertical-align: top;
57
+ width: 12px;
58
+ }
59
+ }
60
+
61
+ .tagsinput-remove-link {
62
+ bottom: 0;
63
+ color: $inverse;
64
+ cursor: pointer;
65
+ font-size: 12px;
66
+ opacity: 0;
67
+ padding: 7px 7px 5px 0;
68
+ position: absolute;
69
+ right: 0;
70
+ text-align: right;
71
+ text-decoration: none;
72
+ top: 0;
73
+ width: 100%;
74
+ z-index: 2;
75
+ // Opacity fallback for IE
76
+ display: none\9;
77
+
78
+ &:before {
79
+ color: $inverse;
80
+ content: "\e00b";
81
+ font-family: "Flat-UI-Icons";
82
+ }
83
+ }
84
+
85
+ .tagsinput-add-container {
86
+ vertical-align: middle;
87
+ display: inline-block;
88
+ }
89
+
90
+ .tagsinput-add {
91
+ background-color: mix($inverse, $brand-primary, 80%);
92
+ border-radius: $border-radius-small;
93
+ color: $inverse;
94
+ cursor: pointer;
95
+ display: inline-block;
96
+ font-size: ceil($component-font-size-base * 0.933); // ~14px
97
+ line-height: 1;
98
+ margin-bottom: 5px;
99
+ padding: 7px 9px;
100
+ vertical-align: top;
101
+ @include transition(.25s linear);
102
+
103
+ &:hover {
104
+ background-color: $brand-secondary;
105
+ }
106
+ &:before {
107
+ content: "\e009";
108
+ font-family: "Flat-UI-Icons";
109
+ }
110
+ }
111
+
112
+ .tags_clear {
113
+ clear: both;
114
+ width: 100%;
115
+ height: 0px;
116
+ }
117
+ .not_valid {
118
+ background: #fbd8db !important;
119
+ color: #90111a !important;
120
+ margin-left: 5px !important;
121
+ }
@@ -0,0 +1,38 @@
1
+ //
2
+ // Thumbnails
3
+ // --------------------------------------------------
4
+
5
+
6
+ // Mixin and adjust the regular image class
7
+ .thumbnail {
8
+ display: block;
9
+ padding: $thumbnail-padding;
10
+ margin-bottom: 5px;
11
+ line-height: $line-height-base;
12
+ background-color: $thumbnail-bg;
13
+ border: 2px solid $thumbnail-border;
14
+ border-radius: $thumbnail-border-radius;
15
+ @include transition(all .25s ease-in-out);
16
+
17
+ > img,
18
+ a > img {
19
+ @include img-responsive();
20
+ margin-left: auto;
21
+ margin-right: auto;
22
+ }
23
+
24
+ // [converter] extracted a&:hover, a&:focus, a&.active to a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active
25
+
26
+ // Image captions
27
+ .caption {
28
+ padding: $thumbnail-caption-padding;
29
+ color: $thumbnail-caption-color;
30
+ }
31
+ }
32
+
33
+ // Add a hover state for linked versions only
34
+ a.thumbnail:hover,
35
+ a.thumbnail:focus,
36
+ a.thumbnail.active {
37
+ border-color: $link-color;
38
+ }