uikit-on-rails 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (120) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +18 -0
  3. data/README.md +37 -0
  4. data/Rakefile +1 -0
  5. data/lib/uikit-on-rails.rb +1 -0
  6. data/lib/uikit/sass/rails.rb +2 -0
  7. data/lib/uikit/sass/rails/engine.rb +12 -0
  8. data/lib/uikit/sass/rails/version.rb +7 -0
  9. data/uikit-on-rails.gemspec +23 -0
  10. data/vendor/assets/fonts/fontawesome-webfont.eot +0 -0
  11. data/vendor/assets/fonts/fontawesome-webfont.otf +0 -0
  12. data/vendor/assets/fonts/fontawesome-webfont.svg +565 -0
  13. data/vendor/assets/fonts/fontawesome-webfont.ttf +0 -0
  14. data/vendor/assets/fonts/fontawesome-webfont.woff +0 -0
  15. data/vendor/assets/fonts/fontawesome-webfont.woff2 +0 -0
  16. data/vendor/assets/javascripts/uikit.js +19 -0
  17. data/vendor/assets/javascripts/uikit/components/accordion.js +180 -0
  18. data/vendor/assets/javascripts/uikit/components/autocomplete.js +340 -0
  19. data/vendor/assets/javascripts/uikit/components/datepicker.js +3167 -0
  20. data/vendor/assets/javascripts/uikit/components/form-password.js +67 -0
  21. data/vendor/assets/javascripts/uikit/components/form-select.js +85 -0
  22. data/vendor/assets/javascripts/uikit/components/grid-parallax.js +168 -0
  23. data/vendor/assets/javascripts/uikit/components/grid.js +540 -0
  24. data/vendor/assets/javascripts/uikit/components/htmleditor.js +679 -0
  25. data/vendor/assets/javascripts/uikit/components/lightbox.js +591 -0
  26. data/vendor/assets/javascripts/uikit/components/nestable.js +653 -0
  27. data/vendor/assets/javascripts/uikit/components/notify.js +189 -0
  28. data/vendor/assets/javascripts/uikit/components/pagination.js +147 -0
  29. data/vendor/assets/javascripts/uikit/components/parallax.js +462 -0
  30. data/vendor/assets/javascripts/uikit/components/search.js +92 -0
  31. data/vendor/assets/javascripts/uikit/components/slider.js +552 -0
  32. data/vendor/assets/javascripts/uikit/components/slideset.js +523 -0
  33. data/vendor/assets/javascripts/uikit/components/slideshow-fx.js +383 -0
  34. data/vendor/assets/javascripts/uikit/components/slideshow.js +596 -0
  35. data/vendor/assets/javascripts/uikit/components/sortable.js +688 -0
  36. data/vendor/assets/javascripts/uikit/components/sticky.js +364 -0
  37. data/vendor/assets/javascripts/uikit/components/timepicker.js +192 -0
  38. data/vendor/assets/javascripts/uikit/components/tooltip.js +234 -0
  39. data/vendor/assets/javascripts/uikit/components/upload.js +262 -0
  40. data/vendor/assets/javascripts/uikit/core/alert.js +66 -0
  41. data/vendor/assets/javascripts/uikit/core/button.js +156 -0
  42. data/vendor/assets/javascripts/uikit/core/core.js +820 -0
  43. data/vendor/assets/javascripts/uikit/core/cover.js +95 -0
  44. data/vendor/assets/javascripts/uikit/core/dropdown.js +529 -0
  45. data/vendor/assets/javascripts/uikit/core/grid.js +117 -0
  46. data/vendor/assets/javascripts/uikit/core/modal.js +389 -0
  47. data/vendor/assets/javascripts/uikit/core/nav.js +152 -0
  48. data/vendor/assets/javascripts/uikit/core/offcanvas.js +197 -0
  49. data/vendor/assets/javascripts/uikit/core/scrollspy.js +209 -0
  50. data/vendor/assets/javascripts/uikit/core/smooth-scroll.js +62 -0
  51. data/vendor/assets/javascripts/uikit/core/switcher.js +309 -0
  52. data/vendor/assets/javascripts/uikit/core/tab.js +167 -0
  53. data/vendor/assets/javascripts/uikit/core/toggle.js +124 -0
  54. data/vendor/assets/javascripts/uikit/core/touch.js +175 -0
  55. data/vendor/assets/javascripts/uikit/core/utility.js +338 -0
  56. data/vendor/assets/javascripts/uikit/uikit.js +3905 -0
  57. data/vendor/assets/stylesheets/extra/font-awesome.scss +14 -0
  58. data/vendor/assets/stylesheets/uikit.scss +7 -0
  59. data/vendor/assets/stylesheets/uikit/components/accordion.scss +94 -0
  60. data/vendor/assets/stylesheets/uikit/components/autocomplete.scss +107 -0
  61. data/vendor/assets/stylesheets/uikit/components/datepicker.scss +197 -0
  62. data/vendor/assets/stylesheets/uikit/components/dotnav.scss +212 -0
  63. data/vendor/assets/stylesheets/uikit/components/form-advanced.scss +128 -0
  64. data/vendor/assets/stylesheets/uikit/components/form-file.scss +63 -0
  65. data/vendor/assets/stylesheets/uikit/components/form-password.scss +74 -0
  66. data/vendor/assets/stylesheets/uikit/components/form-select.scss +66 -0
  67. data/vendor/assets/stylesheets/uikit/components/htmleditor.scss +269 -0
  68. data/vendor/assets/stylesheets/uikit/components/nestable.scss +231 -0
  69. data/vendor/assets/stylesheets/uikit/components/notify.scss +190 -0
  70. data/vendor/assets/stylesheets/uikit/components/placeholder.scss +66 -0
  71. data/vendor/assets/stylesheets/uikit/components/progress.scss +173 -0
  72. data/vendor/assets/stylesheets/uikit/components/search.scss +309 -0
  73. data/vendor/assets/stylesheets/uikit/components/slidenav.scss +183 -0
  74. data/vendor/assets/stylesheets/uikit/components/slider.scss +139 -0
  75. data/vendor/assets/stylesheets/uikit/components/slideshow.scss +208 -0
  76. data/vendor/assets/stylesheets/uikit/components/sortable.scss +124 -0
  77. data/vendor/assets/stylesheets/uikit/components/sticky.scss +57 -0
  78. data/vendor/assets/stylesheets/uikit/components/tooltip.scss +177 -0
  79. data/vendor/assets/stylesheets/uikit/components/upload.scss +34 -0
  80. data/vendor/assets/stylesheets/uikit/core/alert.scss +141 -0
  81. data/vendor/assets/stylesheets/uikit/core/animation.scss +599 -0
  82. data/vendor/assets/stylesheets/uikit/core/article.scss +139 -0
  83. data/vendor/assets/stylesheets/uikit/core/badge.scss +110 -0
  84. data/vendor/assets/stylesheets/uikit/core/base.scss +563 -0
  85. data/vendor/assets/stylesheets/uikit/core/block.scss +155 -0
  86. data/vendor/assets/stylesheets/uikit/core/breadcrumb.scss +86 -0
  87. data/vendor/assets/stylesheets/uikit/core/button.scss +406 -0
  88. data/vendor/assets/stylesheets/uikit/core/close.scss +132 -0
  89. data/vendor/assets/stylesheets/uikit/core/column.scss +209 -0
  90. data/vendor/assets/stylesheets/uikit/core/comment.scss +172 -0
  91. data/vendor/assets/stylesheets/uikit/core/contrast.scss +493 -0
  92. data/vendor/assets/stylesheets/uikit/core/cover.scss +70 -0
  93. data/vendor/assets/stylesheets/uikit/core/description-list.scss +71 -0
  94. data/vendor/assets/stylesheets/uikit/core/dropdown.scss +280 -0
  95. data/vendor/assets/stylesheets/uikit/core/flex.scss +320 -0
  96. data/vendor/assets/stylesheets/uikit/core/form.scss +629 -0
  97. data/vendor/assets/stylesheets/uikit/core/grid.scss +731 -0
  98. data/vendor/assets/stylesheets/uikit/core/icon.scss +930 -0
  99. data/vendor/assets/stylesheets/uikit/core/list.scss +102 -0
  100. data/vendor/assets/stylesheets/uikit/core/modal.scss +343 -0
  101. data/vendor/assets/stylesheets/uikit/core/nav.scss +468 -0
  102. data/vendor/assets/stylesheets/uikit/core/navbar.scss +325 -0
  103. data/vendor/assets/stylesheets/uikit/core/offcanvas.scss +203 -0
  104. data/vendor/assets/stylesheets/uikit/core/overlay.scss +534 -0
  105. data/vendor/assets/stylesheets/uikit/core/pagination.scss +197 -0
  106. data/vendor/assets/stylesheets/uikit/core/panel.scss +332 -0
  107. data/vendor/assets/stylesheets/uikit/core/print.scss +61 -0
  108. data/vendor/assets/stylesheets/uikit/core/subnav.scss +213 -0
  109. data/vendor/assets/stylesheets/uikit/core/switcher.scss +38 -0
  110. data/vendor/assets/stylesheets/uikit/core/tab.scss +368 -0
  111. data/vendor/assets/stylesheets/uikit/core/table.scss +147 -0
  112. data/vendor/assets/stylesheets/uikit/core/text.scss +136 -0
  113. data/vendor/assets/stylesheets/uikit/core/thumbnail.scss +122 -0
  114. data/vendor/assets/stylesheets/uikit/core/thumbnav.scss +122 -0
  115. data/vendor/assets/stylesheets/uikit/core/utility.scss +610 -0
  116. data/vendor/assets/stylesheets/uikit/core/variables.scss +23 -0
  117. data/vendor/assets/stylesheets/uikit/uikit-mixins.scss +327 -0
  118. data/vendor/assets/stylesheets/uikit/uikit-variables.scss +819 -0
  119. data/vendor/assets/stylesheets/uikit/uikit.scss +52 -0
  120. metadata +177 -0
