uikit2-rails 0.1.9 → 0.1.10
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/lib/uikit2/rails/version.rb +1 -1
- data/vendor/assets/fonts/FontAwesome.otf +0 -0
- data/vendor/assets/fonts/fontawesome-webfont.ttf +0 -0
- data/vendor/assets/fonts/fontawesome-webfont.woff +0 -0
- data/vendor/assets/fonts/fontawesome-webfont.woff2 +0 -0
- data/vendor/assets/javascripts/uikit.js +512 -425
- data/vendor/assets/javascripts/uikit/components/accordion.js +19 -13
- data/vendor/assets/javascripts/uikit/components/autocomplete.js +23 -17
- data/vendor/assets/javascripts/uikit/components/datepicker.js +25 -24
- data/vendor/assets/javascripts/uikit/components/form-password.js +16 -16
- data/vendor/assets/javascripts/uikit/components/form-select.js +33 -25
- data/vendor/assets/javascripts/uikit/components/grid-parallax.js +12 -12
- data/vendor/assets/javascripts/uikit/components/grid.js +47 -34
- data/vendor/assets/javascripts/uikit/components/htmleditor.js +47 -3
- data/vendor/assets/javascripts/uikit/components/lightbox.js +68 -70
- data/vendor/assets/javascripts/uikit/components/nestable.js +6 -6
- data/vendor/assets/javascripts/uikit/components/notify.js +9 -9
- data/vendor/assets/javascripts/uikit/components/pagination.js +8 -8
- data/vendor/assets/javascripts/uikit/components/parallax.js +13 -13
- data/vendor/assets/javascripts/uikit/components/search.js +11 -11
- data/vendor/assets/javascripts/uikit/components/slider.js +27 -15
- data/vendor/assets/javascripts/uikit/components/slideset.js +21 -12
- data/vendor/assets/javascripts/uikit/components/slideshow-fx.js +35 -28
- data/vendor/assets/javascripts/uikit/components/slideshow.js +129 -95
- data/vendor/assets/javascripts/uikit/components/sortable.js +45 -36
- data/vendor/assets/javascripts/uikit/components/sticky.js +19 -13
- data/vendor/assets/javascripts/uikit/components/timepicker.js +6 -6
- data/vendor/assets/javascripts/uikit/components/tooltip.js +47 -46
- data/vendor/assets/javascripts/uikit/components/upload.js +46 -44
- data/vendor/assets/javascripts/uikit/core/alert.js +17 -17
- data/vendor/assets/javascripts/uikit/core/button.js +25 -26
- data/vendor/assets/javascripts/uikit/core/core.js +58 -23
- data/vendor/assets/javascripts/uikit/core/cover.js +9 -17
- data/vendor/assets/javascripts/uikit/core/dropdown.js +108 -99
- data/vendor/assets/javascripts/uikit/core/grid.js +16 -16
- data/vendor/assets/javascripts/uikit/core/modal.js +35 -41
- data/vendor/assets/javascripts/uikit/core/nav.js +35 -18
- data/vendor/assets/javascripts/uikit/core/offcanvas.js +50 -33
- data/vendor/assets/javascripts/uikit/core/scrollspy.js +33 -33
- data/vendor/assets/javascripts/uikit/core/smooth-scroll.js +8 -8
- data/vendor/assets/javascripts/uikit/core/switcher.js +54 -52
- data/vendor/assets/javascripts/uikit/core/tab.js +27 -25
- data/vendor/assets/javascripts/uikit/core/toggle.js +12 -8
- data/vendor/assets/javascripts/uikit/core/touch.js +3 -3
- data/vendor/assets/javascripts/uikit/core/utility.js +35 -19
- data/vendor/assets/stylesheets/uikit.almost-flat.css +299 -242
- data/vendor/assets/stylesheets/uikit.css +280 -223
- data/vendor/assets/stylesheets/uikit.gradient.css +309 -252
- data/vendor/assets/stylesheets/uikit/components/accordion.almost-flat.css +2 -2
- data/vendor/assets/stylesheets/uikit/components/accordion.css +2 -2
- data/vendor/assets/stylesheets/uikit/components/accordion.gradient.css +2 -2
- data/vendor/assets/stylesheets/uikit/components/autocomplete.almost-flat.css +5 -5
- data/vendor/assets/stylesheets/uikit/components/autocomplete.css +5 -5
- data/vendor/assets/stylesheets/uikit/components/autocomplete.gradient.css +5 -5
- data/vendor/assets/stylesheets/uikit/components/datepicker.almost-flat.css +10 -10
- data/vendor/assets/stylesheets/uikit/components/datepicker.css +10 -10
- data/vendor/assets/stylesheets/uikit/components/datepicker.gradient.css +9 -9
- data/vendor/assets/stylesheets/uikit/components/dotnav.almost-flat.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/dotnav.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/dotnav.gradient.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/form-advanced.almost-flat.css +5 -5
- data/vendor/assets/stylesheets/uikit/components/form-advanced.css +5 -5
- data/vendor/assets/stylesheets/uikit/components/form-advanced.gradient.css +5 -5
- data/vendor/assets/stylesheets/uikit/components/form-file.almost-flat.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/form-file.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/form-file.gradient.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/form-password.almost-flat.css +3 -3
- data/vendor/assets/stylesheets/uikit/components/form-password.css +3 -3
- data/vendor/assets/stylesheets/uikit/components/form-password.gradient.css +3 -3
- data/vendor/assets/stylesheets/uikit/components/form-select.almost-flat.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/form-select.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/form-select.gradient.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/htmleditor.almost-flat.css +12 -12
- data/vendor/assets/stylesheets/uikit/components/htmleditor.css +12 -12
- data/vendor/assets/stylesheets/uikit/components/htmleditor.gradient.css +13 -13
- data/vendor/assets/stylesheets/uikit/components/nestable.almost-flat.css +7 -3
- data/vendor/assets/stylesheets/uikit/components/nestable.css +6 -2
- data/vendor/assets/stylesheets/uikit/components/nestable.gradient.css +9 -5
- data/vendor/assets/stylesheets/uikit/components/notify.almost-flat.css +4 -4
- data/vendor/assets/stylesheets/uikit/components/notify.css +3 -3
- data/vendor/assets/stylesheets/uikit/components/notify.gradient.css +4 -4
- data/vendor/assets/stylesheets/uikit/components/placeholder.almost-flat.css +3 -3
- data/vendor/assets/stylesheets/uikit/components/placeholder.css +3 -3
- data/vendor/assets/stylesheets/uikit/components/placeholder.gradient.css +3 -3
- data/vendor/assets/stylesheets/uikit/components/progress.almost-flat.css +2 -2
- data/vendor/assets/stylesheets/uikit/components/progress.css +3 -3
- data/vendor/assets/stylesheets/uikit/components/progress.gradient.css +2 -2
- data/vendor/assets/stylesheets/uikit/components/search.almost-flat.css +18 -18
- data/vendor/assets/stylesheets/uikit/components/search.css +17 -17
- data/vendor/assets/stylesheets/uikit/components/search.gradient.css +18 -18
- data/vendor/assets/stylesheets/uikit/components/slidenav.almost-flat.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/slidenav.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/slidenav.gradient.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/slider.almost-flat.css +10 -1
- data/vendor/assets/stylesheets/uikit/components/slider.css +10 -1
- data/vendor/assets/stylesheets/uikit/components/slider.gradient.css +10 -1
- data/vendor/assets/stylesheets/uikit/components/slideshow.almost-flat.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/slideshow.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/slideshow.gradient.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/sortable.almost-flat.css +5 -1
- data/vendor/assets/stylesheets/uikit/components/sortable.css +5 -1
- data/vendor/assets/stylesheets/uikit/components/sortable.gradient.css +5 -1
- data/vendor/assets/stylesheets/uikit/components/sticky.almost-flat.css +4 -1
- data/vendor/assets/stylesheets/uikit/components/sticky.css +4 -1
- data/vendor/assets/stylesheets/uikit/components/sticky.gradient.css +4 -1
- data/vendor/assets/stylesheets/uikit/components/tooltip.almost-flat.css +8 -7
- data/vendor/assets/stylesheets/uikit/components/tooltip.css +8 -7
- data/vendor/assets/stylesheets/uikit/components/tooltip.gradient.css +8 -7
- data/vendor/assets/stylesheets/uikit/components/upload.almost-flat.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/upload.css +1 -1
- data/vendor/assets/stylesheets/uikit/components/upload.gradient.css +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6cde5925eb3d2de013b089a4f90201f251ffdf6b
|
4
|
+
data.tar.gz: 6ede33e4e42510db3f9120acac820b934742fdb3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5759ec04e75cf2010e1ec0f81920b12900248a6b50e2ae21e87f9c68cb79b8c074d246f806fa5862369e897a8ceeeb37dc6e92b65c164b864a4e5f1a1e8b827b
|
7
|
+
data.tar.gz: a3936cb8128b93287393a4a4ea4f1a652703f9329df39c026043f68fcdf03ce555b544e6eddc7811771f43bcb068a4521628674db29f5f00a43cc051c5cd28fd
|
data/README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
[![Gem Version](https://badge.fury.io/rb/uikit2-rails.svg)](http://badge.fury.io/rb/uikit2-rails)
|
4
4
|
|
5
|
-
UIkit 2.
|
5
|
+
UIkit 2.27.2
|
6
6
|
|
7
7
|
## Installation
|
8
8
|
|
@@ -33,7 +33,7 @@ In your application.css:
|
|
33
33
|
*= require uikit
|
34
34
|
* or
|
35
35
|
*= require uikit.gradient
|
36
|
-
* or
|
36
|
+
* or
|
37
37
|
*= require uikit.almost-flat
|
38
38
|
*
|
39
39
|
* Example including components:
|
data/lib/uikit2/rails/version.rb
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -1,18 +1,18 @@
|
|
1
|
-
/*! UIkit 2.
|
1
|
+
/*! UIkit 2.27.2 | http://www.getuikit.com | (c) 2014 YOOtheme | MIT License */
|
2
2
|
(function(core) {
|
3
3
|
|
4
|
-
if (typeof define ==
|
4
|
+
if (typeof define == 'function' && define.amd) { // AMD
|
5
5
|
|
6
|
-
define(
|
6
|
+
define('uikit', function(){
|
7
7
|
|
8
8
|
var uikit = window.UIkit || core(window, window.jQuery, window.document);
|
9
9
|
|
10
10
|
uikit.load = function(res, req, onload, config) {
|
11
11
|
|
12
|
-
var resources = res.split(','), load = [], i, base = (config.config && config.config.uikit && config.config.uikit.base ? config.config.uikit.base :
|
12
|
+
var resources = res.split(','), load = [], i, base = (config.config && config.config.uikit && config.config.uikit.base ? config.config.uikit.base : '').replace(/\/+$/g, '');
|
13
13
|
|
14
14
|
if (!base) {
|
15
|
-
throw new Error(
|
15
|
+
throw new Error('Please define base path to UIkit in the requirejs config.');
|
16
16
|
}
|
17
17
|
|
18
18
|
for (i = 0; i < resources.length; i += 1) {
|
@@ -30,7 +30,7 @@
|
|
30
30
|
}
|
31
31
|
|
32
32
|
if (!window.jQuery) {
|
33
|
-
throw new Error(
|
33
|
+
throw new Error('UIkit requires jQuery');
|
34
34
|
}
|
35
35
|
|
36
36
|
if (window && window.jQuery) {
|
@@ -44,7 +44,7 @@
|
|
44
44
|
|
45
45
|
var UI = {}, _UI = global.UIkit ? Object.create(global.UIkit) : undefined;
|
46
46
|
|
47
|
-
UI.version = '2.
|
47
|
+
UI.version = '2.27.2';
|
48
48
|
|
49
49
|
UI.noConflict = function() {
|
50
50
|
// restore UIkit version
|
@@ -161,7 +161,7 @@
|
|
161
161
|
.replace(/'([^']+)'/g, function(_, $1){return '"'+$1+'"';})
|
162
162
|
);
|
163
163
|
} else {
|
164
|
-
return (new Function(
|
164
|
+
return (new Function('', 'var json = ' + str + '; return JSON.parse(JSON.stringify(json));'))();
|
165
165
|
}
|
166
166
|
} catch(e) { return false; }
|
167
167
|
};
|
@@ -260,7 +260,7 @@
|
|
260
260
|
|
261
261
|
var ele = UI.$(this),
|
262
262
|
cls = ele.attr('class'),
|
263
|
-
anim = cls.match(/uk
|
263
|
+
anim = cls.match(/uk-animation-(.+)/);
|
264
264
|
|
265
265
|
ele.removeClass(anim[0]).width();
|
266
266
|
|
@@ -327,30 +327,30 @@
|
|
327
327
|
|
328
328
|
switch(cmd) {
|
329
329
|
case '~':
|
330
|
-
output.push(
|
330
|
+
output.push('for(var $i=0;$i<'+prop+'.length;$i++) { var $item = '+prop+'[$i];');
|
331
331
|
openblocks++;
|
332
332
|
break;
|
333
333
|
case ':':
|
334
|
-
output.push(
|
334
|
+
output.push('for(var $key in '+prop+') { var $val = '+prop+'[$key];');
|
335
335
|
openblocks++;
|
336
336
|
break;
|
337
337
|
case '#':
|
338
|
-
output.push(
|
338
|
+
output.push('if('+prop+') {');
|
339
339
|
openblocks++;
|
340
340
|
break;
|
341
341
|
case '^':
|
342
|
-
output.push(
|
342
|
+
output.push('if(!'+prop+') {');
|
343
343
|
openblocks++;
|
344
344
|
break;
|
345
345
|
case '/':
|
346
|
-
output.push(
|
346
|
+
output.push('}');
|
347
347
|
openblocks--;
|
348
348
|
break;
|
349
349
|
case '!':
|
350
|
-
output.push(
|
350
|
+
output.push('__ret.push('+prop+');');
|
351
351
|
break;
|
352
352
|
default:
|
353
|
-
output.push(
|
353
|
+
output.push('__ret.push(escape('+prop+'));');
|
354
354
|
break;
|
355
355
|
}
|
356
356
|
} else {
|
@@ -371,6 +371,40 @@
|
|
371
371
|
return data ? fn(data) : fn;
|
372
372
|
};
|
373
373
|
|
374
|
+
UI.Utils.focus = function(element, extra) {
|
375
|
+
|
376
|
+
element = $(element);
|
377
|
+
|
378
|
+
if (!element.length) {
|
379
|
+
return element;
|
380
|
+
}
|
381
|
+
|
382
|
+
var autofocus = element.find('[autofocus]:first'), tabidx;
|
383
|
+
|
384
|
+
if (autofocus.length) {
|
385
|
+
return autofocus.focus();
|
386
|
+
}
|
387
|
+
|
388
|
+
autofocus = element.find(':input'+(extra && (','+extra) || '')).first();
|
389
|
+
|
390
|
+
if (autofocus.length) {
|
391
|
+
return autofocus.focus();
|
392
|
+
}
|
393
|
+
|
394
|
+
if (!element.attr('tabindex')) {
|
395
|
+
tabidx = 1000;
|
396
|
+
element.attr('tabindex', tabidx);
|
397
|
+
}
|
398
|
+
|
399
|
+
element[0].focus();
|
400
|
+
|
401
|
+
if (tabidx) {
|
402
|
+
element.attr('tabindex', '');
|
403
|
+
}
|
404
|
+
|
405
|
+
return element;
|
406
|
+
}
|
407
|
+
|
374
408
|
UI.Utils.events = {};
|
375
409
|
UI.Utils.events.click = UI.support.touch ? 'tap' : 'click';
|
376
410
|
|
@@ -383,7 +417,7 @@
|
|
383
417
|
var args = arguments, cmd = command.match(/^([a-z\-]+)(?:\.([a-z]+))?/i), component = cmd[1], method = cmd[2];
|
384
418
|
|
385
419
|
if (!UI[component]) {
|
386
|
-
$.error(
|
420
|
+
$.error('UIkit component [' + component + '] does not exist.');
|
387
421
|
return this;
|
388
422
|
}
|
389
423
|
|
@@ -501,7 +535,7 @@
|
|
501
535
|
switch(arguments.length) {
|
502
536
|
case 1:
|
503
537
|
|
504
|
-
if (typeof arguments[0] ===
|
538
|
+
if (typeof arguments[0] === 'string' || arguments[0].nodeType || arguments[0] instanceof jQuery) {
|
505
539
|
element = $(arguments[0]);
|
506
540
|
} else {
|
507
541
|
options = arguments[0];
|
@@ -605,7 +639,7 @@
|
|
605
639
|
try {
|
606
640
|
|
607
641
|
var observer = new UI.support.mutationobserver(UI.Utils.debounce(function(mutations) {
|
608
|
-
fn.apply(element, []);
|
642
|
+
fn.apply(element, [$element]);
|
609
643
|
$element.trigger('changed.uk.dom');
|
610
644
|
}, 50), {childList: true, subtree: true});
|
611
645
|
|
@@ -645,7 +679,7 @@
|
|
645
679
|
UI.component.bootComponents();
|
646
680
|
|
647
681
|
// custom scroll observer
|
648
|
-
requestAnimationFrame((function(){
|
682
|
+
var rafToken = requestAnimationFrame((function(){
|
649
683
|
|
650
684
|
var memory = {dir: {x:0, y:0}, x: window.pageXOffset, y:window.pageYOffset};
|
651
685
|
|
@@ -668,11 +702,12 @@
|
|
668
702
|
// Trigger the scroll event, this could probably be sent using memory.clone() but this is
|
669
703
|
// more explicit and easier to see exactly what is being sent in the event.
|
670
704
|
UI.$doc.trigger('scrolling.uk.document', [{
|
671
|
-
|
705
|
+
dir: {x: memory.dir.x, y: memory.dir.y}, x: wpxo, y: wpyo
|
672
706
|
}]);
|
673
707
|
}
|
674
708
|
|
675
|
-
|
709
|
+
cancelAnimationFrame(rafToken);
|
710
|
+
rafToken = requestAnimationFrame(fn);
|
676
711
|
};
|
677
712
|
|
678
713
|
if (UI.support.touch) {
|
@@ -755,7 +790,7 @@
|
|
755
790
|
}());
|
756
791
|
|
757
792
|
// add touch identifier class
|
758
|
-
UI.$html.addClass(UI.support.touch ?
|
793
|
+
UI.$html.addClass(UI.support.touch ? 'uk-touch' : 'uk-notouch');
|
759
794
|
|
760
795
|
// add uk-hover class on tap to support overlays on touch devices
|
761
796
|
if (UI.support.touch) {
|
@@ -868,7 +903,7 @@
|
|
868
903
|
longTapTimeout = setTimeout(longTap, longTapDelay);
|
869
904
|
|
870
905
|
// adds the current touch contact for IE gesture recognition
|
871
|
-
if (gesture && ( e.type == 'MSPointerDown' || e.type == 'pointerdown' || e.type == 'touchstart' ) ) {
|
906
|
+
if (e.originalEvent && e.originalEvent.pointerId && gesture && ( e.type == 'MSPointerDown' || e.type == 'pointerdown' || e.type == 'touchstart' ) ) {
|
872
907
|
gesture.addPointer(e.originalEvent.pointerId);
|
873
908
|
}
|
874
909
|
|
@@ -947,7 +982,7 @@
|
|
947
982
|
// when the browser window loses focus,
|
948
983
|
// for example when a modal dialog is shown,
|
949
984
|
// cancel all ongoing events
|
950
|
-
.on('touchcancel MSPointerCancel', cancelAll);
|
985
|
+
.on('touchcancel MSPointerCancel pointercancel', cancelAll);
|
951
986
|
|
952
987
|
// scrolling the window indicates intention of the user
|
953
988
|
// to scroll, not tap or swipe, so cancel all ongoing events
|
@@ -978,12 +1013,12 @@
|
|
978
1013
|
// init code
|
979
1014
|
UI.ready(function(context) {
|
980
1015
|
|
981
|
-
UI.$(
|
1016
|
+
UI.$('[data-uk-margin]', context).each(function() {
|
982
1017
|
|
983
1018
|
var ele = UI.$(this);
|
984
1019
|
|
985
|
-
if (!ele.data(
|
986
|
-
UI.stackMargin(ele, UI.Utils.options(ele.attr(
|
1020
|
+
if (!ele.data('stackMargin')) {
|
1021
|
+
UI.stackMargin(ele, UI.Utils.options(ele.attr('data-uk-margin')));
|
987
1022
|
}
|
988
1023
|
});
|
989
1024
|
});
|
@@ -1001,20 +1036,20 @@
|
|
1001
1036
|
|
1002
1037
|
UI.$(function() {
|
1003
1038
|
fn();
|
1004
|
-
UI.$win.on(
|
1039
|
+
UI.$win.on('load', fn);
|
1005
1040
|
});
|
1006
1041
|
|
1007
1042
|
return UI.Utils.debounce(fn, 20);
|
1008
1043
|
})());
|
1009
1044
|
|
1010
|
-
this.on(
|
1011
|
-
if (this.element.is(
|
1045
|
+
this.on('display.uk.check', function(e) {
|
1046
|
+
if (this.element.is(':visible')) this.process();
|
1012
1047
|
}.bind(this));
|
1013
1048
|
|
1014
1049
|
if (this.options.observe) {
|
1015
1050
|
|
1016
1051
|
UI.domObserve(this.element, function(e) {
|
1017
|
-
if ($this.element.is(
|
1052
|
+
if ($this.element.is(':visible')) $this.process();
|
1018
1053
|
});
|
1019
1054
|
}
|
1020
1055
|
|
@@ -1066,7 +1101,7 @@
|
|
1066
1101
|
ratio = (width / iwidth),
|
1067
1102
|
height = Math.floor(ratio * ele.data('height'));
|
1068
1103
|
|
1069
|
-
ele.css({
|
1104
|
+
ele.css({height: (width < iwidth) ? height : ele.data('height')});
|
1070
1105
|
};
|
1071
1106
|
|
1072
1107
|
UI.component('responsiveElement', {
|
@@ -1078,11 +1113,11 @@
|
|
1078
1113
|
// init code
|
1079
1114
|
UI.ready(function(context) {
|
1080
1115
|
|
1081
|
-
UI.$(
|
1116
|
+
UI.$('iframe.uk-responsive-width, [data-uk-responsive]', context).each(function() {
|
1082
1117
|
|
1083
1118
|
var ele = UI.$(this), obj;
|
1084
1119
|
|
1085
|
-
if (!ele.data(
|
1120
|
+
if (!ele.data('responsiveElement')) {
|
1086
1121
|
obj = UI.responsiveElement(ele, {});
|
1087
1122
|
}
|
1088
1123
|
});
|
@@ -1096,10 +1131,8 @@
|
|
1096
1131
|
if (ele.attr('width') && ele.attr('height')) {
|
1097
1132
|
|
1098
1133
|
ele.data({
|
1099
|
-
|
1100
|
-
|
1101
|
-
'height': ele.attr('height')
|
1102
|
-
|
1134
|
+
width : ele.attr('width'),
|
1135
|
+
height: ele.attr('height')
|
1103
1136
|
}).on('display.uk.check', function(){
|
1104
1137
|
check(ele);
|
1105
1138
|
});
|
@@ -1122,13 +1155,12 @@
|
|
1122
1155
|
})();
|
1123
1156
|
|
1124
1157
|
|
1125
|
-
|
1126
1158
|
// helper
|
1127
1159
|
|
1128
1160
|
UI.Utils.stackMargin = function(elements, options) {
|
1129
1161
|
|
1130
1162
|
options = UI.$.extend({
|
1131
|
-
|
1163
|
+
cls: 'uk-margin-small-top'
|
1132
1164
|
}, options);
|
1133
1165
|
|
1134
1166
|
elements = UI.$(elements).removeClass(options.cls);
|
@@ -1146,8 +1178,8 @@
|
|
1146
1178
|
pos = offset.top + height;
|
1147
1179
|
|
1148
1180
|
$ele.data({
|
1149
|
-
|
1150
|
-
|
1181
|
+
ukMarginPos: pos,
|
1182
|
+
ukMarginTop: offset.top
|
1151
1183
|
});
|
1152
1184
|
|
1153
1185
|
if (min === false || (offset.top < min.top) ) {
|
@@ -1276,6 +1308,25 @@
|
|
1276
1308
|
|
1277
1309
|
})({});
|
1278
1310
|
|
1311
|
+
UI.Utils.getCssVar = function(name) {
|
1312
|
+
|
1313
|
+
/* usage in css: .var-name:before { content:"xyz" } */
|
1314
|
+
|
1315
|
+
var val, doc = document.documentElement, element = doc.appendChild(document.createElement('div'));
|
1316
|
+
|
1317
|
+
element.classList.add('var-'+name);
|
1318
|
+
|
1319
|
+
try {
|
1320
|
+
val = JSON.parse(val = getComputedStyle(element, ':before').content.replace(/^["'](.*)["']$/, '$1'));
|
1321
|
+
} catch (e) {
|
1322
|
+
val = undefined;
|
1323
|
+
}
|
1324
|
+
|
1325
|
+
doc.removeChild(element);
|
1326
|
+
|
1327
|
+
return val;
|
1328
|
+
}
|
1329
|
+
|
1279
1330
|
})(UIkit);
|
1280
1331
|
|
1281
1332
|
(function(UI) {
|
@@ -1287,12 +1338,12 @@
|
|
1287
1338
|
boot: function() {
|
1288
1339
|
|
1289
1340
|
// init code
|
1290
|
-
UI.$html.on(
|
1341
|
+
UI.$html.on('click.smooth-scroll.uikit', '[data-uk-smooth-scroll]', function(e) {
|
1291
1342
|
var ele = UI.$(this);
|
1292
1343
|
|
1293
|
-
if (!ele.data(
|
1294
|
-
var obj = UI.smoothScroll(ele, UI.Utils.options(ele.attr(
|
1295
|
-
ele.trigger(
|
1344
|
+
if (!ele.data('smoothScroll')) {
|
1345
|
+
var obj = UI.smoothScroll(ele, UI.Utils.options(ele.attr('data-uk-smooth-scroll')));
|
1346
|
+
ele.trigger('click');
|
1296
1347
|
}
|
1297
1348
|
|
1298
1349
|
return false;
|
@@ -1303,9 +1354,9 @@
|
|
1303
1354
|
|
1304
1355
|
var $this = this;
|
1305
1356
|
|
1306
|
-
this.on(
|
1357
|
+
this.on('click', function(e) {
|
1307
1358
|
e.preventDefault();
|
1308
|
-
scrollToElement(UI.$(this.hash).length ? UI.$(this.hash) : UI.$(
|
1359
|
+
scrollToElement(UI.$(this.hash).length ? UI.$(this.hash) : UI.$('body'), $this.options);
|
1309
1360
|
});
|
1310
1361
|
}
|
1311
1362
|
});
|
@@ -1329,7 +1380,7 @@
|
|
1329
1380
|
}
|
1330
1381
|
|
1331
1382
|
// animate to target, fire callback when done
|
1332
|
-
UI.$(
|
1383
|
+
UI.$('html,body').stop().animate({scrollTop: target}, options.duration, options.transition).promise().done(options.complete);
|
1333
1384
|
}
|
1334
1385
|
|
1335
1386
|
UI.Utils.scrollToElement = scrollToElement;
|
@@ -1356,30 +1407,30 @@
|
|
1356
1407
|
UI.component('scrollspy', {
|
1357
1408
|
|
1358
1409
|
defaults: {
|
1359
|
-
|
1360
|
-
|
1361
|
-
|
1362
|
-
|
1363
|
-
|
1364
|
-
|
1365
|
-
|
1410
|
+
target : false,
|
1411
|
+
cls : 'uk-scrollspy-inview',
|
1412
|
+
initcls : 'uk-scrollspy-init-inview',
|
1413
|
+
topoffset : 0,
|
1414
|
+
leftoffset : 0,
|
1415
|
+
repeat : false,
|
1416
|
+
delay : 0
|
1366
1417
|
},
|
1367
1418
|
|
1368
1419
|
boot: function() {
|
1369
1420
|
|
1370
1421
|
// listen to scroll and resize
|
1371
|
-
$doc.on(
|
1372
|
-
$win.on(
|
1422
|
+
$doc.on('scrolling.uk.document', checkScrollSpy);
|
1423
|
+
$win.on('load resize orientationchange', UI.Utils.debounce(checkScrollSpy, 50));
|
1373
1424
|
|
1374
1425
|
// init code
|
1375
1426
|
UI.ready(function(context) {
|
1376
1427
|
|
1377
|
-
UI.$(
|
1428
|
+
UI.$('[data-uk-scrollspy]', context).each(function() {
|
1378
1429
|
|
1379
1430
|
var element = UI.$(this);
|
1380
1431
|
|
1381
|
-
if (!element.data(
|
1382
|
-
var obj = UI.scrollspy(element, UI.Utils.options(element.attr(
|
1432
|
+
if (!element.data('scrollspy')) {
|
1433
|
+
var obj = UI.scrollspy(element, UI.Utils.options(element.attr('data-uk-scrollspy')));
|
1383
1434
|
}
|
1384
1435
|
});
|
1385
1436
|
});
|
@@ -1407,13 +1458,13 @@
|
|
1407
1458
|
$this.offset = element.offset();
|
1408
1459
|
initinview = true;
|
1409
1460
|
|
1410
|
-
element.trigger(
|
1461
|
+
element.trigger('init.uk.scrollspy');
|
1411
1462
|
}
|
1412
1463
|
|
1413
1464
|
element.data('scrollspy-idle', setTimeout(function(){
|
1414
1465
|
|
1415
|
-
element.addClass(
|
1416
|
-
element.trigger(
|
1466
|
+
element.addClass('uk-scrollspy-inview').toggleClass(toggle).width();
|
1467
|
+
element.trigger('inview.uk.scrollspy');
|
1417
1468
|
|
1418
1469
|
element.data('scrollspy-idle', false);
|
1419
1470
|
element.data('inviewstate', true);
|
@@ -1430,10 +1481,10 @@
|
|
1430
1481
|
element.data('scrollspy-idle', false);
|
1431
1482
|
}
|
1432
1483
|
|
1433
|
-
element.removeClass(
|
1484
|
+
element.removeClass('uk-scrollspy-inview').toggleClass(toggle);
|
1434
1485
|
element.data('inviewstate', false);
|
1435
1486
|
|
1436
|
-
element.trigger(
|
1487
|
+
element.trigger('outview.uk.scrollspy');
|
1437
1488
|
}
|
1438
1489
|
|
1439
1490
|
toggleclsIdx = togglecls[toggleclsIdx + 1] ? (toggleclsIdx + 1) : 0;
|
@@ -1460,28 +1511,28 @@
|
|
1460
1511
|
UI.component('scrollspynav', {
|
1461
1512
|
|
1462
1513
|
defaults: {
|
1463
|
-
|
1464
|
-
|
1465
|
-
|
1466
|
-
|
1467
|
-
|
1514
|
+
cls : 'uk-active',
|
1515
|
+
closest : false,
|
1516
|
+
topoffset : 0,
|
1517
|
+
leftoffset : 0,
|
1518
|
+
smoothscroll : false
|
1468
1519
|
},
|
1469
1520
|
|
1470
1521
|
boot: function() {
|
1471
1522
|
|
1472
1523
|
// listen to scroll and resize
|
1473
|
-
$doc.on(
|
1474
|
-
$win.on(
|
1524
|
+
$doc.on('scrolling.uk.document', checkScrollSpyNavs);
|
1525
|
+
$win.on('resize orientationchange', UI.Utils.debounce(checkScrollSpyNavs, 50));
|
1475
1526
|
|
1476
1527
|
// init code
|
1477
1528
|
UI.ready(function(context) {
|
1478
1529
|
|
1479
|
-
UI.$(
|
1530
|
+
UI.$('[data-uk-scrollspy-nav]', context).each(function() {
|
1480
1531
|
|
1481
1532
|
var element = UI.$(this);
|
1482
1533
|
|
1483
|
-
if (!element.data(
|
1484
|
-
var obj = UI.scrollspynav(element, UI.Utils.options(element.attr(
|
1534
|
+
if (!element.data('scrollspynav')) {
|
1535
|
+
var obj = UI.scrollspynav(element, UI.Utils.options(element.attr('data-uk-scrollspy-nav')));
|
1485
1536
|
}
|
1486
1537
|
});
|
1487
1538
|
});
|
@@ -1490,7 +1541,7 @@
|
|
1490
1541
|
init: function() {
|
1491
1542
|
|
1492
1543
|
var ids = [],
|
1493
|
-
links = this.find("a[href^='#']").each(function(){ if(this.getAttribute(
|
1544
|
+
links = this.find("a[href^='#']").each(function(){ if(this.getAttribute('href').trim()!=='#') ids.push(this.getAttribute('href')); }),
|
1494
1545
|
targets = UI.$(ids.join(",")),
|
1495
1546
|
|
1496
1547
|
clsActive = this.options.cls,
|
@@ -1512,7 +1563,7 @@
|
|
1512
1563
|
scrollTop = $win.scrollTop(),
|
1513
1564
|
target = (function(){
|
1514
1565
|
for(var i=0; i< inviews.length;i++){
|
1515
|
-
if(inviews[i].offset().top >= scrollTop){
|
1566
|
+
if (inviews[i].offset().top - $this.options.topoffset >= scrollTop){
|
1516
1567
|
return inviews[i];
|
1517
1568
|
}
|
1518
1569
|
}
|
@@ -1522,12 +1573,12 @@
|
|
1522
1573
|
|
1523
1574
|
if ($this.options.closest) {
|
1524
1575
|
links.blur().closest(clsClosest).removeClass(clsActive);
|
1525
|
-
navitems = links.filter("a[href='#"+target.attr(
|
1576
|
+
navitems = links.filter("a[href='#"+target.attr('id')+"']").closest(clsClosest).addClass(clsActive);
|
1526
1577
|
} else {
|
1527
1578
|
navitems = links.removeClass(clsActive).filter("a[href='#"+target.attr("id")+"']").addClass(clsActive);
|
1528
1579
|
}
|
1529
1580
|
|
1530
|
-
$this.element.trigger(
|
1581
|
+
$this.element.trigger('inview.uk.scrollspynav', [target, navitems]);
|
1531
1582
|
}
|
1532
1583
|
};
|
1533
1584
|
|
@@ -1539,7 +1590,7 @@
|
|
1539
1590
|
|
1540
1591
|
fn();
|
1541
1592
|
|
1542
|
-
this.element.data(
|
1593
|
+
this.element.data('scrollspynav', this);
|
1543
1594
|
|
1544
1595
|
this.check = fn;
|
1545
1596
|
scrollspynavs.push(this);
|
@@ -1569,11 +1620,11 @@
|
|
1569
1620
|
// init code
|
1570
1621
|
UI.ready(function(context) {
|
1571
1622
|
|
1572
|
-
UI.$(
|
1623
|
+
UI.$('[data-uk-toggle]', context).each(function() {
|
1573
1624
|
var ele = UI.$(this);
|
1574
1625
|
|
1575
|
-
if (!ele.data(
|
1576
|
-
var obj = UI.toggle(ele, UI.Utils.options(ele.attr(
|
1626
|
+
if (!ele.data('toggle')) {
|
1627
|
+
var obj = UI.toggle(ele, UI.Utils.options(ele.attr('data-uk-toggle')));
|
1577
1628
|
}
|
1578
1629
|
});
|
1579
1630
|
|
@@ -1593,10 +1644,12 @@
|
|
1593
1644
|
|
1594
1645
|
this.aria = (this.options.cls.indexOf('uk-hidden') !== -1);
|
1595
1646
|
|
1596
|
-
this.
|
1647
|
+
this.on('click', function(e) {
|
1648
|
+
|
1649
|
+
if ($this.element.is('a[href="#"]')) {
|
1650
|
+
e.preventDefault();
|
1651
|
+
}
|
1597
1652
|
|
1598
|
-
this.on("click", function(e) {
|
1599
|
-
if ($this.element.is('a[href="#"]')) e.preventDefault();
|
1600
1653
|
$this.toggle();
|
1601
1654
|
});
|
1602
1655
|
|
@@ -1605,6 +1658,8 @@
|
|
1605
1658
|
|
1606
1659
|
toggle: function() {
|
1607
1660
|
|
1661
|
+
this.getToggles();
|
1662
|
+
|
1608
1663
|
if(!this.totoggle.length) return;
|
1609
1664
|
|
1610
1665
|
if (this.options.animation && UI.support.animation) {
|
@@ -1660,7 +1715,7 @@
|
|
1660
1715
|
|
1661
1716
|
updateAria: function() {
|
1662
1717
|
if (this.aria && this.totoggle.length) {
|
1663
|
-
this.totoggle.each(function(){
|
1718
|
+
this.totoggle.not('[aria-hidden]').each(function(){
|
1664
1719
|
UI.$(this).attr('aria-hidden', UI.$(this).hasClass('uk-hidden'));
|
1665
1720
|
});
|
1666
1721
|
}
|
@@ -1676,21 +1731,21 @@
|
|
1676
1731
|
UI.component('alert', {
|
1677
1732
|
|
1678
1733
|
defaults: {
|
1679
|
-
|
1680
|
-
|
1681
|
-
|
1734
|
+
fade: true,
|
1735
|
+
duration: 200,
|
1736
|
+
trigger: '.uk-alert-close'
|
1682
1737
|
},
|
1683
1738
|
|
1684
1739
|
boot: function() {
|
1685
1740
|
|
1686
1741
|
// init code
|
1687
|
-
UI.$html.on(
|
1742
|
+
UI.$html.on('click.alert.uikit', '[data-uk-alert]', function(e) {
|
1688
1743
|
|
1689
1744
|
var ele = UI.$(this);
|
1690
1745
|
|
1691
|
-
if (!ele.data(
|
1746
|
+
if (!ele.data('alert')) {
|
1692
1747
|
|
1693
|
-
var alert = UI.alert(ele, UI.Utils.options(ele.attr(
|
1748
|
+
var alert = UI.alert(ele, UI.Utils.options(ele.attr('data-uk-alert')));
|
1694
1749
|
|
1695
1750
|
if (UI.$(e.target).is(alert.options.trigger)) {
|
1696
1751
|
e.preventDefault();
|
@@ -1704,7 +1759,7 @@
|
|
1704
1759
|
|
1705
1760
|
var $this = this;
|
1706
1761
|
|
1707
|
-
this.on(
|
1762
|
+
this.on('click', this.options.trigger, function(e) {
|
1708
1763
|
e.preventDefault();
|
1709
1764
|
$this.close();
|
1710
1765
|
});
|
@@ -1712,19 +1767,19 @@
|
|
1712
1767
|
|
1713
1768
|
close: function() {
|
1714
1769
|
|
1715
|
-
var element = this.trigger(
|
1770
|
+
var element = this.trigger('close.uk.alert'),
|
1716
1771
|
removeElement = function () {
|
1717
|
-
this.trigger(
|
1772
|
+
this.trigger('closed.uk.alert').remove();
|
1718
1773
|
}.bind(this);
|
1719
1774
|
|
1720
1775
|
if (this.options.fade) {
|
1721
|
-
element.css(
|
1722
|
-
|
1723
|
-
|
1724
|
-
|
1725
|
-
|
1726
|
-
|
1727
|
-
|
1776
|
+
element.css('overflow', 'hidden').css("max-height", element.height()).animate({
|
1777
|
+
height : 0,
|
1778
|
+
opacity : 0,
|
1779
|
+
paddingTop : 0,
|
1780
|
+
paddingBottom : 0,
|
1781
|
+
marginTop : 0,
|
1782
|
+
marginBottom : 0
|
1728
1783
|
}, this.options.duration, removeElement);
|
1729
1784
|
} else {
|
1730
1785
|
removeElement();
|
@@ -1742,24 +1797,24 @@
|
|
1742
1797
|
UI.component('buttonRadio', {
|
1743
1798
|
|
1744
1799
|
defaults: {
|
1745
|
-
|
1746
|
-
|
1800
|
+
activeClass: 'uk-active',
|
1801
|
+
target: '.uk-button'
|
1747
1802
|
},
|
1748
1803
|
|
1749
1804
|
boot: function() {
|
1750
1805
|
|
1751
1806
|
// init code
|
1752
|
-
UI.$html.on(
|
1807
|
+
UI.$html.on('click.buttonradio.uikit', '[data-uk-button-radio]', function(e) {
|
1753
1808
|
|
1754
1809
|
var ele = UI.$(this);
|
1755
1810
|
|
1756
|
-
if (!ele.data(
|
1811
|
+
if (!ele.data('buttonRadio')) {
|
1757
1812
|
|
1758
|
-
var obj = UI.buttonRadio(ele, UI.Utils.options(ele.attr(
|
1813
|
+
var obj = UI.buttonRadio(ele, UI.Utils.options(ele.attr('data-uk-button-radio'))),
|
1759
1814
|
target = UI.$(e.target);
|
1760
1815
|
|
1761
1816
|
if (target.is(obj.options.target)) {
|
1762
|
-
target.trigger(
|
1817
|
+
target.trigger('click');
|
1763
1818
|
}
|
1764
1819
|
}
|
1765
1820
|
});
|
@@ -1772,7 +1827,7 @@
|
|
1772
1827
|
// Init ARIA
|
1773
1828
|
this.find($this.options.target).attr('aria-checked', 'false').filter('.' + $this.options.activeClass).attr('aria-checked', 'true');
|
1774
1829
|
|
1775
|
-
this.on(
|
1830
|
+
this.on('click', this.options.target, function(e) {
|
1776
1831
|
|
1777
1832
|
var ele = UI.$(this);
|
1778
1833
|
|
@@ -1785,7 +1840,7 @@
|
|
1785
1840
|
$this.find($this.options.target).not(ele).attr('aria-checked', 'false');
|
1786
1841
|
ele.attr('aria-checked', 'true');
|
1787
1842
|
|
1788
|
-
$this.trigger(
|
1843
|
+
$this.trigger('change.uk.button', [ele]);
|
1789
1844
|
});
|
1790
1845
|
|
1791
1846
|
},
|
@@ -1798,22 +1853,22 @@
|
|
1798
1853
|
UI.component('buttonCheckbox', {
|
1799
1854
|
|
1800
1855
|
defaults: {
|
1801
|
-
|
1802
|
-
|
1856
|
+
activeClass: 'uk-active',
|
1857
|
+
target: '.uk-button'
|
1803
1858
|
},
|
1804
1859
|
|
1805
1860
|
boot: function() {
|
1806
1861
|
|
1807
|
-
UI.$html.on(
|
1862
|
+
UI.$html.on('click.buttoncheckbox.uikit', '[data-uk-button-checkbox]', function(e) {
|
1808
1863
|
var ele = UI.$(this);
|
1809
1864
|
|
1810
|
-
if (!ele.data(
|
1865
|
+
if (!ele.data('buttonCheckbox')) {
|
1811
1866
|
|
1812
|
-
var obj = UI.buttonCheckbox(ele, UI.Utils.options(ele.attr(
|
1867
|
+
var obj = UI.buttonCheckbox(ele, UI.Utils.options(ele.attr('data-uk-button-checkbox'))),
|
1813
1868
|
target = UI.$(e.target);
|
1814
1869
|
|
1815
1870
|
if (target.is(obj.options.target)) {
|
1816
|
-
target.trigger(
|
1871
|
+
target.trigger('click');
|
1817
1872
|
}
|
1818
1873
|
}
|
1819
1874
|
});
|
@@ -1826,7 +1881,7 @@
|
|
1826
1881
|
// Init ARIA
|
1827
1882
|
this.find($this.options.target).attr('aria-checked', 'false').filter('.' + $this.options.activeClass).attr('aria-checked', 'true');
|
1828
1883
|
|
1829
|
-
this.on(
|
1884
|
+
this.on('click', this.options.target, function(e) {
|
1830
1885
|
var ele = UI.$(this);
|
1831
1886
|
|
1832
1887
|
if (ele.is('a[href="#"]')) e.preventDefault();
|
@@ -1836,7 +1891,7 @@
|
|
1836
1891
|
// Update ARIA
|
1837
1892
|
ele.attr('aria-checked', ele.hasClass($this.options.activeClass));
|
1838
1893
|
|
1839
|
-
$this.trigger(
|
1894
|
+
$this.trigger('change.uk.button', [ele]);
|
1840
1895
|
});
|
1841
1896
|
|
1842
1897
|
},
|
@@ -1853,13 +1908,13 @@
|
|
1853
1908
|
|
1854
1909
|
boot: function() {
|
1855
1910
|
|
1856
|
-
UI.$html.on(
|
1911
|
+
UI.$html.on('click.button.uikit', '[data-uk-button]', function(e) {
|
1857
1912
|
var ele = UI.$(this);
|
1858
1913
|
|
1859
|
-
if (!ele.data(
|
1914
|
+
if (!ele.data('button')) {
|
1860
1915
|
|
1861
|
-
var obj = UI.button(ele, UI.Utils.options(ele.attr(
|
1862
|
-
ele.trigger(
|
1916
|
+
var obj = UI.button(ele, UI.Utils.options(ele.attr('data-uk-button')));
|
1917
|
+
ele.trigger('click');
|
1863
1918
|
}
|
1864
1919
|
});
|
1865
1920
|
},
|
@@ -1871,111 +1926,110 @@
|
|
1871
1926
|
// Init ARIA
|
1872
1927
|
this.element.attr('aria-pressed', this.element.hasClass("uk-active"));
|
1873
1928
|
|
1874
|
-
this.on(
|
1929
|
+
this.on('click', function(e) {
|
1875
1930
|
|
1876
1931
|
if ($this.element.is('a[href="#"]')) e.preventDefault();
|
1877
1932
|
|
1878
1933
|
$this.toggle();
|
1879
|
-
$this.trigger(
|
1934
|
+
$this.trigger('change.uk.button', [$this.element.blur().hasClass('uk-active')]);
|
1880
1935
|
});
|
1881
1936
|
|
1882
1937
|
},
|
1883
1938
|
|
1884
1939
|
toggle: function() {
|
1885
|
-
this.element.toggleClass(
|
1940
|
+
this.element.toggleClass('uk-active');
|
1886
1941
|
|
1887
1942
|
// Update ARIA
|
1888
|
-
this.element.attr('aria-pressed', this.element.hasClass(
|
1943
|
+
this.element.attr('aria-pressed', this.element.hasClass('uk-active'));
|
1889
1944
|
}
|
1890
1945
|
});
|
1891
1946
|
|
1892
1947
|
})(UIkit);
|
1893
1948
|
|
1894
|
-
|
1895
1949
|
(function(UI) {
|
1896
1950
|
|
1897
1951
|
"use strict";
|
1898
1952
|
|
1899
1953
|
var active = false, hoverIdle, flips = {
|
1900
|
-
|
1901
|
-
|
1902
|
-
|
1903
|
-
|
1904
|
-
|
1905
|
-
|
1906
|
-
|
1907
|
-
|
1908
|
-
|
1909
|
-
|
1910
|
-
|
1911
|
-
|
1912
|
-
|
1913
|
-
},
|
1914
|
-
|
1915
|
-
|
1916
|
-
|
1917
|
-
|
1918
|
-
|
1919
|
-
|
1920
|
-
|
1921
|
-
|
1922
|
-
|
1923
|
-
|
1924
|
-
|
1925
|
-
|
1926
|
-
|
1927
|
-
},
|
1928
|
-
|
1929
|
-
|
1930
|
-
|
1931
|
-
|
1932
|
-
|
1933
|
-
|
1934
|
-
|
1935
|
-
|
1936
|
-
|
1937
|
-
|
1938
|
-
|
1939
|
-
|
1940
|
-
|
1954
|
+
x: {
|
1955
|
+
'bottom-left' : 'bottom-right',
|
1956
|
+
'bottom-right' : 'bottom-left',
|
1957
|
+
'bottom-center' : 'bottom-center',
|
1958
|
+
'top-left' : 'top-right',
|
1959
|
+
'top-right' : 'top-left',
|
1960
|
+
'top-center' : 'top-center',
|
1961
|
+
'left-top' : 'right-top',
|
1962
|
+
'left-bottom' : 'right-bottom',
|
1963
|
+
'left-center' : 'right-center',
|
1964
|
+
'right-top' : 'left-top',
|
1965
|
+
'right-bottom' : 'left-bottom',
|
1966
|
+
'right-center' : 'left-center'
|
1967
|
+
},
|
1968
|
+
y: {
|
1969
|
+
'bottom-left' : 'top-left',
|
1970
|
+
'bottom-right' : 'top-right',
|
1971
|
+
'bottom-center' : 'top-center',
|
1972
|
+
'top-left' : 'bottom-left',
|
1973
|
+
'top-right' : 'bottom-right',
|
1974
|
+
'top-center' : 'bottom-center',
|
1975
|
+
'left-top' : 'left-bottom',
|
1976
|
+
'left-bottom' : 'left-top',
|
1977
|
+
'left-center' : 'left-center',
|
1978
|
+
'right-top' : 'right-bottom',
|
1979
|
+
'right-bottom' : 'right-top',
|
1980
|
+
'right-center' : 'right-center'
|
1981
|
+
},
|
1982
|
+
xy: {
|
1983
|
+
'bottom-left' : 'top-right',
|
1984
|
+
'bottom-right' : 'top-left',
|
1985
|
+
'bottom-center' : 'top-center',
|
1986
|
+
'top-left' : 'bottom-right',
|
1987
|
+
'top-right' : 'bottom-left',
|
1988
|
+
'top-center' : 'bottom-center',
|
1989
|
+
'left-top' : 'right-bottom',
|
1990
|
+
'left-bottom' : 'right-top',
|
1991
|
+
'left-center' : 'right-center',
|
1992
|
+
'right-top' : 'left-bottom',
|
1993
|
+
'right-bottom' : 'left-top',
|
1994
|
+
'right-center' : 'left-center'
|
1941
1995
|
}
|
1942
1996
|
};
|
1943
1997
|
|
1944
1998
|
UI.component('dropdown', {
|
1945
1999
|
|
1946
2000
|
defaults: {
|
1947
|
-
|
1948
|
-
|
1949
|
-
|
1950
|
-
|
1951
|
-
|
1952
|
-
|
1953
|
-
|
1954
|
-
|
1955
|
-
|
1956
|
-
|
2001
|
+
mode : 'hover',
|
2002
|
+
pos : 'bottom-left',
|
2003
|
+
offset : 0,
|
2004
|
+
remaintime : 800,
|
2005
|
+
justify : false,
|
2006
|
+
boundary : UI.$win,
|
2007
|
+
delay : 0,
|
2008
|
+
dropdownSelector: '.uk-dropdown,.uk-dropdown-blank',
|
2009
|
+
hoverDelayIdle : 250,
|
2010
|
+
preventflip : false
|
1957
2011
|
},
|
1958
2012
|
|
1959
2013
|
remainIdle: false,
|
1960
2014
|
|
1961
2015
|
boot: function() {
|
1962
2016
|
|
1963
|
-
var triggerevent = UI.support.touch ?
|
2017
|
+
var triggerevent = UI.support.touch ? 'click' : 'mouseenter';
|
1964
2018
|
|
1965
2019
|
// init code
|
1966
|
-
UI.$html.on(triggerevent+
|
2020
|
+
UI.$html.on(triggerevent+'.dropdown.uikit focus pointerdown', '[data-uk-dropdown]', function(e) {
|
1967
2021
|
|
1968
2022
|
var ele = UI.$(this);
|
1969
2023
|
|
1970
|
-
if (!ele.data(
|
2024
|
+
if (!ele.data('dropdown')) {
|
1971
2025
|
|
1972
|
-
var dropdown = UI.dropdown(ele, UI.Utils.options(ele.attr(
|
2026
|
+
var dropdown = UI.dropdown(ele, UI.Utils.options(ele.attr('data-uk-dropdown')));
|
1973
2027
|
|
1974
|
-
if (
|
2028
|
+
if (e.type=='click' || (e.type=='mouseenter' && dropdown.options.mode=='hover')) {
|
1975
2029
|
dropdown.element.trigger(triggerevent);
|
1976
2030
|
}
|
1977
2031
|
|
1978
|
-
if (dropdown.
|
2032
|
+
if (dropdown.dropdown.length) {
|
1979
2033
|
e.preventDefault();
|
1980
2034
|
}
|
1981
2035
|
}
|
@@ -1991,6 +2045,10 @@
|
|
1991
2045
|
return UI.$.inArray(UI.$(this).css('position'), ['relative', 'fixed', 'absolute']) !== -1;
|
1992
2046
|
}).slice(0,1);
|
1993
2047
|
|
2048
|
+
if (!this.offsetParent.length) {
|
2049
|
+
this.offsetParent = this.element;
|
2050
|
+
}
|
2051
|
+
|
1994
2052
|
this.centered = this.dropdown.hasClass('uk-dropdown-center');
|
1995
2053
|
this.justified = this.options.justify ? UI.$(this.options.justify) : false;
|
1996
2054
|
|
@@ -2014,17 +2072,18 @@
|
|
2014
2072
|
|
2015
2073
|
// Init ARIA
|
2016
2074
|
this.element.attr('aria-haspopup', 'true');
|
2017
|
-
this.element.attr('aria-expanded', this.element.hasClass(
|
2075
|
+
this.element.attr('aria-expanded', this.element.hasClass('uk-open'));
|
2076
|
+
this.dropdown.attr('aria-hidden', 'true');
|
2018
2077
|
|
2019
|
-
if (this.options.mode ==
|
2078
|
+
if (this.options.mode == 'click' || UI.support.touch) {
|
2020
2079
|
|
2021
|
-
this.on(
|
2080
|
+
this.on('click.uk.dropdown', function(e) {
|
2022
2081
|
|
2023
2082
|
var $target = UI.$(e.target);
|
2024
2083
|
|
2025
2084
|
if (!$target.parents($this.options.dropdownSelector).length) {
|
2026
2085
|
|
2027
|
-
if ($target.is("a[href='#']") || $target.parent().is("a[href='#']") || ($this.dropdown.length && !$this.dropdown.is(
|
2086
|
+
if ($target.is("a[href='#']") || $target.parent().is("a[href='#']") || ($this.dropdown.length && !$this.dropdown.is(':visible')) ){
|
2028
2087
|
e.preventDefault();
|
2029
2088
|
}
|
2030
2089
|
|
@@ -2037,7 +2096,7 @@
|
|
2037
2096
|
|
2038
2097
|
} else {
|
2039
2098
|
|
2040
|
-
if (!$this.dropdown.find(e.target).length || $target.is(
|
2099
|
+
if (!$this.dropdown.find(e.target).length || $target.is('.uk-dropdown-close') || $target.parents('.uk-dropdown-close').length) {
|
2041
2100
|
$this.hide();
|
2042
2101
|
}
|
2043
2102
|
}
|
@@ -2045,7 +2104,7 @@
|
|
2045
2104
|
|
2046
2105
|
} else {
|
2047
2106
|
|
2048
|
-
this.on(
|
2107
|
+
this.on('mouseenter', function(e) {
|
2049
2108
|
|
2050
2109
|
$this.trigger('pointerenter.uk.dropdown', [$this]);
|
2051
2110
|
|
@@ -2073,7 +2132,7 @@
|
|
2073
2132
|
hoverIdle = setTimeout($this.show.bind($this), $this.options.delay);
|
2074
2133
|
}
|
2075
2134
|
|
2076
|
-
}).on(
|
2135
|
+
}).on('mouseleave', function() {
|
2077
2136
|
|
2078
2137
|
if (hoverIdle) {
|
2079
2138
|
clearTimeout(hoverIdle);
|
@@ -2085,7 +2144,7 @@
|
|
2085
2144
|
|
2086
2145
|
$this.trigger('pointerleave.uk.dropdown', [$this]);
|
2087
2146
|
|
2088
|
-
}).on(
|
2147
|
+
}).on('click', function(e){
|
2089
2148
|
|
2090
2149
|
var $target = UI.$(e.target);
|
2091
2150
|
|
@@ -2094,7 +2153,7 @@
|
|
2094
2153
|
}
|
2095
2154
|
|
2096
2155
|
if (active && active == $this) {
|
2097
|
-
if (!$this.dropdown.find(e.target).length || $target.is(
|
2156
|
+
if (!$this.dropdown.find(e.target).length || $target.is('.uk-dropdown-close') || $target.parents('.uk-dropdown-close').length) {
|
2098
2157
|
$this.hide();
|
2099
2158
|
}
|
2100
2159
|
return;
|
@@ -2111,7 +2170,7 @@
|
|
2111
2170
|
|
2112
2171
|
show: function(){
|
2113
2172
|
|
2114
|
-
UI.$html.off(
|
2173
|
+
UI.$html.off('click.outer.dropdown');
|
2115
2174
|
|
2116
2175
|
if (active && active != this) {
|
2117
2176
|
active.hide(true);
|
@@ -2128,10 +2187,12 @@
|
|
2128
2187
|
|
2129
2188
|
// Update ARIA
|
2130
2189
|
this.element.attr('aria-expanded', 'true');
|
2190
|
+
this.dropdown.attr('aria-hidden', 'false');
|
2131
2191
|
|
2132
2192
|
this.trigger('show.uk.dropdown', [this]);
|
2133
2193
|
|
2134
2194
|
UI.Utils.checkDisplay(this.dropdown, true);
|
2195
|
+
UI.Utils.focus(this.dropdown);
|
2135
2196
|
active = this;
|
2136
2197
|
|
2137
2198
|
this.registerOuterClick();
|
@@ -2151,6 +2212,7 @@
|
|
2151
2212
|
|
2152
2213
|
// Update ARIA
|
2153
2214
|
this.element.attr('aria-expanded', 'false');
|
2215
|
+
this.dropdown.attr('aria-hidden', 'true');
|
2154
2216
|
|
2155
2217
|
this.trigger('hide.uk.dropdown', [this, force]);
|
2156
2218
|
|
@@ -2161,11 +2223,11 @@
|
|
2161
2223
|
|
2162
2224
|
var $this = this;
|
2163
2225
|
|
2164
|
-
UI.$html.off(
|
2226
|
+
UI.$html.off('click.outer.dropdown');
|
2165
2227
|
|
2166
2228
|
setTimeout(function() {
|
2167
2229
|
|
2168
|
-
UI.$html.on(
|
2230
|
+
UI.$html.on('click.outer.dropdown', function(e) {
|
2169
2231
|
|
2170
2232
|
if (hoverIdle) {
|
2171
2233
|
clearTimeout(hoverIdle);
|
@@ -2175,7 +2237,7 @@
|
|
2175
2237
|
|
2176
2238
|
if (active == $this && !$this.element.find(e.target).length) {
|
2177
2239
|
$this.hide(true);
|
2178
|
-
UI.$html.off(
|
2240
|
+
UI.$html.off('click.outer.dropdown');
|
2179
2241
|
}
|
2180
2242
|
});
|
2181
2243
|
}, 10);
|
@@ -2186,15 +2248,15 @@
|
|
2186
2248
|
if (!this.dropdown.length) return;
|
2187
2249
|
|
2188
2250
|
// reset
|
2189
|
-
this.dropdown.removeClass('uk-dropdown-top uk-dropdown-bottom uk-dropdown-left uk-dropdown-right uk-dropdown-stack').css({
|
2190
|
-
|
2191
|
-
|
2192
|
-
|
2193
|
-
|
2251
|
+
this.dropdown.removeClass('uk-dropdown-top uk-dropdown-bottom uk-dropdown-left uk-dropdown-right uk-dropdown-stack uk-dropdown-autoflip').css({
|
2252
|
+
topLeft :'',
|
2253
|
+
left :'',
|
2254
|
+
marginLeft :'',
|
2255
|
+
marginRight :''
|
2194
2256
|
});
|
2195
2257
|
|
2196
2258
|
if (this.justified && this.justified.length) {
|
2197
|
-
this.dropdown.css(
|
2259
|
+
this.dropdown.css('min-width', '');
|
2198
2260
|
}
|
2199
2261
|
|
2200
2262
|
var $this = this,
|
@@ -2209,18 +2271,18 @@
|
|
2209
2271
|
dpos = this.options.pos;
|
2210
2272
|
|
2211
2273
|
var variants = {
|
2212
|
-
|
2213
|
-
|
2214
|
-
|
2215
|
-
|
2216
|
-
|
2217
|
-
|
2218
|
-
|
2219
|
-
|
2220
|
-
|
2221
|
-
|
2222
|
-
|
2223
|
-
|
2274
|
+
'bottom-left' : {top: 0 + pos.height + posoffset, left: 0},
|
2275
|
+
'bottom-right' : {top: 0 + pos.height + posoffset, left: 0 + pos.width - width},
|
2276
|
+
'bottom-center' : {top: 0 + pos.height + posoffset, left: 0 + pos.width / 2 - width / 2},
|
2277
|
+
'top-left' : {top: 0 - height - posoffset, left: 0},
|
2278
|
+
'top-right' : {top: 0 - height - posoffset, left: 0 + pos.width - width},
|
2279
|
+
'top-center' : {top: 0 - height - posoffset, left: 0 + pos.width / 2 - width / 2},
|
2280
|
+
'left-top' : {top: 0, left: 0 - width - posoffset},
|
2281
|
+
'left-bottom' : {top: 0 + pos.height - height, left: 0 - width - posoffset},
|
2282
|
+
'left-center' : {top: 0 + pos.height / 2 - height / 2, left: 0 - width - posoffset},
|
2283
|
+
'right-top' : {top: 0, left: 0 + pos.width + posoffset},
|
2284
|
+
'right-bottom' : {top: 0 + pos.height - height, left: 0 + pos.width + posoffset},
|
2285
|
+
'right-center' : {top: 0 + pos.height / 2 - height / 2, left: 0 + pos.width + posoffset}
|
2224
2286
|
},
|
2225
2287
|
css = {},
|
2226
2288
|
pp;
|
@@ -2253,6 +2315,7 @@
|
|
2253
2315
|
|
2254
2316
|
pp = fdpos.split('-');
|
2255
2317
|
css = variants[fdpos] ? variants[fdpos] : variants['bottom-left'];
|
2318
|
+
dropdown.addClass('uk-dropdown-autoflip');
|
2256
2319
|
|
2257
2320
|
// check flipped
|
2258
2321
|
if (this.checkBoundary(pos.left + css.left, pos.top + css.top, width, height, boundarywidth)) {
|
@@ -2264,11 +2327,11 @@
|
|
2264
2327
|
}
|
2265
2328
|
|
2266
2329
|
if (width > boundarywidth) {
|
2267
|
-
dropdown.addClass(
|
2330
|
+
dropdown.addClass('uk-dropdown-stack');
|
2268
2331
|
this.trigger('stack.uk.dropdown', [this]);
|
2269
2332
|
}
|
2270
2333
|
|
2271
|
-
dropdown.css(css).css(
|
2334
|
+
dropdown.css(css).css('display', '').addClass('uk-dropdown-'+pp[0]);
|
2272
2335
|
},
|
2273
2336
|
|
2274
2337
|
checkBoundary: function(left, top, width, height, boundarywidth) {
|
@@ -2291,9 +2354,9 @@
|
|
2291
2354
|
UI.component('dropdownOverlay', {
|
2292
2355
|
|
2293
2356
|
defaults: {
|
2294
|
-
|
2295
|
-
|
2296
|
-
|
2357
|
+
justify : false,
|
2358
|
+
cls : '',
|
2359
|
+
duration: 200
|
2297
2360
|
},
|
2298
2361
|
|
2299
2362
|
boot: function() {
|
@@ -2301,11 +2364,11 @@
|
|
2301
2364
|
// init code
|
2302
2365
|
UI.ready(function(context) {
|
2303
2366
|
|
2304
|
-
UI.$(
|
2367
|
+
UI.$('[data-uk-dropdown-overlay]', context).each(function() {
|
2305
2368
|
var ele = UI.$(this);
|
2306
2369
|
|
2307
|
-
if (!ele.data(
|
2308
|
-
UI.dropdownOverlay(ele, UI.Utils.options(ele.attr(
|
2370
|
+
if (!ele.data('dropdownOverlay')) {
|
2371
|
+
UI.dropdownOverlay(ele, UI.Utils.options(ele.attr('data-uk-dropdown-overlay')));
|
2309
2372
|
}
|
2310
2373
|
});
|
2311
2374
|
});
|
@@ -2330,7 +2393,7 @@
|
|
2330
2393
|
$this.dropdown = dropdown;
|
2331
2394
|
|
2332
2395
|
if ($this.justified && $this.justified.length) {
|
2333
|
-
justify($this.overlay.css({
|
2396
|
+
justify($this.overlay.css({display:'block', marginLeft:'', marginRight:''}), $this.justified, $this.justified.outerWidth());
|
2334
2397
|
}
|
2335
2398
|
},
|
2336
2399
|
|
@@ -2400,17 +2463,17 @@
|
|
2400
2463
|
|
2401
2464
|
var jwidth = justifyTo.outerWidth();
|
2402
2465
|
|
2403
|
-
ele.css(
|
2466
|
+
ele.css('min-width', jwidth);
|
2404
2467
|
|
2405
2468
|
if (UI.langdirection == 'right') {
|
2406
2469
|
|
2407
2470
|
var right1 = boundarywidth - (justifyTo.offset().left + jwidth),
|
2408
2471
|
right2 = boundarywidth - (ele.offset().left + ele.outerWidth());
|
2409
2472
|
|
2410
|
-
ele.css(
|
2473
|
+
ele.css('margin-right', right1 - right2);
|
2411
2474
|
|
2412
2475
|
} else {
|
2413
|
-
ele.css(
|
2476
|
+
ele.css('margin-left', justifyTo.offset().left - offset.left);
|
2414
2477
|
}
|
2415
2478
|
}
|
2416
2479
|
}
|
@@ -2426,10 +2489,10 @@
|
|
2426
2489
|
UI.component('gridMatchHeight', {
|
2427
2490
|
|
2428
2491
|
defaults: {
|
2429
|
-
|
2430
|
-
|
2431
|
-
|
2432
|
-
|
2492
|
+
target : false,
|
2493
|
+
row : true,
|
2494
|
+
ignorestacked : false,
|
2495
|
+
observe : false
|
2433
2496
|
},
|
2434
2497
|
|
2435
2498
|
boot: function() {
|
@@ -2437,11 +2500,11 @@
|
|
2437
2500
|
// init code
|
2438
2501
|
UI.ready(function(context) {
|
2439
2502
|
|
2440
|
-
UI.$(
|
2503
|
+
UI.$('[data-uk-grid-match]', context).each(function() {
|
2441
2504
|
var grid = UI.$(this), obj;
|
2442
2505
|
|
2443
|
-
if (!grid.data(
|
2444
|
-
obj = UI.gridMatchHeight(grid, UI.Utils.options(grid.attr(
|
2506
|
+
if (!grid.data('gridMatchHeight')) {
|
2507
|
+
obj = UI.gridMatchHeight(grid, UI.Utils.options(grid.attr('data-uk-grid-match')));
|
2445
2508
|
}
|
2446
2509
|
});
|
2447
2510
|
});
|
@@ -2459,7 +2522,7 @@
|
|
2459
2522
|
UI.$win.on('load resize orientationchange', (function() {
|
2460
2523
|
|
2461
2524
|
var fn = function() {
|
2462
|
-
if ($this.element.is(
|
2525
|
+
if ($this.element.is(':visible')) $this.match();
|
2463
2526
|
};
|
2464
2527
|
|
2465
2528
|
UI.$(function() { fn(); });
|
@@ -2470,12 +2533,12 @@
|
|
2470
2533
|
if (this.options.observe) {
|
2471
2534
|
|
2472
2535
|
UI.domObserve(this.element, function(e) {
|
2473
|
-
if ($this.element.is(
|
2536
|
+
if ($this.element.is(':visible')) $this.match();
|
2474
2537
|
});
|
2475
2538
|
}
|
2476
2539
|
|
2477
|
-
this.on(
|
2478
|
-
if(this.element.is(
|
2540
|
+
this.on('display.uk.check', function(e) {
|
2541
|
+
if(this.element.is(':visible')) this.match();
|
2479
2542
|
}.bind(this));
|
2480
2543
|
|
2481
2544
|
grids.push(this);
|
@@ -2483,7 +2546,7 @@
|
|
2483
2546
|
|
2484
2547
|
match: function() {
|
2485
2548
|
|
2486
|
-
var firstvisible = this.columns.filter(
|
2549
|
+
var firstvisible = this.columns.filter(':visible:first');
|
2487
2550
|
|
2488
2551
|
if (!firstvisible.length) return;
|
2489
2552
|
|
@@ -2516,11 +2579,11 @@
|
|
2516
2579
|
// init code
|
2517
2580
|
UI.ready(function(context) {
|
2518
2581
|
|
2519
|
-
UI.$(
|
2582
|
+
UI.$('[data-uk-grid-margin]', context).each(function() {
|
2520
2583
|
var grid = UI.$(this), obj;
|
2521
2584
|
|
2522
|
-
if (!grid.data(
|
2523
|
-
obj = UI.gridMargin(grid, UI.Utils.options(grid.attr(
|
2585
|
+
if (!grid.data('gridMargin')) {
|
2586
|
+
obj = UI.gridMargin(grid, UI.Utils.options(grid.attr('data-uk-grid-margin')));
|
2524
2587
|
}
|
2525
2588
|
});
|
2526
2589
|
});
|
@@ -2540,9 +2603,9 @@
|
|
2540
2603
|
|
2541
2604
|
var active = false, activeCount = 0, $html = UI.$html, body;
|
2542
2605
|
|
2543
|
-
UI.$win.on(
|
2606
|
+
UI.$win.on('resize orientationchange', UI.Utils.debounce(function(){
|
2544
2607
|
UI.$('.uk-modal.uk-open').each(function(){
|
2545
|
-
UI.$(this).data('modal').resize();
|
2608
|
+
return UI.$(this).data('modal') && UI.$(this).data('modal').resize();
|
2546
2609
|
});
|
2547
2610
|
}, 150));
|
2548
2611
|
|
@@ -2568,18 +2631,18 @@
|
|
2568
2631
|
|
2569
2632
|
var $this = this;
|
2570
2633
|
|
2571
|
-
this.paddingdir =
|
2572
|
-
this.dialog = this.find(
|
2634
|
+
this.paddingdir = 'padding-' + (UI.langdirection == 'left' ? 'right':'left');
|
2635
|
+
this.dialog = this.find('.uk-modal-dialog');
|
2573
2636
|
|
2574
2637
|
this.active = false;
|
2575
2638
|
|
2576
2639
|
// Update ARIA
|
2577
|
-
this.element.attr('aria-hidden', this.element.hasClass(
|
2640
|
+
this.element.attr('aria-hidden', this.element.hasClass('uk-open'));
|
2578
2641
|
|
2579
|
-
this.on(
|
2642
|
+
this.on('click', '.uk-modal-close', function(e) {
|
2580
2643
|
e.preventDefault();
|
2581
2644
|
$this.hide();
|
2582
|
-
}).on(
|
2645
|
+
}).on('click', function(e) {
|
2583
2646
|
|
2584
2647
|
var target = UI.$(e.target);
|
2585
2648
|
|
@@ -2592,7 +2655,7 @@
|
|
2592
2655
|
},
|
2593
2656
|
|
2594
2657
|
toggle: function() {
|
2595
|
-
return this[this.isActive() ?
|
2658
|
+
return this[this.isActive() ? 'hide' : 'show']();
|
2596
2659
|
},
|
2597
2660
|
|
2598
2661
|
show: function() {
|
@@ -2607,7 +2670,7 @@
|
|
2607
2670
|
active.hide(true);
|
2608
2671
|
}
|
2609
2672
|
|
2610
|
-
this.element.removeClass(
|
2673
|
+
this.element.removeClass('uk-open').show();
|
2611
2674
|
this.resize(true);
|
2612
2675
|
|
2613
2676
|
if (this.options.modal) {
|
@@ -2622,17 +2685,19 @@
|
|
2622
2685
|
this.hasTransitioned = false;
|
2623
2686
|
this.element.one(UI.support.transition.end, function(){
|
2624
2687
|
$this.hasTransitioned = true;
|
2625
|
-
|
2688
|
+
UI.Utils.focus($this.dialog, 'a[href]');
|
2689
|
+
}).addClass('uk-open');
|
2626
2690
|
} else {
|
2627
|
-
this.element.addClass(
|
2691
|
+
this.element.addClass('uk-open');
|
2692
|
+
UI.Utils.focus(this.dialog, 'a[href]');
|
2628
2693
|
}
|
2629
2694
|
|
2630
|
-
$html.addClass(
|
2695
|
+
$html.addClass('uk-modal-page').height(); // force browser engine redraw
|
2631
2696
|
|
2632
2697
|
// Update ARIA
|
2633
2698
|
this.element.attr('aria-hidden', 'false');
|
2634
2699
|
|
2635
|
-
this.element.trigger(
|
2700
|
+
this.element.trigger('show.uk.modal');
|
2636
2701
|
|
2637
2702
|
UI.Utils.checkDisplay(this.dialog, true);
|
2638
2703
|
|
@@ -2647,7 +2712,7 @@
|
|
2647
2712
|
|
2648
2713
|
this.one(UI.support.transition.end, function() {
|
2649
2714
|
$this._hide();
|
2650
|
-
}).removeClass(
|
2715
|
+
}).removeClass('uk-open');
|
2651
2716
|
|
2652
2717
|
} else {
|
2653
2718
|
|
@@ -2675,9 +2740,9 @@
|
|
2675
2740
|
pad = parseInt(this.dialog.css('margin-top'), 10) + parseInt(this.dialog.css('margin-bottom'), 10);
|
2676
2741
|
|
2677
2742
|
if ((dh + pad) < window.innerHeight) {
|
2678
|
-
this.dialog.css({
|
2743
|
+
this.dialog.css({top: (window.innerHeight/2 - dh/2) - pad });
|
2679
2744
|
} else {
|
2680
|
-
this.dialog.css({
|
2745
|
+
this.dialog.css({top: ''});
|
2681
2746
|
}
|
2682
2747
|
}
|
2683
2748
|
},
|
@@ -2697,8 +2762,8 @@
|
|
2697
2762
|
h = wh - 2*(offset < 20 ? 20:offset) - dh;
|
2698
2763
|
|
2699
2764
|
scrollable.css({
|
2700
|
-
|
2701
|
-
|
2765
|
+
maxHeight: (h < this.options.minScrollHeight ? '':h),
|
2766
|
+
height:''
|
2702
2767
|
});
|
2703
2768
|
|
2704
2769
|
return true;
|
@@ -2739,16 +2804,16 @@
|
|
2739
2804
|
boot: function() {
|
2740
2805
|
|
2741
2806
|
// init code
|
2742
|
-
UI.$html.on(
|
2807
|
+
UI.$html.on('click.modal.uikit', '[data-uk-modal]', function(e) {
|
2743
2808
|
|
2744
2809
|
var ele = UI.$(this);
|
2745
2810
|
|
2746
|
-
if (ele.is(
|
2811
|
+
if (ele.is('a')) {
|
2747
2812
|
e.preventDefault();
|
2748
2813
|
}
|
2749
2814
|
|
2750
|
-
if (!ele.data(
|
2751
|
-
var modal = UI.modalTrigger(ele, UI.Utils.options(ele.attr(
|
2815
|
+
if (!ele.data('modalTrigger')) {
|
2816
|
+
var modal = UI.modalTrigger(ele, UI.Utils.options(ele.attr('data-uk-modal')));
|
2752
2817
|
modal.show();
|
2753
2818
|
}
|
2754
2819
|
|
@@ -2769,7 +2834,7 @@
|
|
2769
2834
|
var $this = this;
|
2770
2835
|
|
2771
2836
|
this.options = UI.$.extend({
|
2772
|
-
|
2837
|
+
target: $this.element.is('a') ? $this.element.attr('href') : false
|
2773
2838
|
}, this.options);
|
2774
2839
|
|
2775
2840
|
this.modal = UI.modal(this.options.target, this.options);
|
@@ -2780,17 +2845,17 @@
|
|
2780
2845
|
});
|
2781
2846
|
|
2782
2847
|
//methods
|
2783
|
-
this.proxy(this.modal,
|
2848
|
+
this.proxy(this.modal, 'show hide isActive');
|
2784
2849
|
}
|
2785
2850
|
});
|
2786
2851
|
|
2787
2852
|
UI.modal.dialog = function(content, options) {
|
2788
2853
|
|
2789
|
-
var modal = UI.modal(UI.$(UI.modal.dialog.template).appendTo(
|
2854
|
+
var modal = UI.modal(UI.$(UI.modal.dialog.template).appendTo('body'), options);
|
2790
2855
|
|
2791
|
-
modal.on(
|
2856
|
+
modal.on('hide.uk.modal', function(){
|
2792
2857
|
if (modal.persist) {
|
2793
|
-
modal.persist.appendTo(modal.persist.data(
|
2858
|
+
modal.persist.appendTo(modal.persist.data('modalPersistParent'));
|
2794
2859
|
modal.persist = false;
|
2795
2860
|
}
|
2796
2861
|
modal.element.remove();
|
@@ -2861,22 +2926,16 @@
|
|
2861
2926
|
|
2862
2927
|
input = modal.element.find("input[type='text']").val(value || '').on('keyup', function(e){
|
2863
2928
|
if (e.keyCode == 13) {
|
2864
|
-
modal.element.find(
|
2929
|
+
modal.element.find('.js-modal-ok').trigger('click');
|
2865
2930
|
}
|
2866
2931
|
});
|
2867
2932
|
|
2868
|
-
modal.element.find(
|
2933
|
+
modal.element.find('.js-modal-ok').on('click', function(){
|
2869
2934
|
if (onsubmit(input.val())!==false){
|
2870
2935
|
modal.hide();
|
2871
2936
|
}
|
2872
2937
|
});
|
2873
2938
|
|
2874
|
-
modal.on('show.uk.modal', function(){
|
2875
|
-
setTimeout(function(){
|
2876
|
-
input.focus();
|
2877
|
-
}, 50);
|
2878
|
-
});
|
2879
|
-
|
2880
2939
|
return modal.show();
|
2881
2940
|
};
|
2882
2941
|
|
@@ -2891,13 +2950,11 @@
|
|
2891
2950
|
return modal.show();
|
2892
2951
|
};
|
2893
2952
|
|
2894
|
-
|
2895
2953
|
UI.modal.labels = {
|
2896
|
-
|
2897
|
-
|
2954
|
+
Ok: 'Ok',
|
2955
|
+
Cancel: 'Cancel'
|
2898
2956
|
};
|
2899
2957
|
|
2900
|
-
|
2901
2958
|
// helper functions
|
2902
2959
|
function setContent(content, modal){
|
2903
2960
|
|
@@ -2910,7 +2967,7 @@
|
|
2910
2967
|
|
2911
2968
|
if(content.parent().length) {
|
2912
2969
|
modal.persist = content;
|
2913
|
-
modal.persist.data(
|
2970
|
+
modal.persist.data('modalPersistParent', content.parent());
|
2914
2971
|
}
|
2915
2972
|
}else if (typeof content === 'string' || typeof content === 'number') {
|
2916
2973
|
// just insert the data as innerHTML
|
@@ -2934,9 +2991,9 @@
|
|
2934
2991
|
UI.component('nav', {
|
2935
2992
|
|
2936
2993
|
defaults: {
|
2937
|
-
|
2938
|
-
|
2939
|
-
|
2994
|
+
toggle: '>li.uk-parent > a[href="#"]',
|
2995
|
+
lists: '>li.uk-parent > ul',
|
2996
|
+
multiple: false
|
2940
2997
|
},
|
2941
2998
|
|
2942
2999
|
boot: function() {
|
@@ -2944,11 +3001,11 @@
|
|
2944
3001
|
// init code
|
2945
3002
|
UI.ready(function(context) {
|
2946
3003
|
|
2947
|
-
UI.$(
|
3004
|
+
UI.$('[data-uk-nav]', context).each(function() {
|
2948
3005
|
var nav = UI.$(this);
|
2949
3006
|
|
2950
|
-
if (!nav.data(
|
2951
|
-
var obj = UI.nav(nav, UI.Utils.options(nav.attr(
|
3007
|
+
if (!nav.data('nav')) {
|
3008
|
+
var obj = UI.nav(nav, UI.Utils.options(nav.attr('data-uk-nav')));
|
2952
3009
|
}
|
2953
3010
|
});
|
2954
3011
|
});
|
@@ -2958,26 +3015,41 @@
|
|
2958
3015
|
|
2959
3016
|
var $this = this;
|
2960
3017
|
|
2961
|
-
this.on(
|
3018
|
+
this.on('click.uk.nav', this.options.toggle, function(e) {
|
2962
3019
|
e.preventDefault();
|
2963
3020
|
var ele = UI.$(this);
|
2964
3021
|
$this.open(ele.parent()[0] == $this.element[0] ? ele : ele.parent("li"));
|
2965
3022
|
});
|
2966
3023
|
|
3024
|
+
this.update();
|
3025
|
+
|
3026
|
+
UI.domObserve(this.element, function(e) {
|
3027
|
+
if ($this.element.find($this.options.lists).not('[role]').length) {
|
3028
|
+
$this.update();
|
3029
|
+
}
|
3030
|
+
});
|
3031
|
+
},
|
3032
|
+
|
3033
|
+
update: function() {
|
3034
|
+
|
3035
|
+
var $this = this;
|
3036
|
+
|
2967
3037
|
this.find(this.options.lists).each(function() {
|
2968
|
-
|
2969
|
-
|
3038
|
+
|
3039
|
+
var $ele = UI.$(this).attr('role', 'menu'),
|
3040
|
+
parent = $ele.closest('li'),
|
2970
3041
|
active = parent.hasClass("uk-active");
|
2971
3042
|
|
2972
|
-
|
2973
|
-
|
3043
|
+
if (!parent.data('list-container')) {
|
3044
|
+
$ele.wrap('<div style="overflow:hidden;height:0;position:relative;"></div>');
|
3045
|
+
parent.data('list-container', $ele.parent()[active ? 'removeClass':'addClass']('uk-hidden'));
|
3046
|
+
}
|
2974
3047
|
|
2975
3048
|
// Init ARIA
|
2976
3049
|
parent.attr('aria-expanded', parent.hasClass("uk-open"));
|
2977
3050
|
|
2978
3051
|
if (active) $this.open(parent, true);
|
2979
3052
|
});
|
2980
|
-
|
2981
3053
|
},
|
2982
3054
|
|
2983
3055
|
open: function(li, noanimation) {
|
@@ -3042,15 +3114,17 @@
|
|
3042
3114
|
// helper
|
3043
3115
|
|
3044
3116
|
function getHeight(ele) {
|
3045
|
-
var $ele = UI.$(ele), height = "auto";
|
3046
3117
|
|
3047
|
-
|
3118
|
+
var $ele = UI.$(ele), height = 'auto';
|
3119
|
+
|
3120
|
+
if ($ele.is(':visible')) {
|
3048
3121
|
height = $ele.outerHeight();
|
3049
3122
|
} else {
|
3123
|
+
|
3050
3124
|
var tmp = {
|
3051
|
-
position: $ele.css(
|
3052
|
-
visibility: $ele.css(
|
3053
|
-
display: $ele.css(
|
3125
|
+
position: $ele.css('position'),
|
3126
|
+
visibility: $ele.css('visibility'),
|
3127
|
+
display: $ele.css('display')
|
3054
3128
|
};
|
3055
3129
|
|
3056
3130
|
height = $ele.css({position: 'absolute', visibility: 'hidden', display: 'block'}).outerHeight();
|
@@ -3073,30 +3147,41 @@
|
|
3073
3147
|
$html = UI.$html,
|
3074
3148
|
Offcanvas = {
|
3075
3149
|
|
3076
|
-
show: function(element) {
|
3150
|
+
show: function(element, options) {
|
3077
3151
|
|
3078
3152
|
element = UI.$(element);
|
3079
3153
|
|
3080
3154
|
if (!element.length) return;
|
3081
3155
|
|
3156
|
+
options = UI.$.extend({mode: 'push'}, options);
|
3157
|
+
|
3082
3158
|
var $body = UI.$('body'),
|
3083
|
-
bar = element.find(
|
3084
|
-
rtl = (UI.langdirection ==
|
3085
|
-
flip = bar.hasClass(
|
3159
|
+
bar = element.find('.uk-offcanvas-bar:first'),
|
3160
|
+
rtl = (UI.langdirection == 'right'),
|
3161
|
+
flip = bar.hasClass('uk-offcanvas-bar-flip') ? -1:1,
|
3086
3162
|
dir = flip * (rtl ? -1 : 1),
|
3087
3163
|
|
3088
3164
|
scrollbarwidth = window.innerWidth - $body.width();
|
3089
3165
|
|
3090
3166
|
scrollpos = {x: window.pageXOffset, y: window.pageYOffset};
|
3091
3167
|
|
3092
|
-
|
3168
|
+
bar.attr('mode', options.mode);
|
3169
|
+
element.addClass('uk-active');
|
3170
|
+
|
3171
|
+
$body.css({width: window.innerWidth - scrollbarwidth, height: window.innerHeight}).addClass('uk-offcanvas-page');
|
3093
3172
|
|
3094
|
-
|
3095
|
-
|
3173
|
+
if (options.mode == 'push' || options.mode == 'reveal') {
|
3174
|
+
$body.css((rtl ? 'margin-right' : 'margin-left'), (rtl ? -1 : 1) * (bar.outerWidth() * dir));
|
3175
|
+
}
|
3096
3176
|
|
3097
|
-
|
3177
|
+
if (options.mode == 'reveal') {
|
3178
|
+
bar.css('clip', 'rect(0, '+bar.outerWidth()+'px, 100vh, 0)');
|
3179
|
+
}
|
3098
3180
|
|
3099
|
-
|
3181
|
+
$html.css('margin-top', scrollpos.y * -1).width(); // .width() - force redraw
|
3182
|
+
|
3183
|
+
|
3184
|
+
bar.addClass('uk-offcanvas-bar-show');
|
3100
3185
|
|
3101
3186
|
this._initElement(element);
|
3102
3187
|
|
@@ -3109,14 +3194,14 @@
|
|
3109
3194
|
hide: function(force) {
|
3110
3195
|
|
3111
3196
|
var $body = UI.$('body'),
|
3112
|
-
panel = UI.$(
|
3113
|
-
rtl = (UI.langdirection ==
|
3114
|
-
bar = panel.find(
|
3197
|
+
panel = UI.$('.uk-offcanvas.uk-active'),
|
3198
|
+
rtl = (UI.langdirection == 'right'),
|
3199
|
+
bar = panel.find('.uk-offcanvas-bar:first'),
|
3115
3200
|
finalize = function() {
|
3116
|
-
$body.removeClass(
|
3117
|
-
panel.removeClass(
|
3201
|
+
$body.removeClass('uk-offcanvas-page').css({width: '', height: '', marginLeft: '', marginRight: ''});
|
3202
|
+
panel.removeClass('uk-active');
|
3118
3203
|
|
3119
|
-
bar.removeClass(
|
3204
|
+
bar.removeClass('uk-offcanvas-bar-show');
|
3120
3205
|
$html.css('margin-top', '');
|
3121
3206
|
window.scrollTo(scrollpos.x, scrollpos.y);
|
3122
3207
|
bar.trigger('hide.uk.offcanvas', [panel, bar]);
|
@@ -3126,15 +3211,20 @@
|
|
3126
3211
|
};
|
3127
3212
|
|
3128
3213
|
if (!panel.length) return;
|
3214
|
+
if (bar.attr('mode') == 'none') force = true;
|
3129
3215
|
|
3130
3216
|
if (UI.support.transition && !force) {
|
3131
3217
|
|
3132
3218
|
$body.one(UI.support.transition.end, function() {
|
3133
3219
|
finalize();
|
3134
|
-
}).css((rtl ?
|
3220
|
+
}).css((rtl ? 'margin-right' : 'margin-left'), '');
|
3221
|
+
|
3222
|
+
if (bar.attr('mode') == 'reveal') {
|
3223
|
+
bar.css('clip', '');
|
3224
|
+
}
|
3135
3225
|
|
3136
3226
|
setTimeout(function(){
|
3137
|
-
bar.removeClass(
|
3227
|
+
bar.removeClass('uk-offcanvas-bar-show');
|
3138
3228
|
}, 0);
|
3139
3229
|
|
3140
3230
|
} else {
|
@@ -3144,17 +3234,17 @@
|
|
3144
3234
|
|
3145
3235
|
_initElement: function(element) {
|
3146
3236
|
|
3147
|
-
if (element.data(
|
3237
|
+
if (element.data('OffcanvasInit')) return;
|
3148
3238
|
|
3149
|
-
element.on(
|
3239
|
+
element.on('click.uk.offcanvas swipeRight.uk.offcanvas swipeLeft.uk.offcanvas', function(e) {
|
3150
3240
|
|
3151
3241
|
var target = UI.$(e.target);
|
3152
3242
|
|
3153
3243
|
if (!e.type.match(/swipe/)) {
|
3154
3244
|
|
3155
|
-
if (!target.hasClass(
|
3156
|
-
if (target.hasClass(
|
3157
|
-
if (target.parents(
|
3245
|
+
if (!target.hasClass('uk-offcanvas-close')) {
|
3246
|
+
if (target.hasClass('uk-offcanvas-bar')) return;
|
3247
|
+
if (target.parents('.uk-offcanvas-bar:first').length) return;
|
3158
3248
|
}
|
3159
3249
|
}
|
3160
3250
|
|
@@ -3162,12 +3252,12 @@
|
|
3162
3252
|
Offcanvas.hide();
|
3163
3253
|
});
|
3164
3254
|
|
3165
|
-
element.on(
|
3255
|
+
element.on('click', 'a[href*="#"]', function(e){
|
3166
3256
|
|
3167
3257
|
var link = UI.$(this),
|
3168
|
-
href = link.attr(
|
3258
|
+
href = link.attr('href');
|
3169
3259
|
|
3170
|
-
if (href ==
|
3260
|
+
if (href == '#') {
|
3171
3261
|
return;
|
3172
3262
|
}
|
3173
3263
|
|
@@ -3195,7 +3285,7 @@
|
|
3195
3285
|
Offcanvas.hide();
|
3196
3286
|
});
|
3197
3287
|
|
3198
|
-
element.data(
|
3288
|
+
element.data('OffcanvasInit', true);
|
3199
3289
|
}
|
3200
3290
|
};
|
3201
3291
|
|
@@ -3204,14 +3294,14 @@
|
|
3204
3294
|
boot: function() {
|
3205
3295
|
|
3206
3296
|
// init code
|
3207
|
-
$html.on(
|
3297
|
+
$html.on('click.offcanvas.uikit', '[data-uk-offcanvas]', function(e) {
|
3208
3298
|
|
3209
3299
|
e.preventDefault();
|
3210
3300
|
|
3211
3301
|
var ele = UI.$(this);
|
3212
3302
|
|
3213
|
-
if (!ele.data(
|
3214
|
-
var obj = UI.offcanvasTrigger(ele, UI.Utils.options(ele.attr(
|
3303
|
+
if (!ele.data('offcanvasTrigger')) {
|
3304
|
+
var obj = UI.offcanvasTrigger(ele, UI.Utils.options(ele.attr('data-uk-offcanvas')));
|
3215
3305
|
ele.trigger("click");
|
3216
3306
|
}
|
3217
3307
|
});
|
@@ -3229,12 +3319,13 @@
|
|
3229
3319
|
var $this = this;
|
3230
3320
|
|
3231
3321
|
this.options = UI.$.extend({
|
3232
|
-
|
3322
|
+
target: $this.element.is('a') ? $this.element.attr('href') : false,
|
3323
|
+
mode: 'push'
|
3233
3324
|
}, this.options);
|
3234
3325
|
|
3235
|
-
this.on(
|
3326
|
+
this.on('click', function(e) {
|
3236
3327
|
e.preventDefault();
|
3237
|
-
Offcanvas.show($this.options.target);
|
3328
|
+
Offcanvas.show($this.options.target, $this.options);
|
3238
3329
|
});
|
3239
3330
|
}
|
3240
3331
|
});
|
@@ -3253,7 +3344,7 @@
|
|
3253
3344
|
|
3254
3345
|
defaults: {
|
3255
3346
|
connect : false,
|
3256
|
-
toggle :
|
3347
|
+
toggle : '>*',
|
3257
3348
|
active : 0,
|
3258
3349
|
animation : false,
|
3259
3350
|
duration : 200,
|
@@ -3267,11 +3358,11 @@
|
|
3267
3358
|
// init code
|
3268
3359
|
UI.ready(function(context) {
|
3269
3360
|
|
3270
|
-
UI.$(
|
3361
|
+
UI.$('[data-uk-switcher]', context).each(function() {
|
3271
3362
|
var switcher = UI.$(this);
|
3272
3363
|
|
3273
|
-
if (!switcher.data(
|
3274
|
-
var obj = UI.switcher(switcher, UI.Utils.options(switcher.attr(
|
3364
|
+
if (!switcher.data('switcher')) {
|
3365
|
+
var obj = UI.switcher(switcher, UI.Utils.options(switcher.attr('data-uk-switcher')));
|
3275
3366
|
}
|
3276
3367
|
});
|
3277
3368
|
});
|
@@ -3281,70 +3372,72 @@
|
|
3281
3372
|
|
3282
3373
|
var $this = this;
|
3283
3374
|
|
3284
|
-
this.on(
|
3375
|
+
this.on('click.uk.switcher', this.options.toggle, function(e) {
|
3285
3376
|
e.preventDefault();
|
3286
3377
|
$this.show(this);
|
3287
3378
|
});
|
3288
3379
|
|
3289
|
-
if (this.options.connect) {
|
3380
|
+
if (!this.options.connect) {
|
3381
|
+
return;
|
3382
|
+
}
|
3290
3383
|
|
3291
|
-
|
3384
|
+
this.connect = UI.$(this.options.connect);
|
3292
3385
|
|
3293
|
-
|
3386
|
+
if (!this.connect.length) {
|
3387
|
+
return;
|
3388
|
+
}
|
3294
3389
|
|
3295
|
-
|
3296
|
-
if (this.connect.length) {
|
3390
|
+
this.connect.on('click.uk.switcher', '[data-uk-switcher-item]', function(e) {
|
3297
3391
|
|
3298
|
-
|
3299
|
-
this.connect.children().attr('aria-hidden', 'true');
|
3392
|
+
e.preventDefault();
|
3300
3393
|
|
3301
|
-
|
3394
|
+
var item = UI.$(this).attr('data-uk-switcher-item');
|
3302
3395
|
|
3303
|
-
|
3396
|
+
if ($this.index == item) return;
|
3304
3397
|
|
3305
|
-
|
3398
|
+
switch(item) {
|
3399
|
+
case 'next':
|
3400
|
+
case 'previous':
|
3401
|
+
$this.show($this.index + (item=='next' ? 1:-1));
|
3402
|
+
break;
|
3403
|
+
default:
|
3404
|
+
$this.show(parseInt(item, 10));
|
3405
|
+
}
|
3406
|
+
});
|
3306
3407
|
|
3307
|
-
|
3408
|
+
if (this.options.swiping) {
|
3308
3409
|
|
3309
|
-
|
3310
|
-
|
3311
|
-
|
3312
|
-
|
3313
|
-
|
3314
|
-
|
3315
|
-
|
3316
|
-
}
|
3317
|
-
});
|
3410
|
+
this.connect.on('swipeRight swipeLeft', function(e) {
|
3411
|
+
e.preventDefault();
|
3412
|
+
if (!window.getSelection().toString()) {
|
3413
|
+
$this.show($this.index + (e.type == 'swipeLeft' ? 1 : -1));
|
3414
|
+
}
|
3415
|
+
});
|
3416
|
+
}
|
3318
3417
|
|
3319
|
-
|
3418
|
+
this.update();
|
3419
|
+
},
|
3320
3420
|
|
3321
|
-
|
3322
|
-
e.preventDefault();
|
3323
|
-
if(!window.getSelection().toString()) {
|
3324
|
-
$this.show($this.index + (e.type == 'swipeLeft' ? 1 : -1));
|
3325
|
-
}
|
3326
|
-
});
|
3327
|
-
}
|
3328
|
-
}
|
3421
|
+
update: function() {
|
3329
3422
|
|
3330
|
-
|
3331
|
-
active = toggles.filter(".uk-active");
|
3423
|
+
this.connect.children().removeClass('uk-active').attr('aria-hidden', 'true');
|
3332
3424
|
|
3333
|
-
|
3334
|
-
|
3335
|
-
} else {
|
3425
|
+
var toggles = this.find(this.options.toggle),
|
3426
|
+
active = toggles.filter('.uk-active');
|
3336
3427
|
|
3337
|
-
|
3428
|
+
if (active.length) {
|
3429
|
+
this.show(active, false);
|
3430
|
+
} else {
|
3338
3431
|
|
3339
|
-
|
3340
|
-
this.show(active.length ? active : toggles.eq(0), false);
|
3341
|
-
}
|
3432
|
+
if (this.options.active===false) return;
|
3342
3433
|
|
3343
|
-
|
3344
|
-
|
3345
|
-
active.attr('aria-expanded', 'true');
|
3434
|
+
active = toggles.eq(this.options.active);
|
3435
|
+
this.show(active.length ? active : toggles.eq(0), false);
|
3346
3436
|
}
|
3347
3437
|
|
3438
|
+
// Init ARIA for toggles
|
3439
|
+
toggles.not(active).attr('aria-expanded', 'false');
|
3440
|
+
active.attr('aria-expanded', 'true');
|
3348
3441
|
},
|
3349
3442
|
|
3350
3443
|
show: function(tab, animate) {
|
@@ -3353,18 +3446,16 @@
|
|
3353
3446
|
return;
|
3354
3447
|
}
|
3355
3448
|
|
3449
|
+
var toggles = this.find(this.options.toggle);
|
3450
|
+
|
3356
3451
|
if (isNaN(tab)) {
|
3357
3452
|
tab = UI.$(tab);
|
3358
3453
|
} else {
|
3359
|
-
|
3360
|
-
var toggles = this.find(this.options.toggle);
|
3361
|
-
|
3362
3454
|
tab = tab < 0 ? toggles.length-1 : tab;
|
3363
3455
|
tab = toggles.eq(toggles[tab] ? tab : 0);
|
3364
3456
|
}
|
3365
3457
|
|
3366
3458
|
var $this = this,
|
3367
|
-
toggles = this.find(this.options.toggle),
|
3368
3459
|
active = UI.$(tab),
|
3369
3460
|
animation = Animations[this.options.animation] || function(current, next) {
|
3370
3461
|
|
@@ -3517,7 +3608,9 @@
|
|
3517
3608
|
|
3518
3609
|
next.addClass(clsIn).one(UI.support.animation.end, function() {
|
3519
3610
|
|
3520
|
-
|
3611
|
+
setTimeout(function () {
|
3612
|
+
next.removeClass(''+clsIn+'').css({opacity:'', display:''});
|
3613
|
+
}, 0);
|
3521
3614
|
|
3522
3615
|
d.resolve();
|
3523
3616
|
|
@@ -3555,12 +3648,12 @@
|
|
3555
3648
|
UI.component('tab', {
|
3556
3649
|
|
3557
3650
|
defaults: {
|
3558
|
-
|
3559
|
-
|
3560
|
-
|
3561
|
-
|
3562
|
-
|
3563
|
-
|
3651
|
+
target : '>li:not(.uk-tab-responsive, .uk-disabled)',
|
3652
|
+
connect : false,
|
3653
|
+
active : 0,
|
3654
|
+
animation : false,
|
3655
|
+
duration : 200,
|
3656
|
+
swiping : true
|
3564
3657
|
},
|
3565
3658
|
|
3566
3659
|
boot: function() {
|
@@ -3568,12 +3661,12 @@
|
|
3568
3661
|
// init code
|
3569
3662
|
UI.ready(function(context) {
|
3570
3663
|
|
3571
|
-
UI.$(
|
3664
|
+
UI.$('[data-uk-tab]', context).each(function() {
|
3572
3665
|
|
3573
3666
|
var tab = UI.$(this);
|
3574
3667
|
|
3575
|
-
if (!tab.data(
|
3576
|
-
var obj = UI.tab(tab, UI.Utils.options(tab.attr(
|
3668
|
+
if (!tab.data('tab')) {
|
3669
|
+
var obj = UI.tab(tab, UI.Utils.options(tab.attr('data-uk-tab')));
|
3577
3670
|
}
|
3578
3671
|
});
|
3579
3672
|
});
|
@@ -3585,7 +3678,7 @@
|
|
3585
3678
|
|
3586
3679
|
this.current = false;
|
3587
3680
|
|
3588
|
-
this.on(
|
3681
|
+
this.on('click.uk.tab', this.options.target, function(e) {
|
3589
3682
|
|
3590
3683
|
e.preventDefault();
|
3591
3684
|
|
@@ -3595,9 +3688,9 @@
|
|
3595
3688
|
|
3596
3689
|
var current = $this.find($this.options.target).not(this);
|
3597
3690
|
|
3598
|
-
current.removeClass(
|
3691
|
+
current.removeClass('uk-active').blur();
|
3599
3692
|
|
3600
|
-
$this.trigger(
|
3693
|
+
$this.trigger('change.uk.tab', [UI.$(this).addClass('uk-active'), $this.current]);
|
3601
3694
|
|
3602
3695
|
$this.current = UI.$(this);
|
3603
3696
|
|
@@ -3619,7 +3712,7 @@
|
|
3619
3712
|
this.responsivetab.lst = this.responsivetab.dropdown.find('ul');
|
3620
3713
|
this.responsivetab.caption = this.responsivetab.find('a:first');
|
3621
3714
|
|
3622
|
-
if (this.element.hasClass(
|
3715
|
+
if (this.element.hasClass('uk-tab-bottom')) this.responsivetab.dropdown.addClass('uk-dropdown-up');
|
3623
3716
|
|
3624
3717
|
// handle click
|
3625
3718
|
this.responsivetab.lst.on('click.uk.tab', 'a', function(e) {
|
@@ -3640,29 +3733,30 @@
|
|
3640
3733
|
|
3641
3734
|
// init UIkit components
|
3642
3735
|
if (this.options.connect) {
|
3736
|
+
|
3643
3737
|
this.switcher = UI.switcher(this.element, {
|
3644
|
-
|
3645
|
-
|
3646
|
-
|
3647
|
-
|
3648
|
-
|
3649
|
-
|
3738
|
+
toggle : '>li:not(.uk-tab-responsive)',
|
3739
|
+
connect : this.options.connect,
|
3740
|
+
active : this.options.active,
|
3741
|
+
animation : this.options.animation,
|
3742
|
+
duration : this.options.duration,
|
3743
|
+
swiping : this.options.swiping
|
3650
3744
|
});
|
3651
3745
|
}
|
3652
3746
|
|
3653
|
-
UI.dropdown(this.responsivetab, {
|
3747
|
+
UI.dropdown(this.responsivetab, {mode: 'click', preventflip: 'y'});
|
3654
3748
|
|
3655
3749
|
// init
|
3656
|
-
$this.trigger(
|
3750
|
+
$this.trigger('change.uk.tab', [this.element.find(this.options.target).not('.uk-tab-responsive').filter('.uk-active')]);
|
3657
3751
|
|
3658
3752
|
this.check();
|
3659
3753
|
|
3660
3754
|
UI.$win.on('resize orientationchange', UI.Utils.debounce(function(){
|
3661
|
-
if ($this.element.is(
|
3755
|
+
if ($this.element.is(':visible')) $this.check();
|
3662
3756
|
}, 100));
|
3663
3757
|
|
3664
3758
|
this.on('display.uk.check', function(){
|
3665
|
-
if ($this.element.is(
|
3759
|
+
if ($this.element.is(':visible')) $this.check();
|
3666
3760
|
});
|
3667
3761
|
},
|
3668
3762
|
|
@@ -3699,7 +3793,8 @@
|
|
3699
3793
|
|
3700
3794
|
if (!item.hasClass('uk-disabled')) {
|
3701
3795
|
|
3702
|
-
clone = item[0].outerHTML
|
3796
|
+
clone = UI.$(item[0].outerHTML);
|
3797
|
+
clone.find('a').data('index', i);
|
3703
3798
|
|
3704
3799
|
this.responsivetab.lst.append(clone);
|
3705
3800
|
}
|
@@ -3730,12 +3825,12 @@
|
|
3730
3825
|
// auto init
|
3731
3826
|
UI.ready(function(context) {
|
3732
3827
|
|
3733
|
-
UI.$(
|
3828
|
+
UI.$('[data-uk-cover]', context).each(function(){
|
3734
3829
|
|
3735
3830
|
var ele = UI.$(this);
|
3736
3831
|
|
3737
|
-
if(!ele.data(
|
3738
|
-
var plugin = UI.cover(ele, UI.Utils.options(ele.attr(
|
3832
|
+
if(!ele.data('cover')) {
|
3833
|
+
var plugin = UI.cover(ele, UI.Utils.options(ele.attr('data-uk-cover')));
|
3739
3834
|
}
|
3740
3835
|
});
|
3741
3836
|
});
|
@@ -3749,8 +3844,8 @@
|
|
3749
3844
|
this.check();
|
3750
3845
|
}.bind(this), 100));
|
3751
3846
|
|
3752
|
-
this.on(
|
3753
|
-
if(this.element.is(
|
3847
|
+
this.on('display.uk.check', function(e) {
|
3848
|
+
if (this.element.is(':visible')) this.check();
|
3754
3849
|
}.bind(this));
|
3755
3850
|
|
3756
3851
|
this.check();
|
@@ -3760,19 +3855,14 @@
|
|
3760
3855
|
var src = this.element.attr('src');
|
3761
3856
|
|
3762
3857
|
this.element.attr('src', '').on('load', function(){
|
3763
|
-
|
3764
3858
|
this.contentWindow.postMessage('{ "event": "command", "func": "mute", "method":"setVolume", "value":0}', '*');
|
3765
|
-
|
3766
3859
|
}).attr('src', [src, (src.indexOf('?') > -1 ? '&':'?'), 'enablejsapi=1&api=1'].join(''));
|
3767
3860
|
}
|
3768
3861
|
},
|
3769
3862
|
|
3770
3863
|
check: function() {
|
3771
3864
|
|
3772
|
-
this.element.css({
|
3773
|
-
'width' : '',
|
3774
|
-
'height' : ''
|
3775
|
-
});
|
3865
|
+
this.element.css({ width : '', height : '' });
|
3776
3866
|
|
3777
3867
|
this.dimension = {w: this.element.width(), h: this.element.height()};
|
3778
3868
|
|
@@ -3784,7 +3874,7 @@
|
|
3784
3874
|
this.dimension.h = this.element.attr('height');
|
3785
3875
|
}
|
3786
3876
|
|
3787
|
-
this.ratio
|
3877
|
+
this.ratio = this.dimension.w / this.dimension.h;
|
3788
3878
|
|
3789
3879
|
var w = this.parent.width(), h = this.parent.height(), width, height;
|
3790
3880
|
|
@@ -3801,10 +3891,7 @@
|
|
3801
3891
|
height = Math.ceil(w / this.ratio);
|
3802
3892
|
}
|
3803
3893
|
|
3804
|
-
this.element.css({
|
3805
|
-
'width' : width,
|
3806
|
-
'height' : height
|
3807
|
-
});
|
3894
|
+
this.element.css({ width : width, height : height });
|
3808
3895
|
}
|
3809
3896
|
});
|
3810
3897
|
|