middleman-oulu 0.6.7 → 0.6.8

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0469ffb3a31e35d2eb3da135851d013b48c2d156
4
- data.tar.gz: 9bbf0b2484f8675c633df34e6697e8b1f8913d64
3
+ metadata.gz: f4f58b42a0ffcbb056c849ed9fc59679b602f66f
4
+ data.tar.gz: 9ec7329ed42291e1f92d7f5efb175cb517ae1758
5
5
  SHA512:
6
- metadata.gz: 54709c7e4cadb82d3e8b5f31c65ffc236ba2671452f41ce4c00efbff8d178d90f223650a63f33e2d196c8254f07c644689c993a983232cb9566875706e11bf3a
7
- data.tar.gz: 317217fed70a80a1ad0fd73814273d36ee53bafff5593d99107fe4683b156d2ab6893a1fe7990e0ca1476e2f2dec28305fc3e81fc0c99258ca113292c253f369
6
+ metadata.gz: 19b077a46608ffadb17fadb617ddf503ae84e554e5f17d0c528c5624ff6450bc5ce60d0e55fcd94d48828e6e36d9a7076586738707c6e4bea1bedea8003f85d2
7
+ data.tar.gz: 11537325410dd106bef8677f297f24f4679cadeef28a5b1e6294213fb45d48623ab42e3a6206598be561d3fce835ef142be1a4521e3e421f560dc4df727c7f6d
@@ -0,0 +1,338 @@
1
+ /*!
2
+ * Waves v0.6.4
3
+ * http://fian.my.id/Waves
4
+ *
5
+ * Copyright 2014 Alfiana E. Sibuea and other contributors
6
+ * Released under the MIT license
7
+ * https://github.com/fians/Waves/blob/master/LICENSE
8
+ */
9
+
10
+ ;(function(window) {
11
+ 'use strict';
12
+
13
+ var Waves = Waves || {};
14
+ var $$ = document.querySelectorAll.bind(document);
15
+
16
+ // Find exact position of element
17
+ function isWindow(obj) {
18
+ return obj !== null && obj === obj.window;
19
+ }
20
+
21
+ function getWindow(elem) {
22
+ return isWindow(elem) ? elem : elem.nodeType === 9 && elem.defaultView;
23
+ }
24
+
25
+ function offset(elem) {
26
+ var docElem, win,
27
+ box = {top: 0, left: 0},
28
+ doc = elem && elem.ownerDocument;
29
+
30
+ docElem = doc.documentElement;
31
+
32
+ if (typeof elem.getBoundingClientRect !== typeof undefined) {
33
+ box = elem.getBoundingClientRect();
34
+ }
35
+ win = getWindow(doc);
36
+ return {
37
+ top: box.top + win.pageYOffset - docElem.clientTop,
38
+ left: box.left + win.pageXOffset - docElem.clientLeft
39
+ };
40
+ }
41
+
42
+ function convertStyle(obj) {
43
+ var style = '';
44
+
45
+ for (var a in obj) {
46
+ if (obj.hasOwnProperty(a)) {
47
+ style += (a + ':' + obj[a] + ';');
48
+ }
49
+ }
50
+
51
+ return style;
52
+ }
53
+
54
+ var Effect = {
55
+
56
+ // Effect delay
57
+ duration: 750,
58
+
59
+ show: function(e, element) {
60
+
61
+ // Disable right click
62
+ if (e.button === 2) {
63
+ return false;
64
+ }
65
+
66
+ var el = element || this;
67
+
68
+ // Create ripple
69
+ var ripple = document.createElement('div');
70
+ ripple.className = 'waves-ripple';
71
+ el.appendChild(ripple);
72
+
73
+ // Get click coordinate and element witdh
74
+ var pos = offset(el);
75
+ var relativeY = (e.pageY - pos.top);
76
+ var relativeX = (e.pageX - pos.left);
77
+ var scale = 'scale('+((el.clientWidth / 100) * 10)+')';
78
+
79
+ // Support for touch devices
80
+ if ('touches' in e) {
81
+ relativeY = (e.touches[0].pageY - pos.top);
82
+ relativeX = (e.touches[0].pageX - pos.left);
83
+ }
84
+
85
+ // Attach data to element
86
+ ripple.setAttribute('data-hold', Date.now());
87
+ ripple.setAttribute('data-scale', scale);
88
+ ripple.setAttribute('data-x', relativeX);
89
+ ripple.setAttribute('data-y', relativeY);
90
+
91
+ // Set ripple position
92
+ var rippleStyle = {
93
+ 'top': relativeY+'px',
94
+ 'left': relativeX+'px'
95
+ };
96
+
97
+ ripple.className = ripple.className + ' waves-notransition';
98
+ ripple.setAttribute('style', convertStyle(rippleStyle));
99
+ ripple.className = ripple.className.replace('waves-notransition', '');
100
+
101
+ // Scale the ripple
102
+ rippleStyle['-webkit-transform'] = scale;
103
+ rippleStyle['-moz-transform'] = scale;
104
+ rippleStyle['-ms-transform'] = scale;
105
+ rippleStyle['-o-transform'] = scale;
106
+ rippleStyle.transform = scale;
107
+ rippleStyle.opacity = '1';
108
+
109
+ rippleStyle['-webkit-transition-duration'] = Effect.duration + 'ms';
110
+ rippleStyle['-moz-transition-duration'] = Effect.duration + 'ms';
111
+ rippleStyle['-o-transition-duration'] = Effect.duration + 'ms';
112
+ rippleStyle['transition-duration'] = Effect.duration + 'ms';
113
+
114
+ rippleStyle['-webkit-transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
115
+ rippleStyle['-moz-transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
116
+ rippleStyle['-o-transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
117
+ rippleStyle['transition-timing-function'] = 'cubic-bezier(0.250, 0.460, 0.450, 0.940)';
118
+
119
+ ripple.setAttribute('style', convertStyle(rippleStyle));
120
+ },
121
+
122
+ hide: function(e) {
123
+ TouchHandler.touchup(e);
124
+
125
+ var el = this;
126
+ var width = el.clientWidth * 1.4;
127
+
128
+ // Get first ripple
129
+ var ripple = null;
130
+ var ripples = el.getElementsByClassName('waves-ripple');
131
+ if (ripples.length > 0) {
132
+ ripple = ripples[ripples.length - 1];
133
+ } else {
134
+ return false;
135
+ }
136
+
137
+ var relativeX = ripple.getAttribute('data-x');
138
+ var relativeY = ripple.getAttribute('data-y');
139
+ var scale = ripple.getAttribute('data-scale');
140
+
141
+ // Get delay beetween mousedown and mouse leave
142
+ var diff = Date.now() - Number(ripple.getAttribute('data-hold'));
143
+ var delay = 350 - diff;
144
+
145
+ if (delay < 0) {
146
+ delay = 0;
147
+ }
148
+
149
+ // Fade out ripple after delay
150
+ setTimeout(function() {
151
+ var style = {
152
+ 'top': relativeY+'px',
153
+ 'left': relativeX+'px',
154
+ 'opacity': '0',
155
+
156
+ // Duration
157
+ '-webkit-transition-duration': Effect.duration + 'ms',
158
+ '-moz-transition-duration': Effect.duration + 'ms',
159
+ '-o-transition-duration': Effect.duration + 'ms',
160
+ 'transition-duration': Effect.duration + 'ms',
161
+ '-webkit-transform': scale,
162
+ '-moz-transform': scale,
163
+ '-ms-transform': scale,
164
+ '-o-transform': scale,
165
+ 'transform': scale,
166
+ };
167
+
168
+ ripple.setAttribute('style', convertStyle(style));
169
+
170
+ setTimeout(function() {
171
+ try {
172
+ el.removeChild(ripple);
173
+ } catch(e) {
174
+ return false;
175
+ }
176
+ }, Effect.duration);
177
+ }, delay);
178
+ },
179
+
180
+ // Little hack to make <input> can perform waves effect
181
+ wrapInput: function(elements) {
182
+ for (var a = 0; a < elements.length; a++) {
183
+ var el = elements[a];
184
+
185
+ if (el.tagName.toLowerCase() === 'input') {
186
+ var parent = el.parentNode;
187
+
188
+ // If input already have parent just pass through
189
+ if (parent.tagName.toLowerCase() === 'i' && parent.className.indexOf('waves-effect') !== -1) {
190
+ continue;
191
+ }
192
+
193
+ // Put element class and style to the specified parent
194
+ var wrapper = document.createElement('i');
195
+ wrapper.className = el.className + ' waves-input-wrapper';
196
+
197
+ var elementStyle = el.getAttribute('style');
198
+
199
+ if (!elementStyle) {
200
+ elementStyle = '';
201
+ }
202
+
203
+ wrapper.setAttribute('style', elementStyle);
204
+
205
+ el.className = 'waves-button-input';
206
+ el.removeAttribute('style');
207
+
208
+ // Put element as child
209
+ parent.replaceChild(wrapper, el);
210
+ wrapper.appendChild(el);
211
+ }
212
+ }
213
+ }
214
+ };
215
+
216
+
217
+ /**
218
+ * Disable mousedown event for 500ms during and after touch
219
+ */
220
+ var TouchHandler = {
221
+ /* uses an integer rather than bool so there's no issues with
222
+ * needing to clear timeouts if another touch event occurred
223
+ * within the 500ms. Cannot mouseup between touchstart and
224
+ * touchend, nor in the 500ms after touchend. */
225
+ touches: 0,
226
+ allowEvent: function(e) {
227
+ var allow = true;
228
+
229
+ if (e.type === 'touchstart') {
230
+ TouchHandler.touches += 1; //push
231
+ } else if (e.type === 'touchend' || e.type === 'touchcancel') {
232
+ setTimeout(function() {
233
+ if (TouchHandler.touches > 0) {
234
+ TouchHandler.touches -= 1; //pop after 500ms
235
+ }
236
+ }, 500);
237
+ } else if (e.type === 'mousedown' && TouchHandler.touches > 0) {
238
+ allow = false;
239
+ }
240
+
241
+ return allow;
242
+ },
243
+ touchup: function(e) {
244
+ TouchHandler.allowEvent(e);
245
+ }
246
+ };
247
+
248
+
249
+ /**
250
+ * Delegated click handler for .waves-effect element.
251
+ * returns null when .waves-effect element not in "click tree"
252
+ */
253
+ function getWavesEffectElement(e) {
254
+ if (TouchHandler.allowEvent(e) === false) {
255
+ return null;
256
+ }
257
+
258
+ var element = null;
259
+ var target = e.target || e.srcElement;
260
+
261
+ while (target.parentElement !== null) {
262
+ if (!(target instanceof SVGElement) && target.className.indexOf('waves-effect') !== -1) {
263
+ element = target;
264
+ break;
265
+ } else if (target.classList.contains('waves-effect')) {
266
+ element = target;
267
+ break;
268
+ }
269
+ target = target.parentElement;
270
+ }
271
+
272
+ return element;
273
+ }
274
+
275
+ /**
276
+ * Bubble the click and show effect if .waves-effect elem was found
277
+ */
278
+ function showEffect(e) {
279
+ var element = getWavesEffectElement(e);
280
+
281
+ if (element !== null) {
282
+ Effect.show(e, element);
283
+
284
+ if ('ontouchstart' in window) {
285
+ element.addEventListener('touchend', Effect.hide, false);
286
+ element.addEventListener('touchcancel', Effect.hide, false);
287
+ }
288
+
289
+ element.addEventListener('mouseup', Effect.hide, false);
290
+ element.addEventListener('mouseleave', Effect.hide, false);
291
+ }
292
+ }
293
+
294
+ Waves.displayEffect = function(options) {
295
+ options = options || {};
296
+
297
+ if ('duration' in options) {
298
+ Effect.duration = options.duration;
299
+ }
300
+
301
+ //Wrap input inside <i> tag
302
+ Effect.wrapInput($$('.waves-effect'));
303
+
304
+ if ('ontouchstart' in window) {
305
+ document.body.addEventListener('touchstart', showEffect, false);
306
+ }
307
+
308
+ document.body.addEventListener('mousedown', showEffect, false);
309
+ };
310
+
311
+ /**
312
+ * Attach Waves to an input element (or any element which doesn't
313
+ * bubble mouseup/mousedown events).
314
+ * Intended to be used with dynamically loaded forms/inputs, or
315
+ * where the user doesn't want a delegated click handler.
316
+ */
317
+ Waves.attach = function(element) {
318
+ //FUTURE: automatically add waves classes and allow users
319
+ // to specify them with an options param? Eg. light/classic/button
320
+ if (element.tagName.toLowerCase() === 'input') {
321
+ Effect.wrapInput([element]);
322
+ element = element.parentElement;
323
+ }
324
+
325
+ if ('ontouchstart' in window) {
326
+ element.addEventListener('touchstart', showEffect, false);
327
+ }
328
+
329
+ element.addEventListener('mousedown', showEffect, false);
330
+ };
331
+
332
+ window.Waves = Waves;
333
+
334
+ document.addEventListener('DOMContentLoaded', function() {
335
+ Waves.displayEffect();
336
+ }, false);
337
+
338
+ })(window);
@@ -0,0 +1,45 @@
1
+ =button-base
2
+ +inline-block(middle)
3
+ cursor: pointer
4
+ +box-sizing(border-box)
5
+ text-align: center
6
+ +user-select(none)
7
+ touch-action: manipulation
8
+ text-decoration: none
9
+ -webkit-tap-highlight-color: transparent
10
+
11
+ =button-size($size, $border-width: 0)
12
+ $font-size: ""
13
+ @if $size == 'xs'
14
+ $font-size: 12px
15
+ @else if $size == 'sm'
16
+ $font-size: 14px
17
+ @else if $size == 'md'
18
+ $font-size: 16px
19
+ @else if $size == 'lg'
20
+ $font-size: 18px
21
+ @else if $size == 'xl'
22
+ $font-size: 20px
23
+ $height: round($font-size * 2 + $font-size/2.2)
24
+ +border(all, $border-width)
25
+ +text-block($font-size $height - ($border-width*2))
26
+ +rem('height', $height)
27
+ +padding(horizontal, $height/2)
28
+ @if $font-size > 12px
29
+ font-weight: bold
30
+ i
31
+ @if $font-size > 28
32
+ +rem('margin-right', $font-size/4)
33
+ @else
34
+ +rem('margin-right', $font-size/3)
35
+ &.has-right-icon
36
+ i
37
+ margin-right: 0
38
+ @if $font-size > 28
39
+ +rem('margin-left', $font-size/4)
40
+ @else
41
+ +rem('margin-left', $font-size/3)
42
+
43
+ =button-group
44
+ .is-button-group
45
+ @content
@@ -0,0 +1,27 @@
1
+ // button option
2
+ [class^="is-button"]
3
+ &.is-block
4
+ display: block
5
+ width: 100%
6
+ &.has-image
7
+ height: auto
8
+ .is-button-note
9
+ +inline-block
10
+ +rem('font-size', 12px)
11
+ +rem('margin-left', 6px)
12
+
13
+ // button-group
14
+ .is-button-group
15
+ font-size: 0
16
+ >li
17
+ display: inline
18
+ letter-spacing: normal
19
+ font-size: 0
20
+ [class^="is-button"]
21
+ +border-radius(0)
22
+ &:first-child
23
+ [class^="is-button"]
24
+ +border-left-radius(4px)
25
+ &:last-child
26
+ [class^="is-button"]
27
+ +border-right-radius(4px)
@@ -0,0 +1,51 @@
1
+ $button-sizes: xs, sm, md, lg, xl
2
+ $button-color-names: default, primary, success, warning, danger
3
+ $button-styles: normal, border, flat-emboss, material
4
+
5
+ @import button-base
6
+
7
+ @import styles/normal
8
+ @import styles/border
9
+ @import styles/flat-emboss
10
+ @import styles/material
11
+
12
+ @import button-helper
13
+
14
+ =button($style, $size, $color, $options: false)
15
+ +button-base
16
+ @if $style == normal
17
+ +button-size($size, 1px)
18
+ +normal-button($color)
19
+ @else if $style == border
20
+ +button-size($size, 1px)
21
+ +border-button($color)
22
+ @else if $style == flat-emboss
23
+ +button-size($size)
24
+ +flat-emboss-button($color)
25
+ @else if $style == material
26
+ +button-size($size)
27
+ +material-button($color)
28
+ @each $option in $options
29
+ @if $option == 'left'
30
+ text-align: left
31
+ @if $option == 'right'
32
+ text-align: right
33
+
34
+ @each $button-size in $button-sizes
35
+ $button-color-name: ''
36
+ $button-color: ''
37
+ $button-style: ''
38
+ @each $button-color-name in $button-color-names
39
+ @each $button-style in $button-styles
40
+ .is-button-#{$button-style}-#{$button-size}-#{$button-color-name}
41
+ @if $button-color-name == default
42
+ $button-color: $default
43
+ @else if $button-color-name == primary
44
+ $button-color: $primary
45
+ @else if $button-color-name == success
46
+ $button-color: $success
47
+ @else if $button-color-name == warning
48
+ $button-color: $warning
49
+ @else if $button-color-name == danger
50
+ $button-color: $danger
51
+ +button($button-style, $button-size, $button-color)
@@ -0,0 +1,25 @@
1
+ =border-button($color)
2
+ +border(all, solid)
3
+ +border-radius(4px)
4
+ @if $color == $default
5
+ $color: $text-color
6
+ @else
7
+ color: $color
8
+ border-color: $color
9
+ background-color: transparent
10
+ &:link,
11
+ &:visited
12
+ color: $color
13
+ &:hover,
14
+ &.hover,
15
+ &.is-hover
16
+ color: $color
17
+ background-color: rgba($color, .1)
18
+ &:active,
19
+ &.active,
20
+ &.is-active
21
+ color: $color
22
+ background-color: rgba($color, .3)
23
+ &.is-checked
24
+ color: $default-text-reversal
25
+ background-color: $color
@@ -0,0 +1,25 @@
1
+ =flat-emboss-button($color: blue)
2
+ +transition(.5s (background-image))
3
+ +border-radius(4px)
4
+ background-color: $color
5
+ color: luma_contrast_color($color)
6
+ box-shadow: shade($color, 18%) 0 3px 0
7
+ text-shadow: if(luma_bright($color), lighten($color, 8%) 0 1px 0, darken($color, 8%) 0 -1px 0)
8
+ &:hover,
9
+ .hover,
10
+ .is-hover
11
+ $color: lighten($color, 6%)
12
+ @if $color == white
13
+ background-color: #f4f4f4
14
+ @else
15
+ background-color: $color
16
+ &:active,
17
+ .active,
18
+ .is-active
19
+ $color: lighten($color, 6%)
20
+ @if $color == white
21
+ background-color: #f4f4f4
22
+ @else
23
+ background-color: $color
24
+ box-shadow: shade($color, 18%) 0 2px 0
25
+ +top(1px)
@@ -0,0 +1,89 @@
1
+ =waves-effect($color: black)
2
+ +relative(1)
3
+ overflow: hidden
4
+ will-change: opacity, transform
5
+ +transition(all .3s ease-out)
6
+ .waves-ripple
7
+ +absolute
8
+ border-radius: 50%
9
+ +block-size(20px)
10
+ +rem('margin-top', -10px)
11
+ +rem('margin-left', -10px)
12
+ opacity: 0
13
+ @if $color == 'light'
14
+ background-color: rgba(white, 0.45)
15
+ @else if $color == 'red'
16
+ background-color: rgba(#F44336, .70)
17
+ @else if $color == 'yellow'
18
+ background-color: rgba(#FFEB3B, .70)
19
+ @else if $color == 'orange'
20
+ background-color: rgba(#FF9800, .70)
21
+ @else if $color == 'purple'
22
+ background-color: rgba(#9C27B0, 0.70)
23
+ @else if $color == 'green'
24
+ background-color: rgba(#4CAF50, 0.70)
25
+ @else if $color == 'teal'
26
+ background-color: rgba(#009688, 0.70)
27
+ @else if luma_bright(lighten($color, 5%))
28
+ background-color: lighten($color, 45%)
29
+ @else
30
+ background-color: darken($color, 20%)
31
+ +transition(all 0.7s ease-out)
32
+ -webkit-transition-property: -webkit-transform, opacity
33
+ -moz-transition-property: -moz-transform, opacity
34
+ -o-transition-property: -o-transform, opacity
35
+ transition-property: transform, opacity
36
+ +transform(scale(0))
37
+ pointer-events: none
38
+
39
+ =material-button($color: blue)
40
+ +transition(.2s ease-out)
41
+ +border-radius(2px)
42
+ background-color: $color
43
+ color: luma_contrast_color($color)
44
+ box-shadow: 0 2px 5px 0 rgba(black, .16), 0 2px 10px 0 rgba(black, .12)
45
+ +rem('letter-spacing', .5px)
46
+ +waves-effect($color)
47
+ &:hover,
48
+ .hover,
49
+ .is-hover
50
+ $color: lighten($color, 5%)
51
+ box-shadow: 0 5px 11px 0 rgba(black, .18), 0 4px 15px 0 rgba(black, .15)
52
+ @if $color == white
53
+ background-color: #f4f4f4
54
+ @else
55
+ background-color: $color
56
+ &:active,
57
+ .active,
58
+ .is-active
59
+ $color: lighten($color, 6%)
60
+ @if $color == white
61
+ background-color: #f4f4f4
62
+ @else
63
+ background-color: $color
64
+ box-shadow: shade($color, 18%) 0 2px 0
65
+ +top(1px)
66
+
67
+ .waves-effect
68
+ +waves-effect($color: white)
69
+ .waves-notransition
70
+ +transition(none #{"!important"})
71
+ .waves-circle
72
+ +transform(translateZ(0))
73
+ -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%)
74
+ .waves-input-wrapper
75
+ border-radius: 0.2em
76
+ vertical-align: bottom
77
+ .waves-button-input
78
+ +relative(1, top 0, left 0)
79
+ .waves-circle
80
+ text-align: center
81
+ +size(2.5em)
82
+ line-height: 2.5em
83
+ border-radius: 50%
84
+ -webkit-mask-image: none
85
+ .waves-block
86
+ display: block
87
+ /* Firefox Bug: link not triggered */
88
+ a.waves-effect .waves-ripple
89
+ z-index: -1
@@ -0,0 +1,25 @@
1
+ =normal-button-color($color)
2
+ background-color: $color
3
+ +background-image(linear-gradient(top, tint($color, 6%) 0%, shade($color, 6%) 100%))
4
+ color: luma_contrast_color($color)
5
+ +border(all, solid)
6
+ border-color: shade($color, 10%) shade($color, 16%) shade($color, 26%)
7
+ text-shadow: if(luma_bright($color), lighten($color, 18%) 0 1px 0, darken($color, 18%) 0 -1px 0)
8
+
9
+ =normal-button($color: blue)
10
+ +transition(.5s (background-image))
11
+ +border-radius(4px)
12
+ +normal-button-color($color)
13
+ box-shadow: tint($color, 32%) 0 1px 0 inset, shade($color, 26%) 0 1px 0, rgba(black, .15) 0 2px 1px
14
+ &:hover,
15
+ &.hover,
16
+ &.is-hover
17
+ $color: lighten($color, 5%)
18
+ +normal-button-color($color)
19
+ &:active,
20
+ &.active,
21
+ &.is-active
22
+ $color: lighten($color, 7%)
23
+ +normal-button-color($color)
24
+ +top(1px)
25
+ box-shadow: darken($color, 12%) 0 1px 0 inset, rgba(white, .3) 0 1px 1px
@@ -0,0 +1,39 @@
1
+ $tabs-nav-border-color: black !default
2
+ $tabs-nav-background-color: white !default
3
+ $tabs-nav-border-width: 2px !default
4
+ $tabs-nav-font-size: 16px !default
5
+ $tabs-nav-item-gutter: 8px !default
6
+ $tabs-nav-font-color: black !default
7
+ $tabs-nav-current-font-color: red !default
8
+
9
+ .tabs-nav__items
10
+ font-size: 0
11
+ +relative
12
+ &:before
13
+ content: ""
14
+ display: block
15
+ +block-size(100% $tabs-nav-border-width)
16
+ background-color: $tabs-nav-border-color
17
+ +absolute(left 0, bottom 0)
18
+ .tabs-nav__item
19
+ +inline-block(bottom)
20
+ +rem('margin-right', 8px)
21
+ &:last-child
22
+ margin-right: 0
23
+ .tabs-nav__link
24
+ +block-link
25
+ +border(top horizontal, $tabs-nav-border-width solid $tabs-nav-border-color)
26
+ +rem('padding-bottom', $tabs-nav-border-width)
27
+ +text-block($tabs-nav-font-size round($tabs-nav-font-size*2.6), center $tabs-nav-font-color)
28
+ +padding(horizontal, $tabs-nav-font-size*1.6)
29
+ +box-sizing(border-box)
30
+ +relative
31
+ &:before
32
+ display: block
33
+ +block-size(100% $tabs-nav-border-width)
34
+ background-color: $tabs-nav-background-color
35
+ +absolute(left 0, bottom 0)
36
+ &.is-current
37
+ color: $tabs-nav-current-font-color
38
+ &:before
39
+ content: ""
@@ -58,3 +58,12 @@
58
58
 
59
59
  =background-clip($value)
60
60
  +prefixer(background-clip, $value, webkit moz spec)
61
+
62
+ =box-shadow($values)
63
+ +rem(box-shadow, $values)
64
+
65
+ =text-shadow($values)
66
+ +rem(text-shadow, $values)
67
+
68
+ =border-radius($values)
69
+ +rem(border-radius, $values)
@@ -60,3 +60,26 @@ $basic-mono: Osaka-mono, "MS Gothic", monospace !default
60
60
  $basic-maru: "Varela Round", "Lucida Grande", "Lucida Sans Unicode", Roboto, "Droid Sans", "HG丸ゴシックM-PRO", "Hiragino Maru Gothic Pro", "游ゴシック", YuGothic, "メイリオ", Meiryo, "MS Pゴシック", Helvetica, Arial, Verdana, sans-serif !default
61
61
  $basic-fonts: $basic-sans-serif !default
62
62
  $basic-legacy-ie-fonts: $basic-legacy-ie-sans-serif !default
63
+
64
+ /////////////////
65
+ // UI colors
66
+ ////////////////
67
+
68
+ $default: #ffffff !default
69
+ $primary: #337AB7 !default
70
+ $success: #5CB85C !default
71
+ $info: #5BC0DE !default
72
+ $warning: #F0AD4E !default
73
+ $danger: #D9534F !default
74
+
75
+ $text-color: #333333 !default
76
+ $default-text-reversal: #ffffff !default
77
+
78
+ /////////////////
79
+ // SNS colors
80
+ ////////////////
81
+
82
+ $twitter: #55acee
83
+ $facebook: #3b5998
84
+ $hatena: #008FDE
85
+ $pocket: #f23c53
@@ -1,5 +1,5 @@
1
1
  module Middleman
2
2
  module Oulu
3
- VERSION = "0.6.7"
3
+ VERSION = "0.6.8"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: middleman-oulu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.7
4
+ version: 0.6.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - machida
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-27 00:00:00.000000000 Z
11
+ date: 2015-04-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -81,9 +81,6 @@ files:
81
81
  - assets/javascripts/oulu-ie8.js
82
82
  - assets/javascripts/oulu-ie9.js
83
83
  - assets/javascripts/oulu.js
84
- - assets/javascripts/oulu/dev/positions-p.js.coffee
85
- - assets/javascripts/oulu/dev/positions-pp.js.coffee
86
- - assets/javascripts/oulu/dev/positions.js.coffee
87
84
  - assets/javascripts/oulu/helpers/js-autosize.js.coffee
88
85
  - assets/javascripts/oulu/helpers/js-checkbox.js.coffee
89
86
  - assets/javascripts/oulu/helpers/js-click-animate.js.coffee
@@ -117,6 +114,7 @@ files:
117
114
  - assets/javascripts/oulu/plugins/jquery.css3form.js
118
115
  - assets/javascripts/oulu/plugins/jquery.depend.min.js
119
116
  - assets/javascripts/oulu/plugins/sns-buttons.js
117
+ - assets/javascripts/oulu/plugins/waves.js
120
118
  - assets/stylesheets/_oulu-base.sass
121
119
  - assets/stylesheets/_oulu.sass
122
120
  - assets/stylesheets/helpers/_block.sass
@@ -125,6 +123,14 @@ files:
125
123
  - assets/stylesheets/helpers/_margin-padding.sass
126
124
  - assets/stylesheets/helpers/_position.sass
127
125
  - assets/stylesheets/helpers/_typoglaphy.sass
126
+ - assets/stylesheets/modules/buttons/_button-base.sass
127
+ - assets/stylesheets/modules/buttons/_button-helper.sass
128
+ - assets/stylesheets/modules/buttons/_buttons.sass
129
+ - assets/stylesheets/modules/buttons/styles/_border.sass
130
+ - assets/stylesheets/modules/buttons/styles/_flat-emboss.sass
131
+ - assets/stylesheets/modules/buttons/styles/_material.sass
132
+ - assets/stylesheets/modules/buttons/styles/_normal.sass
133
+ - assets/stylesheets/modules/navs/_tabs-nav.sass
128
134
  - assets/stylesheets/options/amazlet/_amazlet.sass
129
135
  - assets/stylesheets/options/glitch/_glitch.sass
130
136
  - assets/stylesheets/options/oulu-buttons/_button-basic.sass
@@ -1,34 +0,0 @@
1
- $ ->
2
- $("body").mousemove (e) ->
3
- mouseX = e.pageX
4
- mouseY = e.pageY
5
- $("#mouseX").val mouseX
6
- $("#mouseY").val mouseY
7
-
8
- # get scroll amount.
9
- window.onscroll = ->
10
- scrollX = document.documentElement.scrollLeft
11
- scrollY = document.documentElement.scrollTop
12
- $("#scrollX").value = scrollX
13
- $("#scrollY").value = scrollY
14
-
15
- $("#js-target-field").mousemove (e) ->
16
- divMouseX = undefined
17
- divMouseY = undefined
18
- offsetX = 0
19
- offsetY = 0
20
- element = this
21
- scrollX = document.documentElement.scrollLeft
22
- scrollY = document.documentElement.scrollTop
23
- while element
24
- offsetX += element.offsetLeft
25
- offsetY += element.offsetTop
26
- element = element.offsetParent
27
- if e
28
- divMouseX = e.pageX - offsetX
29
- divMouseY = e.pageY - offsetY
30
- else
31
- divMouseX = event.pageX + document.body.scrollLeft - offsetX
32
- divMouseY = event.pageY + document.body.scrollTop - offsetY
33
- $("#divMouseX").value divMouseX
34
- $("#divMouseY").value divMouseY
@@ -1,57 +0,0 @@
1
- try
2
- window.addEventListener "load", (->
3
-
4
- # get mouse coords at window.
5
- window.onmousemove = (e) ->
6
- mouseX = undefined
7
- mouseY = undefined
8
- if e
9
- mouseX = e.pageX
10
- mouseY = e.pageY
11
- else
12
- mouseX = event.pageX + document.body.scrollLeft
13
- mouseY = event.pageY + document.body.scrollTop
14
- document.getElementById("mouseX").value = mouseX
15
- document.getElementById("mouseY").value = mouseY
16
-
17
-
18
- # get scroll amount.
19
- window.onscroll = ->
20
- scrollX = document.documentElement.scrollLeft
21
- scrollY = document.documentElement.scrollTop
22
- document.getElementById("scrollX").value = scrollX
23
- document.getElementById("scrollY").value = scrollY
24
-
25
-
26
- # get mouse coords at targetDiv.
27
- document.getElementById("js-target-field").onmousemove = (e) ->
28
- mouseX = undefined
29
- mouseY = undefined
30
- offsetX = 0
31
- offsetY = 0
32
- element = this
33
- while element
34
- offsetX += element.offsetLeft
35
- offsetY += element.offsetTop
36
- element = element.offsetParent
37
- if e
38
- mouseX = e.pageX - offsetX
39
- mouseY = e.pageY - offsetY
40
- else
41
- mouseX = event.pageX + document.body.scrollLeft - offsetX
42
- mouseY = event.pageY + document.body.scrollTop - offsetY
43
- document.getElementById("divMouseX").value = mouseX
44
- document.getElementById("divMouseY").value = mouseY
45
-
46
-
47
- # get Window Size.
48
- window.onresize = (e) ->
49
- w = window.innerWidth
50
- h = window.innerHeight
51
- document.getElementById("windowW").value = w
52
- document.getElementById("windowH").value = h
53
-
54
- document.getElementById("windowW").value = window.innerWidth
55
- document.getElementById("windowH").value = window.innerHeight
56
- prettyPrint()
57
- ), false
@@ -1,6 +0,0 @@
1
- $ ->
2
- $("body").mousemove (e) ->
3
- mouseX = e.pageX
4
- mouseY = e.pageY
5
- $("#mouseX").val mouseX
6
- $("#mouseY").val mouseY