@@ -0,0 +1,14 @@
1
+ //= depend_on_asset "fontawesome-webfont.eot"
2
+ //= depend_on_asset "fontawesome-webfont.otf"
3
+ //= depend_on_asset "fontawesome-webfont.svg"
4
+ //= depend_on_asset "fontawesome-webfont.ttf"
5
+ //= depend_on_asset "fontawesome-webfont.woff"
6
+ //= depend_on_asset "fontawesome-webfont.woff2"
7
+
8
+ @font-face {
9
+ font-family: "FontAwesome";
10
+ src: font-url('fontawesome-webfont.eot');
11
+ src: font-url('fontawesome-webfont.eot?#iefix') format('embedded-opentype'), font-url("fontawesome-webfont.otf") format("opentype"), font-url('fontawesome-webfont.woff2') format('woff2'), font-url('fontawesome-webfont.woff') format('woff'), font-url('fontawesome-webfont.ttf') format('truetype'), font-url('fontawesome-webfont.svg?#fontawesomeregular') format('svg');
12
+ font-weight: normal;
13
+ font-style: normal;
14
+ }
@@ -0,0 +1,7 @@
1
+ @charset "UTF-8";
2
+
3
+ @import "extra/font-awesome";
4
+
5
+ @import "uikit/uikit-variables";
6
+ @import "uikit/uikit-mixins";
7
+ @import "uikit/uikit";
@@ -0,0 +1,94 @@
1
+ // Name: Accordion
2
+ // Description: Defines styles for the accordion
3
+ //
4
+ // Component: `uk-accordion`
5
+ //
6
+ // Sub-objects: `uk-accordion-title`
7
+ // `uk-accordion-content`
8
+ //
9
+ // Markup:
10
+ //
11
+ // <!-- uk-accordion -->
12
+ // <div class="uk-accordion" data-uk-accordion>
13
+ // <h3 class="uk-accordion-title"></h3>
14
+ // <div class="uk-accordion-content">
15
+ // <p></p>
16
+ // </div>
17
+ // </div>
18
+ //
19
+ // ========================================================================
20
+
21
+
22
+ // Variables
23
+ // ========================================================================
24
+
25
+ $accordion-title-margin-bottom: 15px !default;
26
+ $accordion-title-padding-vertical: 5px !default;
27
+ $accordion-title-padding-horizontal: 15px !default;
28
+ $accordion-title-font-size: 18px !default;
29
+ $accordion-title-line-height: 24px !default;
30
+ $accordion-title-background: #eee !default;
31
+
32
+ $accordion-content-padding-horizontal: $accordion-title-padding-horizontal !default;
33
+ $accordion-content-padding-bottom: $accordion-title-padding-horizontal !default;
34
+
35
+
36
+ /* ========================================================================
37
+ Component: Accordion
38
+ ========================================================================== */
39
+
40
+ .uk-accordion {
41
+ @include hook-accordion();
42
+ }
43
+
44
+ /* Sub-object: `uk-accordion-title`
45
+ ========================================================================== */
46
+
47
+ .uk-accordion-title {
48
+ margin-top: 0;
49
+ margin-bottom: $accordion-title-margin-bottom;
50
+ padding: $accordion-title-padding-vertical $accordion-title-padding-horizontal;
51
+ background: $accordion-title-background;
52
+ font-size: $accordion-title-font-size;
53
+ line-height: $accordion-title-line-height;
54
+ cursor: pointer;
55
+ @include hook-accordion-title();
56
+ }
57
+
58
+
59
+ /* Sub-object: `uk-accordion-content`
60
+ ========================================================================== */
61
+
62
+ .uk-accordion-content {
63
+ padding: 0 $accordion-content-padding-horizontal $accordion-content-padding-bottom $accordion-content-padding-horizontal;
64
+ @include hook-accordion-content();
65
+ }
66
+
67
+ /*
68
+ * Micro clearfix to make panels more robust
69
+ */
70
+
71
+ .uk-accordion-content:before,
72
+ .uk-accordion-content:after {
73
+ content: "";
74
+ display: table;
75
+ }
76
+
77
+ .uk-accordion-content:after { clear: both; }
78
+
79
+ /*
80
+ * Remove margin from the last-child
81
+ */
82
+
83
+ .uk-accordion-content > :last-child { margin-bottom: 0; }
84
+
85
+
86
+ // Hooks
87
+ // ========================================================================
88
+
89
+ @include hook-accordion-misc();
90
+
91
+ // @mixin hook-accordion(){}
92
+ // @mixin hook-accordion-title(){}
93
+ // @mixin hook-accordion-content(){}
94
+ // @mixin hook-accordion-misc(){}
@@ -0,0 +1,107 @@
1
+ // Name: Autocomplete
2
+ // Description: Provides suggestions while you type into an input field
3
+ //
4
+ // Component: `uk-autocomplete`
5
+ //
6
+ // Modifier: (Nav) `uk-nav-autocomplete`
7
+ //
8
+ // States: `uk-active`
9
+ //
10
+ // ========================================================================
11
+
12
+
13
+ // Variables
14
+ // ========================================================================
15
+
16
+ // Nav modifier
17
+ $nav-autocomplete-color: #444 !default;
18
+ $nav-autocomplete-active-background: #00a8e6 !default;
19
+ $nav-autocomplete-active-color: #fff !default;
20
+ $nav-autocomplete-header-color: #999 !default;
21
+ $nav-autocomplete-divider-border: #ddd !default;
22
+ $nav-autocomplete-divider-border-width: 1px !default;
23
+
24
+
25
+ /* ========================================================================
26
+ Component: Autocomplete
27
+ ========================================================================== */
28
+
29
+ /*
30
+ * 1. Container width fits its content
31
+ * 2. Create position context
32
+ * 3. Prevent `inline-block` consequences
33
+ * 4. Remove the gap between the container and its child element
34
+ */
35
+
36
+ .uk-autocomplete {
37
+ /* 1 */
38
+ display: inline-block;
39
+ /* 2 */
40
+ position: relative;
41
+ /* 3 */
42
+ max-width: 100%;
43
+ /* 4 */
44
+ vertical-align: middle;
45
+ }
46
+
47
+ /* Legacy dropdown modifier */
48
+ .uk-dropdown-flip {
49
+ left: auto;
50
+ right: 0;
51
+ }
52
+
53
+ /* Nav modifier `uk-nav-autocomplete`
54
+ ========================================================================== */
55
+
56
+ /*
57
+ * Items
58
+ */
59
+
60
+ .uk-nav-autocomplete > li > a {
61
+ color: $nav-autocomplete-color;
62
+ @include hook-nav-autocomplete();
63
+ }
64
+
65
+ /*
66
+ * Active
67
+ * 1. Remove default focus style
68
+ */
69
+
70
+ .uk-nav-autocomplete > li.uk-active > a {
71
+ background: $nav-autocomplete-active-background;
72
+ color: $nav-autocomplete-active-color;
73
+ /* 1 */
74
+ outline: none;
75
+ @include hook-nav-autocomplete-active();
76
+ }
77
+
78
+ /*
79
+ * Sub-object: `uk-nav-header`
80
+ */
81
+
82
+ .uk-nav-autocomplete .uk-nav-header {
83
+ color: $nav-autocomplete-header-color;
84
+ @include hook-nav-autocomplete-header();
85
+ }
86
+
87
+ /*
88
+ * Sub-object: `uk-nav-divider`
89
+ */
90
+
91
+ .uk-nav-autocomplete .uk-nav-divider {
92
+ border-top: $nav-autocomplete-divider-border-width solid $nav-autocomplete-divider-border;
93
+ @include hook-nav-autocomplete-divider();
94
+ }
95
+
96
+
97
+ // Hooks
98
+ // ========================================================================
99
+
100
+ @include hook-autocomplete-misc();
101
+
102
+ // @mixin hook-nav-autocomplete(){}
103
+ // @mixin hook-nav-autocomplete-active(){}
104
+ // @mixin hook-nav-autocomplete-header(){}
105
+ // @mixin hook-nav-autocomplete-divider(){}
106
+
107
+ // @mixin hook-autocomplete-misc(){}
@@ -0,0 +1,197 @@
1
+ // Name: Datepicker
2
+ // Description: Defines styles for a datepicker
3
+ //
4
+ // Component: `uk-datepicker`
5
+ //
6
+ // Modifiers: `uk-datepicker-nav`
7
+ // `uk-datepicker-previous`
8
+ // `uk-datepicker-next`
9
+ // `uk-datepicker-heading`
10
+ // `uk-datepicker-table`
11
+ // `uk-datepicker-table-muted`
12
+ //
13
+ // ========================================================================
14
+
15
+
16
+ // Variables
17
+ // ========================================================================
18
+
19
+ $datepicker-z-index: 1050 !default;
20
+ $datepicker-animation: uk-fade !default;
21
+
22
+ $datepicker-nav-height: 20px !default;
23
+ $datepicker-nav-margin-bottom: 15px !default;
24
+ $datepicker-nav-color: #444 !default;
25
+ $datepicker-nav-hover-color: #444 !default;
26
+ $datepicker-previous-icon: "\f053" !default;
27
+ $datepicker-next-icon: "\f054" !default;
28
+
29
+ $datepicker-table-width: 26px !default;
30
+ $datepicker-table-height: 24px !default;
31
+ $datepicker-table-color: #444 !default;
32
+
33
+ $datepicker-table-hover-background: #ddd !default;
34
+ $datepicker-table-hover-color: #444 !default;
35
+ $datepicker-table-onclick-background: #ccc !default;
36
+ $datepicker-table-onclick-color: #444 !default;
37
+
38
+ $datepicker-table-active-background: #00a8e6 !default;
39
+ $datepicker-table-active-color: #fff !default;
40
+
41
+ $datepicker-table-muted-color: #999 !default;
42
+
43
+
44
+ /* ========================================================================
45
+ Component: Datepicker
46
+ ========================================================================== */
47
+
48
+ /*
49
+ * 1. Highest z-index
50
+ * 2. Reset dropdown width
51
+ * 3. Set animation
52
+ * 4. Needed for scale animation
53
+ */
54
+
55
+ .uk-datepicker {
56
+ /* 1 */
57
+ z-index: $datepicker-z-index;
58
+ /* 2 */
59
+ width: auto;
60
+ /* 3 */
61
+ -webkit-animation: $datepicker-animation 0.2s ease-in-out;
62
+ animation: $datepicker-animation 0.2s ease-in-out;
63
+ /* 4 */
64
+ -webkit-transform-origin: 0 0;
65
+ transform-origin: 0 0;
66
+ }
67
+
68
+
69
+ /* Sub-object: `uk-datepicker-nav`
70
+ ========================================================================== */
71
+
72
+ .uk-datepicker-nav {
73
+ margin-bottom: $datepicker-nav-margin-bottom;
74
+ text-align: center;
75
+ line-height: $datepicker-nav-height;
76
+ @include hook-datepicker-nav();
77
+ }
78
+
79
+ /*
80
+ * Micro clearfix
81
+ */
82
+
83
+ .uk-datepicker-nav:before,
84
+ .uk-datepicker-nav:after {
85
+ content: "";
86
+ display: table;
87
+ }
88
+
89
+ .uk-datepicker-nav:after { clear: both; }
90
+
91
+ /*
92
+ * Previous and next navigation
93
+ */
94
+
95
+ .uk-datepicker-nav a {
96
+ color: $datepicker-nav-color;
97
+ text-decoration: none;
98
+ @include hook-datepicker-nav-item();
99
+ }
100
+
101
+ .uk-datepicker-nav a:hover { color: $datepicker-nav-hover-color; }
102
+
103
+ .uk-datepicker-previous { float: left; }
104
+ .uk-datepicker-next { float: right; }
105
+
106
+ .uk-datepicker-previous:after,
107
+ .uk-datepicker-next:after {
108
+ width: $datepicker-nav-height;
109
+ font-family: FontAwesome;
110
+ }
111
+
112
+ .uk-datepicker-previous:after { content: $datepicker-previous-icon; }
113
+ .uk-datepicker-next:after { content: $datepicker-next-icon; }
114
+
115
+
116
+ /* Sub-object: `uk-datepicker-heading`
117
+ ========================================================================== */
118
+
119
+ .uk-datepicker-heading {}
120
+
121
+
122
+ /* Sub-object: `uk-datepicker-table`
123
+ ========================================================================== */
124
+
125
+ /* Block element behavior */
126
+ .uk-datepicker-table { width: 100%; }
127
+
128
+ .uk-datepicker-table th,
129
+ .uk-datepicker-table td { padding: 2px; }
130
+
131
+ .uk-datepicker-table th { font-size: 12px; }
132
+
133
+ /*
134
+ * Item
135
+ */
136
+
137
+ .uk-datepicker-table a {
138
+ display: block;
139
+ width: $datepicker-table-width;
140
+ line-height: $datepicker-table-height;
141
+ text-align: center;
142
+ color: $datepicker-table-color;
143
+ text-decoration: none;
144
+ @include hook-datepicker-table-item();
145
+ }
146
+
147
+ /*
148
+ * Sub-object: `uk-datepicker-table-muted`
149
+ */
150
+
151
+ a.uk-datepicker-table-muted { color: $datepicker-table-muted-color; }
152
+
153
+ /*
154
+ * Hover
155
+ * 1. Apply hover style also to focus state
156
+ * 2. Remove default focus style
157
+ */
158
+
159
+ .uk-datepicker-table a:hover,
160
+ .uk-datepicker-table a:focus { // 1
161
+ background-color: $datepicker-table-hover-background;
162
+ color: $datepicker-table-hover-color;
163
+ /* 2 */
164
+ outline: none;
165
+ @include hook-datepicker-table-item-hover();
166
+ }
167
+
168
+ /* OnClick */
169
+ .uk-datepicker-table a:active {
170
+ background-color: $datepicker-table-onclick-background;
171
+ color: $datepicker-table-onclick-color;
172
+ @include hook-datepicker-table-item-onclick();
173
+ }
174
+
175
+ /*
176
+ * Active
177
+ */
178
+
179
+ .uk-datepicker-table a.uk-active {
180
+ background: $datepicker-table-active-background;
181
+ color: $datepicker-table-active-color;
182
+ @include hook-datepicker-table-item-active();
183
+ }
184
+
185
+
186
+ // Hooks
187
+ // ========================================================================
188
+
189
+ @include hook-datepicker-misc();
190
+
191
+ // @mixin hook-datepicker-nav(){}
192
+ // @mixin hook-datepicker-nav-item(){}
193
+ // @mixin hook-datepicker-table-item(){}
194
+ // @mixin hook-datepicker-table-item-hover(){}
195
+ // @mixin hook-datepicker-table-item-onclick(){}
196
+ // @mixin hook-datepicker-table-item-active(){}
197
+ // @mixin hook-datepicker-misc(){}
@@ -0,0 +1,212 @@
1
+ // Name: Dotnav
2
+ // Description: Defines styles for a dot navigation
3
+ //
4
+ // Component: `uk-dotnav`
5
+ //
6
+ // Modifier: `uk-dotnav-contrast`
7
+ // `uk-dotnav-vertical`
8
+ //
9
+ // States: `uk-active`
10
+ //
11
+ // Markup:
12
+ //
13
+ // <!-- uk-dotnav -->
14
+ // <ul class="uk-dotnav">
15
+ // <li class="uk-active"><a href=""></a></li>
16
+ // <li><a href=""></a></li>
17
+ // </ul>
18
+ //
19
+ // ========================================================================
20
+
21
+
22
+ // Variables
23
+ // ========================================================================
24
+
25
+ $dotnav-margin-horizontal: 15px !default;
26
+ $dotnav-margin-vertical: $dotnav-margin-horizontal !default;
27
+
28
+ $dotnav-width: 20px !default;
29
+ $dotnav-height: $dotnav-width !default;
30
+ $dotnav-background: rgba(50,50,50,0.1) !default;
31
+
32
+ $dotnav-hover-background: rgba(50,50,50,0.4) !default;
33
+ $dotnav-onclick-background: rgba(50,50,50,0.6) !default;
34
+ $dotnav-active-background: rgba(50,50,50,0.4) !default;
35
+
36
+ $dotnav-contrast-background: rgba(255,255,255,0.4) !default;
37
+ $dotnav-contrast-hover-background: rgba(255,255,255,0.7) !default;
38
+ $dotnav-contrast-onclick-background: rgba(255,255,255,0.9) !default;
39
+ $dotnav-contrast-active-background: rgba(255,255,255,0.9) !default;
40
+
41
+
42
+ /* ========================================================================
43
+ Component: Dotnav
44
+ ========================================================================== */
45
+
46
+ /*
47
+ * 1. Gutter
48
+ * 2. Remove default list style
49
+ */
50
+
51
+ .uk-dotnav {
52
+ display: -ms-flexbox;
53
+ display: -webkit-flex;
54
+ display: flex;
55
+ -ms-flex-wrap: wrap;
56
+ -webkit-flex-wrap: wrap;
57
+ flex-wrap: wrap;
58
+ /* 1 */
59
+ margin-left: -$dotnav-margin-horizontal;
60
+ margin-top: -$dotnav-margin-vertical;
61
+ /* 2 */
62
+ padding: 0;
63
+ list-style: none;
64
+ }
65
+
66
+ /*
67
+ * 1. Space is allocated solely based on content dimensions
68
+ * 2. Horizontal gutter is using `padding` so `uk-width-*` classes can be applied
69
+ */
70
+
71
+ .uk-dotnav > * {
72
+ /* 1 */
73
+ -ms-flex: none;
74
+ -webkit-flex: none;
75
+ flex: none;
76
+ /* 2 */
77
+ padding-left: $dotnav-margin-horizontal;
78
+ margin-top: $dotnav-margin-vertical;
79
+ }
80
+
81
+ /*
82
+ * DEPRECATED IE9 Support
83
+ */
84
+
85
+ .uk-dotnav:before,
86
+ .uk-dotnav:after {
87
+ content: "";
88
+ display: block;
89
+ overflow: hidden;
90
+ }
91
+
92
+ .uk-dotnav:after { clear: both; }
93
+
94
+ .uk-dotnav > * { float: left; }
95
+
96
+
97
+ /* Items
98
+ ========================================================================== */
99
+
100
+ /*
101
+ * Items
102
+ * 1. Hide text if present
103
+ */
104
+
105
+ .uk-dotnav > * > * {
106
+ display: block;
107
+ box-sizing: content-box;
108
+ width: $dotnav-width;
109
+ height: $dotnav-height;
110
+ border-radius: 50%;
111
+ background: $dotnav-background;
112
+ /* 1 */
113
+ text-indent: 100%;
114
+ overflow: hidden;
115
+ white-space: nowrap;
116
+ @include hook-dotnav-item();
117
+ }
118
+
119
+ /*
120
+ * Hover
121
+ * 1. Apply hover style also to focus state
122
+ * 2. Remove default focus style
123
+ */
124
+
125
+ .uk-dotnav > * > :hover,
126
+ .uk-dotnav > * > :focus { // 1
127
+ background: $dotnav-hover-background;
128
+ /* 2 */
129
+ outline: none;
130
+ @include hook-dotnav-item-hover();
131
+ }
132
+
133
+ /* OnClick */
134
+ .uk-dotnav > * > :active {
135
+ background: $dotnav-onclick-background;
136
+ @include hook-dotnav-item-onclick();
137
+ }
138
+
139
+ /* Active */
140
+ .uk-dotnav > .uk-active > * {
141
+ background: $dotnav-active-background;
142
+ @include hook-dotnav-item-active();
143
+ }
144
+
145
+
146
+ /* Modifier: `uk-dotnav-contrast`
147
+ ========================================================================== */
148
+
149
+ .uk-dotnav-contrast > * > * {
150
+ background: $dotnav-contrast-background;
151
+ @include hook-dotnav-contrast-item();
152
+ }
153
+
154
+ /*
155
+ * Hover
156
+ * 1. Apply hover style also to focus state
157
+ */
158
+
159
+ .uk-dotnav-contrast > * > :hover,
160
+ .uk-dotnav-contrast > * > :focus { // 1
161
+ background: $dotnav-contrast-hover-background;
162
+ @include hook-dotnav-contrast-item-hover();
163
+ }
164
+
165
+ /* OnClick */
166
+ .uk-dotnav-contrast > * > :active {
167
+ background: $dotnav-contrast-onclick-background;
168
+ @include hook-dotnav-contrast-item-onclick();
169
+ }
170
+
171
+ /* Active */
172
+ .uk-dotnav-contrast > .uk-active > * {
173
+ background: $dotnav-contrast-active-background;
174
+ @include hook-dotnav-contrast-item-active();
175
+ }
176
+
177
+
178
+ /* Modifier: 'uk-dotnav-vertical'
179
+ ========================================================================== */
180
+
181
+ /*
182
+ * DEPRECATED
183
+ */
184
+
185
+ .uk-dotnav-vertical {
186
+ -ms-flex-direction: column;
187
+ -webkit-flex-direction: column;
188
+ flex-direction: column;
189
+ }
190
+
191
+ /*
192
+ * DEPRECATED IE9 Support
193
+ */
194
+
195
+ .uk-dotnav-vertical > * { float: none; }
196
+
197
+
198
+
199
+ // Hooks
200
+ // ========================================================================
201
+
202
+ @include hook-dotnav-misc();
203
+
204
+ // @mixin hook-dotnav-item(){}
205
+ // @mixin hook-dotnav-item-hover(){}
206
+ // @mixin hook-dotnav-item-onclick(){}
207
+ // @mixin hook-dotnav-item-active(){}
208
+ // @mixin hook-dotnav-contrast-item(){}
209
+ // @mixin hook-dotnav-contrast-item-hover(){}
210
+ // @mixin hook-dotnav-contrast-item-onclick(){}
211
+ // @mixin hook-dotnav-contrast-item-active(){}
212
+ // @mixin hook-dotnav-misc(){}