fomantic-ui-sass 2.7.8 → 2.8.1
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 +4 -4
- data/CHANGELOG.md +4 -0
- data/app/assets/javascripts/semantic-ui/api.js +1 -1
- data/app/assets/javascripts/semantic-ui/calendar.js +41 -18
- data/app/assets/javascripts/semantic-ui/dropdown.js +58 -33
- data/app/assets/javascripts/semantic-ui/form.js +9 -4
- data/app/assets/javascripts/semantic-ui/modal.js +96 -33
- data/app/assets/javascripts/semantic-ui/popup.js +8 -8
- data/app/assets/javascripts/semantic-ui/progress.js +10 -8
- data/app/assets/javascripts/semantic-ui/rating.js +35 -6
- data/app/assets/javascripts/semantic-ui/sidebar.js +2 -3
- data/app/assets/javascripts/semantic-ui/slider.js +78 -29
- data/app/assets/javascripts/semantic-ui/tab.js +1 -1
- data/app/assets/javascripts/semantic-ui/toast.js +395 -121
- data/app/assets/stylesheets/semantic-ui/collections/_breadcrumb.scss +3 -3
- data/app/assets/stylesheets/semantic-ui/collections/_form.scss +741 -143
- data/app/assets/stylesheets/semantic-ui/collections/_grid.scss +35 -35
- data/app/assets/stylesheets/semantic-ui/collections/_menu.scss +73 -117
- data/app/assets/stylesheets/semantic-ui/collections/_message.scss +11 -11
- data/app/assets/stylesheets/semantic-ui/collections/_table.scss +976 -191
- data/app/assets/stylesheets/semantic-ui/elements/_all.scss +1 -0
- data/app/assets/stylesheets/semantic-ui/elements/_button.scss +51 -81
- data/app/assets/stylesheets/semantic-ui/elements/_container.scss +12 -12
- data/app/assets/stylesheets/semantic-ui/elements/_divider.scss +35 -14
- data/app/assets/stylesheets/semantic-ui/elements/_emoji.scss +12312 -0
- data/app/assets/stylesheets/semantic-ui/elements/_header.scss +111 -66
- data/app/assets/stylesheets/semantic-ui/elements/_icon.scss +70 -31
- data/app/assets/stylesheets/semantic-ui/elements/_image.scss +28 -28
- data/app/assets/stylesheets/semantic-ui/elements/_input.scss +218 -69
- data/app/assets/stylesheets/semantic-ui/elements/_label.scss +20 -20
- data/app/assets/stylesheets/semantic-ui/elements/_list.scss +52 -51
- data/app/assets/stylesheets/semantic-ui/elements/_loader.scss +85 -91
- data/app/assets/stylesheets/semantic-ui/elements/_placeholder.scss +8 -8
- data/app/assets/stylesheets/semantic-ui/elements/_rail.scss +11 -11
- data/app/assets/stylesheets/semantic-ui/elements/_reveal.scss +31 -10
- data/app/assets/stylesheets/semantic-ui/elements/_segment.scss +38 -38
- data/app/assets/stylesheets/semantic-ui/elements/_step.scss +16 -17
- data/app/assets/stylesheets/semantic-ui/elements/_text.scss +3 -3
- data/app/assets/stylesheets/semantic-ui/modules/_accordion.scss +6 -6
- data/app/assets/stylesheets/semantic-ui/modules/_calendar.scss +2 -2
- data/app/assets/stylesheets/semantic-ui/modules/_checkbox.scss +14 -124
- data/app/assets/stylesheets/semantic-ui/modules/_dimmer.scss +21 -21
- data/app/assets/stylesheets/semantic-ui/modules/_dropdown.scss +181 -110
- data/app/assets/stylesheets/semantic-ui/modules/_embed.scss +12 -12
- data/app/assets/stylesheets/semantic-ui/modules/_modal.scss +121 -30
- data/app/assets/stylesheets/semantic-ui/modules/_popup.scss +71 -72
- data/app/assets/stylesheets/semantic-ui/modules/_progress.scss +44 -26
- data/app/assets/stylesheets/semantic-ui/modules/_rating.scss +246 -21
- data/app/assets/stylesheets/semantic-ui/modules/_search.scss +16 -13
- data/app/assets/stylesheets/semantic-ui/modules/_shape.scss +2 -2
- data/app/assets/stylesheets/semantic-ui/modules/_sidebar.scss +12 -14
- data/app/assets/stylesheets/semantic-ui/modules/_slider.scss +20 -23
- data/app/assets/stylesheets/semantic-ui/modules/_tab.scss +2 -2
- data/app/assets/stylesheets/semantic-ui/modules/_toast.scss +542 -155
- data/app/assets/stylesheets/semantic-ui/views/_ad.scss +16 -16
- data/app/assets/stylesheets/semantic-ui/views/_card.scss +42 -17
- data/app/assets/stylesheets/semantic-ui/views/_comment.scss +9 -9
- data/app/assets/stylesheets/semantic-ui/views/_feed.scss +20 -5
- data/app/assets/stylesheets/semantic-ui/views/_item.scss +33 -12
- data/app/assets/stylesheets/semantic-ui/views/_statistic.scss +60 -46
- data/lib/fomantic/ui/sass/version.rb +2 -2
- metadata +2 -1
@@ -318,8 +318,7 @@ $.fn.sidebar = function(parameters) {
|
|
318
318
|
cache: function() {
|
319
319
|
module.cache = {
|
320
320
|
width : $module.outerWidth(),
|
321
|
-
height : $module.outerHeight()
|
322
|
-
rtl : ($module.css('direction') == 'rtl')
|
321
|
+
height : $module.outerHeight()
|
323
322
|
};
|
324
323
|
},
|
325
324
|
layout: function() {
|
@@ -761,7 +760,7 @@ $.fn.sidebar = function(parameters) {
|
|
761
760
|
},
|
762
761
|
rtl: function () {
|
763
762
|
if(module.cache.rtl === undefined) {
|
764
|
-
module.cache.rtl = ($module.css('direction')
|
763
|
+
module.cache.rtl = $module.attr('dir') === 'rtl' || $module.css('direction') === 'rtl';
|
765
764
|
}
|
766
765
|
return module.cache.rtl;
|
767
766
|
}
|
@@ -89,6 +89,8 @@ $.fn.slider = function(parameters) {
|
|
89
89
|
isTouch,
|
90
90
|
gapRatio = 1,
|
91
91
|
|
92
|
+
initialPosition,
|
93
|
+
initialLoad,
|
92
94
|
module
|
93
95
|
;
|
94
96
|
|
@@ -96,6 +98,7 @@ $.fn.slider = function(parameters) {
|
|
96
98
|
|
97
99
|
initialize: function() {
|
98
100
|
module.debug('Initializing slider', settings);
|
101
|
+
initialLoad = true;
|
99
102
|
|
100
103
|
currentRange += 1;
|
101
104
|
documentEventID = currentRange;
|
@@ -111,6 +114,7 @@ $.fn.slider = function(parameters) {
|
|
111
114
|
module.read.metadata();
|
112
115
|
module.read.settings();
|
113
116
|
|
117
|
+
initialLoad = false;
|
114
118
|
module.instantiate();
|
115
119
|
},
|
116
120
|
|
@@ -313,31 +317,52 @@ $.fn.slider = function(parameters) {
|
|
313
317
|
},
|
314
318
|
|
315
319
|
event: {
|
316
|
-
down: function(event
|
320
|
+
down: function(event) {
|
317
321
|
event.preventDefault();
|
318
322
|
if(module.is.range()) {
|
319
323
|
var
|
320
|
-
eventPos = module.determine.eventPos(event
|
324
|
+
eventPos = module.determine.eventPos(event),
|
321
325
|
newPos = module.determine.pos(eventPos)
|
322
326
|
;
|
323
|
-
|
327
|
+
// Special handling if range mode and both thumbs have the same value
|
328
|
+
if(module.is.range() && settings.preventCrossover && module.thumbVal === module.secondThumbVal) {
|
329
|
+
initialPosition = newPos;
|
330
|
+
$currThumb = undefined;
|
331
|
+
} else {
|
332
|
+
$currThumb = module.determine.closestThumb(newPos);
|
333
|
+
}
|
324
334
|
}
|
325
335
|
if(!module.is.disabled()) {
|
326
336
|
module.bind.slidingEvents();
|
327
337
|
}
|
328
338
|
},
|
329
|
-
move: function(event
|
339
|
+
move: function(event) {
|
330
340
|
event.preventDefault();
|
331
|
-
var value = module.determine.valueFromEvent(event
|
341
|
+
var value = module.determine.valueFromEvent(event);
|
342
|
+
if($currThumb === undefined) {
|
343
|
+
var
|
344
|
+
eventPos = module.determine.eventPos(event),
|
345
|
+
newPos = module.determine.pos(eventPos)
|
346
|
+
;
|
347
|
+
$currThumb = initialPosition > newPos ? $thumb : $secondThumb;
|
348
|
+
}
|
332
349
|
if(module.get.step() == 0 || module.is.smooth()) {
|
333
350
|
var
|
334
351
|
thumbVal = module.thumbVal,
|
335
352
|
secondThumbVal = module.secondThumbVal,
|
336
|
-
thumbSmoothVal = module.determine.smoothValueFromEvent(event
|
353
|
+
thumbSmoothVal = module.determine.smoothValueFromEvent(event)
|
337
354
|
;
|
338
355
|
if(!$currThumb.hasClass('second')) {
|
356
|
+
if(settings.preventCrossover) {
|
357
|
+
value = Math.min(secondThumbVal, value);
|
358
|
+
thumbSmoothVal = Math.min(secondThumbVal, thumbSmoothVal);
|
359
|
+
}
|
339
360
|
thumbVal = value;
|
340
361
|
} else {
|
362
|
+
if(settings.preventCrossover) {
|
363
|
+
value = Math.max(thumbVal, value);
|
364
|
+
thumbSmoothVal = Math.max(thumbVal, thumbSmoothVal);
|
365
|
+
}
|
341
366
|
secondThumbVal = value;
|
342
367
|
}
|
343
368
|
value = Math.abs(thumbVal - (secondThumbVal || 0));
|
@@ -349,13 +374,16 @@ $.fn.slider = function(parameters) {
|
|
349
374
|
});
|
350
375
|
}
|
351
376
|
},
|
352
|
-
up: function(event
|
377
|
+
up: function(event) {
|
353
378
|
event.preventDefault();
|
354
|
-
var value = module.determine.valueFromEvent(event
|
379
|
+
var value = module.determine.valueFromEvent(event);
|
355
380
|
module.set.value(value);
|
356
381
|
module.unbind.slidingEvents();
|
357
382
|
},
|
358
383
|
keydown: function(event, first) {
|
384
|
+
if(module.is.range() && settings.preventCrossover && module.thumbVal === module.secondThumbVal) {
|
385
|
+
$currThumb = undefined;
|
386
|
+
}
|
359
387
|
if(module.is.focused()) {
|
360
388
|
$(document).trigger(event);
|
361
389
|
}
|
@@ -574,7 +602,7 @@ $.fn.slider = function(parameters) {
|
|
574
602
|
return value;
|
575
603
|
},
|
576
604
|
currentThumbValue: function() {
|
577
|
-
return $currThumb.hasClass('second') ? module.secondThumbVal : module.thumbVal;
|
605
|
+
return $currThumb !== undefined && $currThumb.hasClass('second') ? module.secondThumbVal : module.thumbVal;
|
578
606
|
},
|
579
607
|
thumbValue: function(which) {
|
580
608
|
switch(which) {
|
@@ -615,22 +643,23 @@ $.fn.slider = function(parameters) {
|
|
615
643
|
if( settings.autoAdjustLabels ) {
|
616
644
|
var
|
617
645
|
numLabels = module.get.numLabels(),
|
646
|
+
trackLength = module.get.trackLength(),
|
618
647
|
gapCounter = 1
|
619
648
|
;
|
620
649
|
|
621
650
|
// While the distance between two labels is too short,
|
622
651
|
// we divide the number of labels at each iteration
|
623
652
|
// and apply only if the modulo of the operation is an odd number.
|
624
|
-
|
625
|
-
|
626
|
-
|
653
|
+
if(trackLength>0){
|
654
|
+
while ((trackLength / numLabels) * gapCounter < settings.labelDistance) {
|
655
|
+
if( !(numLabels % gapCounter) ) {
|
656
|
+
gapRatio = gapCounter;
|
657
|
+
}
|
658
|
+
gapCounter += 1;
|
627
659
|
}
|
628
|
-
gapCounter += 1;
|
629
660
|
}
|
630
|
-
return gapRatio;
|
631
|
-
} else {
|
632
|
-
return 1;
|
633
661
|
}
|
662
|
+
return gapRatio;
|
634
663
|
}
|
635
664
|
},
|
636
665
|
|
@@ -650,6 +679,9 @@ $.fn.slider = function(parameters) {
|
|
650
679
|
secondThumbPos = parseFloat(module.determine.thumbPos($secondThumb)),
|
651
680
|
secondThumbDelta = Math.abs(eventPos - secondThumbPos)
|
652
681
|
;
|
682
|
+
if(thumbDelta === secondThumbDelta && module.get.thumbValue() === module.get.min()) {
|
683
|
+
return $secondThumb;
|
684
|
+
}
|
653
685
|
return thumbDelta <= secondThumbDelta ? $thumb : $secondThumb;
|
654
686
|
},
|
655
687
|
closestThumbPos: function(eventPos) {
|
@@ -692,9 +724,9 @@ $.fn.slider = function(parameters) {
|
|
692
724
|
;
|
693
725
|
return adjustedPos;
|
694
726
|
},
|
695
|
-
valueFromEvent: function(event
|
727
|
+
valueFromEvent: function(event) {
|
696
728
|
var
|
697
|
-
eventPos = module.determine.eventPos(event
|
729
|
+
eventPos = module.determine.eventPos(event),
|
698
730
|
newPos = module.determine.pos(eventPos),
|
699
731
|
value
|
700
732
|
;
|
@@ -707,12 +739,12 @@ $.fn.slider = function(parameters) {
|
|
707
739
|
}
|
708
740
|
return value;
|
709
741
|
},
|
710
|
-
smoothValueFromEvent: function(event
|
742
|
+
smoothValueFromEvent: function(event) {
|
711
743
|
var
|
712
744
|
min = module.get.min(),
|
713
745
|
max = module.get.max(),
|
714
746
|
trackLength = module.get.trackLength(),
|
715
|
-
eventPos = module.determine.eventPos(event
|
747
|
+
eventPos = module.determine.eventPos(event),
|
716
748
|
newPos = eventPos - module.get.trackOffset(),
|
717
749
|
ratio,
|
718
750
|
value
|
@@ -725,17 +757,19 @@ $.fn.slider = function(parameters) {
|
|
725
757
|
value = ratio * (max - min) + min;
|
726
758
|
return value;
|
727
759
|
},
|
728
|
-
eventPos: function(event
|
760
|
+
eventPos: function(event) {
|
729
761
|
if(module.is.touch()) {
|
730
762
|
var
|
731
|
-
|
732
|
-
|
763
|
+
touchEvent = event.changedTouches ? event : event.originalEvent,
|
764
|
+
touches = touchEvent.changedTouches[0] ? touchEvent.changedTouches : touchEvent.touches,
|
765
|
+
touchY = touches[0].pageY,
|
766
|
+
touchX = touches[0].pageX
|
733
767
|
;
|
734
768
|
return module.is.vertical() ? touchY : touchX;
|
735
769
|
}
|
736
770
|
var
|
737
|
-
clickY = event.pageY || originalEvent.pageY,
|
738
|
-
clickX = event.pageX || originalEvent.pageX
|
771
|
+
clickY = event.pageY || event.originalEvent.pageY,
|
772
|
+
clickX = event.pageX || event.originalEvent.pageX
|
739
773
|
;
|
740
774
|
return module.is.vertical() ? clickY : clickX;
|
741
775
|
},
|
@@ -822,8 +856,10 @@ $.fn.slider = function(parameters) {
|
|
822
856
|
set: {
|
823
857
|
value: function(newValue) {
|
824
858
|
module.update.value(newValue, function(value, thumbVal, secondThumbVal) {
|
825
|
-
|
826
|
-
|
859
|
+
if (!initialLoad || settings.fireOnInit){
|
860
|
+
settings.onChange.call(element, value, thumbVal, secondThumbVal);
|
861
|
+
settings.onMove.call(element, value, thumbVal, secondThumbVal);
|
862
|
+
}
|
827
863
|
});
|
828
864
|
},
|
829
865
|
rangeValue: function(first, second) {
|
@@ -847,8 +883,10 @@ $.fn.slider = function(parameters) {
|
|
847
883
|
value = Math.abs(module.thumbVal - module.secondThumbVal);
|
848
884
|
module.update.position(module.thumbVal, $thumb);
|
849
885
|
module.update.position(module.secondThumbVal, $secondThumb);
|
850
|
-
|
851
|
-
|
886
|
+
if (!initialLoad || settings.fireOnInit) {
|
887
|
+
settings.onChange.call(element, value, module.thumbVal, module.secondThumbVal);
|
888
|
+
settings.onMove.call(element, value, module.thumbVal, module.secondThumbVal);
|
889
|
+
}
|
852
890
|
} else {
|
853
891
|
module.error(error.notrange);
|
854
892
|
}
|
@@ -884,9 +922,18 @@ $.fn.slider = function(parameters) {
|
|
884
922
|
value = newValue;
|
885
923
|
module.thumbVal = value;
|
886
924
|
} else {
|
925
|
+
if($currThumb === undefined) {
|
926
|
+
$currThumb = newValue <= module.get.currentThumbValue() ? $thumb : $secondThumb;
|
927
|
+
}
|
887
928
|
if(!$currThumb.hasClass('second')) {
|
929
|
+
if(settings.preventCrossover) {
|
930
|
+
newValue = Math.min(module.secondThumbVal, newValue);
|
931
|
+
}
|
888
932
|
module.thumbVal = newValue;
|
889
933
|
} else {
|
934
|
+
if(settings.preventCrossover) {
|
935
|
+
newValue = Math.max(module.thumbVal, newValue);
|
936
|
+
}
|
890
937
|
module.secondThumbVal = newValue;
|
891
938
|
}
|
892
939
|
value = Math.abs(module.thumbVal - module.secondThumbVal);
|
@@ -1222,6 +1269,8 @@ $.fn.slider.settings = {
|
|
1222
1269
|
smooth : false,
|
1223
1270
|
autoAdjustLabels : true,
|
1224
1271
|
labelDistance : 100,
|
1272
|
+
preventCrossover : true,
|
1273
|
+
fireOnInit : false,
|
1225
1274
|
|
1226
1275
|
//the decimal place to round to if step is undefined
|
1227
1276
|
decimalPlaces : 2,
|
@@ -100,7 +100,7 @@ $.fn.tab = function(parameters) {
|
|
100
100
|
initializedHistory = true;
|
101
101
|
}
|
102
102
|
|
103
|
-
if(module.determine.activeTab() == null) {
|
103
|
+
if(instance === undefined && module.determine.activeTab() == null) {
|
104
104
|
module.debug('No active tab detected, setting first tab active', module.get.initialPath());
|
105
105
|
module.changeTab(module.get.initialPath());
|
106
106
|
};
|
@@ -43,27 +43,31 @@ $.fn.toast = function(parameters) {
|
|
43
43
|
? $.extend(true, {}, $.fn.toast.settings, parameters)
|
44
44
|
: $.extend({}, $.fn.toast.settings),
|
45
45
|
|
46
|
-
className
|
47
|
-
selector
|
48
|
-
error
|
49
|
-
namespace
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
$
|
56
|
-
$
|
57
|
-
$
|
58
|
-
$
|
59
|
-
|
60
|
-
$
|
61
|
-
$
|
46
|
+
className = settings.className,
|
47
|
+
selector = settings.selector,
|
48
|
+
error = settings.error,
|
49
|
+
namespace = settings.namespace,
|
50
|
+
fields = settings.fields,
|
51
|
+
|
52
|
+
eventNamespace = '.' + namespace,
|
53
|
+
moduleNamespace = namespace + '-module',
|
54
|
+
|
55
|
+
$module = $(this),
|
56
|
+
$toastBox,
|
57
|
+
$toast,
|
58
|
+
$actions,
|
59
|
+
$progress,
|
60
|
+
$progressBar,
|
61
|
+
$animationObject,
|
62
|
+
$close,
|
63
|
+
$context = (settings.context)
|
62
64
|
? $(settings.context)
|
63
65
|
: $('body'),
|
64
66
|
|
65
|
-
|
66
|
-
|
67
|
+
isToastComponent = $module.hasClass('toast') || $module.hasClass('message') || $module.hasClass('card'),
|
68
|
+
|
69
|
+
element = this,
|
70
|
+
instance = isToastComponent ? $module.data(moduleNamespace) : undefined,
|
67
71
|
|
68
72
|
module
|
69
73
|
;
|
@@ -71,34 +75,58 @@ $.fn.toast = function(parameters) {
|
|
71
75
|
|
72
76
|
initialize: function() {
|
73
77
|
module.verbose('Initializing element');
|
74
|
-
if(typeof settings.showProgress !== 'string' || ['top','bottom'].indexOf(settings.showProgress) === -1 ) {
|
75
|
-
settings.showProgress = false;
|
76
|
-
}
|
77
78
|
if (!module.has.container()) {
|
78
79
|
module.create.container();
|
79
80
|
}
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
81
|
+
if(isToastComponent || settings.message !== '' || settings.title !== '' || module.get.iconClass() !== '' || settings.showImage || module.has.configActions()) {
|
82
|
+
if(typeof settings.showProgress !== 'string' || [className.top,className.bottom].indexOf(settings.showProgress) === -1 ) {
|
83
|
+
settings.showProgress = false;
|
84
|
+
}
|
85
|
+
module.create.toast();
|
86
|
+
if(settings.closeOnClick && (settings.closeIcon || $($toast).find(selector.input).length > 0 || module.has.configActions())){
|
87
|
+
settings.closeOnClick = false;
|
88
|
+
}
|
89
|
+
if(!settings.closeOnClick) {
|
90
|
+
$toastBox.addClass(className.unclickable);
|
91
|
+
}
|
92
|
+
module.bind.events();
|
93
|
+
}
|
94
|
+
module.instantiate();
|
95
|
+
if($toastBox) {
|
96
|
+
module.show();
|
87
97
|
}
|
88
|
-
|
98
|
+
},
|
99
|
+
|
100
|
+
instantiate: function() {
|
101
|
+
module.verbose('Storing instance of toast');
|
102
|
+
instance = module;
|
103
|
+
$module
|
104
|
+
.data(moduleNamespace, instance)
|
105
|
+
;
|
89
106
|
},
|
90
107
|
|
91
108
|
destroy: function() {
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
109
|
+
if($toastBox) {
|
110
|
+
module.debug('Removing toast', $toastBox);
|
111
|
+
module.unbind.events();
|
112
|
+
$toastBox.remove();
|
113
|
+
$toastBox = undefined;
|
114
|
+
$toast = undefined;
|
115
|
+
$animationObject = undefined;
|
116
|
+
settings.onRemove.call($toastBox, element);
|
117
|
+
$progress = undefined;
|
118
|
+
$progressBar = undefined;
|
119
|
+
$close = undefined;
|
120
|
+
}
|
121
|
+
$module
|
122
|
+
.removeData(moduleNamespace)
|
123
|
+
;
|
96
124
|
},
|
97
125
|
|
98
126
|
show: function(callback) {
|
99
127
|
callback = callback || function(){};
|
100
128
|
module.debug('Showing toast');
|
101
|
-
if(settings.onShow.call($
|
129
|
+
if(settings.onShow.call($toastBox, element) === false) {
|
102
130
|
module.debug('onShow callback returned false, cancelling toast animation');
|
103
131
|
return;
|
104
132
|
}
|
@@ -106,9 +134,6 @@ $.fn.toast = function(parameters) {
|
|
106
134
|
},
|
107
135
|
|
108
136
|
close: function(callback) {
|
109
|
-
if(module.closeTimer) {
|
110
|
-
clearTimeout(module.closeTimer);
|
111
|
-
}
|
112
137
|
callback = callback || function(){};
|
113
138
|
module.remove.visible();
|
114
139
|
module.unbind.events();
|
@@ -119,74 +144,172 @@ $.fn.toast = function(parameters) {
|
|
119
144
|
create: {
|
120
145
|
container: function() {
|
121
146
|
module.verbose('Creating container');
|
122
|
-
$context.append('<div
|
147
|
+
$context.append($('<div/>',{class: settings.position + ' ' + className.container}));
|
123
148
|
},
|
124
149
|
toast: function() {
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
150
|
+
$toastBox = $('<div/>', {class: className.box});
|
151
|
+
if (!isToastComponent) {
|
152
|
+
module.verbose('Creating toast');
|
153
|
+
$toast = $('<div/>');
|
154
|
+
var $content = $('<div/>', {class: className.content});
|
155
|
+
var iconClass = module.get.iconClass();
|
156
|
+
if (iconClass !== '') {
|
157
|
+
$toast.append($('<i/>', {class: iconClass + ' ' + className.icon}));
|
158
|
+
}
|
159
|
+
|
160
|
+
if (settings.showImage) {
|
161
|
+
$toast.append($('<img>', {
|
162
|
+
class: className.image + ' ' + settings.classImage,
|
163
|
+
src: settings.showImage
|
164
|
+
}));
|
165
|
+
}
|
166
|
+
if (settings.title !== '') {
|
167
|
+
$content.append($('<div/>', {
|
168
|
+
class: className.title,
|
169
|
+
text: settings.title
|
170
|
+
}));
|
171
|
+
}
|
131
172
|
|
132
|
-
|
133
|
-
if (iconClass != '') {
|
134
|
-
var $icon = $('<i/>').addClass(iconClass + ' ' + className.icon);
|
173
|
+
$content.append($('<div/>', {html: module.helpers.escape(settings.message, settings.preserveHTML)}));
|
135
174
|
|
136
175
|
$toast
|
137
|
-
.addClass(className.
|
138
|
-
.append($
|
176
|
+
.addClass(settings.class + ' ' + className.toast)
|
177
|
+
.append($content)
|
139
178
|
;
|
179
|
+
$toast.css('opacity', settings.opacity);
|
180
|
+
if (settings.closeIcon) {
|
181
|
+
$close = $('<i/>', {class: className.close + ' ' + (typeof settings.closeIcon === 'string' ? settings.closeIcon : '')});
|
182
|
+
if($close.hasClass(className.left)) {
|
183
|
+
$toast.prepend($close);
|
184
|
+
} else {
|
185
|
+
$toast.append($close);
|
186
|
+
}
|
187
|
+
}
|
188
|
+
} else {
|
189
|
+
$toast = settings.cloneModule ? $module.clone().removeAttr('id') : $module;
|
190
|
+
$close = $toast.find('> i'+module.helpers.toClass(className.close));
|
191
|
+
settings.closeIcon = ($close.length > 0);
|
140
192
|
}
|
141
|
-
|
142
|
-
|
143
|
-
var
|
144
|
-
$title = $('<div/>')
|
145
|
-
.addClass(className.title)
|
146
|
-
.text(settings.title)
|
147
|
-
;
|
148
|
-
|
149
|
-
$content.append($title);
|
193
|
+
if ($toast.hasClass(className.compact)) {
|
194
|
+
settings.compact = true;
|
150
195
|
}
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
$toast
|
155
|
-
.addClass(settings.class + ' ' + className.toast)
|
156
|
-
.append($content)
|
157
|
-
;
|
158
|
-
$toast.css('opacity', settings.opacity);
|
159
|
-
if(settings.compact || $toast.hasClass('compact')) {
|
160
|
-
$toastBox.addClass('compact');
|
196
|
+
if ($toast.hasClass('card')) {
|
197
|
+
settings.compact = false;
|
161
198
|
}
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
199
|
+
$actions = $toast.find('.actions');
|
200
|
+
if (module.has.configActions()) {
|
201
|
+
if ($actions.length === 0) {
|
202
|
+
$actions = $('<div/>', {class: className.actions + ' ' + (settings.classActions || '')}).appendTo($toast);
|
203
|
+
}
|
204
|
+
if($toast.hasClass('card') && !$actions.hasClass(className.attached)) {
|
205
|
+
$actions.addClass(className.extraContent);
|
206
|
+
if($actions.hasClass(className.vertical)) {
|
207
|
+
$actions.removeClass(className.vertical);
|
208
|
+
module.error(error.verticalCard);
|
209
|
+
}
|
210
|
+
}
|
211
|
+
settings.actions.forEach(function (el) {
|
212
|
+
var icon = el[fields.icon] ? '<i class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
|
213
|
+
text = module.helpers.escape(el[fields.text] || '', settings.preserveHTML),
|
214
|
+
cls = module.helpers.deQuote(el[fields.class] || ''),
|
215
|
+
click = el[fields.click] && $.isFunction(el[fields.click]) ? el[fields.click] : function () {};
|
216
|
+
$actions.append($('<button/>', {
|
217
|
+
html: icon + text,
|
218
|
+
class: className.button + ' ' + cls,
|
219
|
+
click: function () {
|
220
|
+
if (click.call(element, $module) === false) {
|
221
|
+
return;
|
222
|
+
}
|
223
|
+
module.close();
|
224
|
+
}
|
225
|
+
}));
|
226
|
+
});
|
227
|
+
}
|
228
|
+
if ($actions && $actions.hasClass(className.vertical)) {
|
229
|
+
$toast.addClass(className.vertical);
|
230
|
+
}
|
231
|
+
if($actions.length > 0 && !$actions.hasClass(className.attached)) {
|
232
|
+
if ($actions && (!$actions.hasClass(className.basic) || $actions.hasClass(className.left))) {
|
233
|
+
$toast.addClass(className.actions);
|
234
|
+
}
|
235
|
+
}
|
236
|
+
if(settings.displayTime === 'auto'){
|
237
|
+
settings.displayTime = Math.max(settings.minDisplayTime, $toast.text().split(" ").length / settings.wordsPerMinute * 60000);
|
238
|
+
}
|
239
|
+
$toastBox.append($toast);
|
240
|
+
|
241
|
+
if($actions.length > 0 && $actions.hasClass(className.attached)) {
|
242
|
+
$actions.addClass(className.buttons);
|
243
|
+
$actions.detach();
|
244
|
+
$toast.addClass(className.attached);
|
245
|
+
if (!$actions.hasClass(className.vertical)) {
|
246
|
+
if ($actions.hasClass(className.top)) {
|
247
|
+
$toastBox.prepend($actions);
|
248
|
+
$toast.addClass(className.bottom);
|
249
|
+
} else {
|
250
|
+
$toastBox.append($actions);
|
251
|
+
$toast.addClass(className.top);
|
252
|
+
}
|
174
253
|
} else {
|
175
|
-
|
254
|
+
$toast.wrap(
|
255
|
+
$('<div/>',{
|
256
|
+
class:className.vertical + ' ' +
|
257
|
+
className.attached + ' ' +
|
258
|
+
(settings.compact ? className.compact : '')
|
259
|
+
})
|
260
|
+
);
|
261
|
+
if($actions.hasClass(className.left)) {
|
262
|
+
$toast.addClass(className.left).parent().addClass(className.left).prepend($actions);
|
263
|
+
} else {
|
264
|
+
$toast.parent().append($actions);
|
265
|
+
}
|
176
266
|
}
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
267
|
+
}
|
268
|
+
if($module !== $toast) {
|
269
|
+
$module = $toast;
|
270
|
+
element = $toast[0];
|
271
|
+
}
|
272
|
+
if(settings.displayTime > 0) {
|
273
|
+
var progressingClass = className.progressing+' '+(settings.pauseOnHover ? className.pausable:'');
|
274
|
+
if (!!settings.showProgress) {
|
275
|
+
$progress = $('<div/>', {
|
276
|
+
class: className.progress + ' ' + (settings.classProgress || settings.class),
|
277
|
+
'data-percent': ''
|
278
|
+
});
|
279
|
+
if(!settings.classProgress) {
|
280
|
+
if ($toast.hasClass('toast') && !$toast.hasClass(className.inverted)) {
|
281
|
+
$progress.addClass(className.inverted);
|
282
|
+
} else {
|
283
|
+
$progress.removeClass(className.inverted);
|
284
|
+
}
|
285
|
+
}
|
286
|
+
$progressBar = $('<div/>', {class: 'bar '+(settings.progressUp ? 'up ' : 'down ')+progressingClass});
|
287
|
+
$progress
|
288
|
+
.addClass(settings.showProgress)
|
289
|
+
.append($progressBar);
|
290
|
+
if ($progress.hasClass(className.top)) {
|
291
|
+
$toastBox.prepend($progress);
|
292
|
+
} else {
|
293
|
+
$toastBox.append($progress);
|
182
294
|
}
|
183
|
-
|
295
|
+
$progressBar.css('animation-duration', settings.displayTime / 1000 + 's');
|
296
|
+
}
|
297
|
+
$animationObject = $('<span/>',{class:'wait '+progressingClass});
|
298
|
+
$animationObject.css('animation-duration', settings.displayTime / 1000 + 's');
|
299
|
+
$animationObject.appendTo($toast);
|
300
|
+
}
|
301
|
+
if (settings.compact) {
|
302
|
+
$toastBox.addClass(className.compact);
|
303
|
+
$toast.addClass(className.compact);
|
304
|
+
if($progress) {
|
305
|
+
$progress.addClass(className.compact);
|
306
|
+
}
|
184
307
|
}
|
185
308
|
if (settings.newestOnTop) {
|
186
|
-
$
|
309
|
+
$toastBox.prependTo(module.get.container());
|
187
310
|
}
|
188
311
|
else {
|
189
|
-
$
|
312
|
+
$toastBox.appendTo(module.get.container());
|
190
313
|
}
|
191
314
|
}
|
192
315
|
},
|
@@ -194,8 +317,17 @@ $.fn.toast = function(parameters) {
|
|
194
317
|
bind: {
|
195
318
|
events: function() {
|
196
319
|
module.debug('Binding events to toast');
|
197
|
-
(settings.
|
198
|
-
.
|
320
|
+
if(settings.closeOnClick || settings.closeIcon) {
|
321
|
+
(settings.closeIcon ? $close : $toast)
|
322
|
+
.on('click' + eventNamespace, module.event.click)
|
323
|
+
;
|
324
|
+
}
|
325
|
+
if($animationObject) {
|
326
|
+
$animationObject.on('animationend' + eventNamespace, module.close);
|
327
|
+
}
|
328
|
+
$toastBox
|
329
|
+
.on('click' + eventNamespace, selector.approve, module.event.approve)
|
330
|
+
.on('click' + eventNamespace, selector.deny, module.event.deny)
|
199
331
|
;
|
200
332
|
}
|
201
333
|
},
|
@@ -203,7 +335,15 @@ $.fn.toast = function(parameters) {
|
|
203
335
|
unbind: {
|
204
336
|
events: function() {
|
205
337
|
module.debug('Unbinding events to toast');
|
206
|
-
(settings.
|
338
|
+
if(settings.closeOnClick || settings.closeIcon) {
|
339
|
+
(settings.closeIcon ? $close : $toast)
|
340
|
+
.off('click' + eventNamespace)
|
341
|
+
;
|
342
|
+
}
|
343
|
+
if($animationObject) {
|
344
|
+
$animationObject.off('animationend' + eventNamespace);
|
345
|
+
}
|
346
|
+
$toastBox
|
207
347
|
.off('click' + eventNamespace)
|
208
348
|
;
|
209
349
|
}
|
@@ -212,9 +352,9 @@ $.fn.toast = function(parameters) {
|
|
212
352
|
animate: {
|
213
353
|
show: function(callback) {
|
214
354
|
callback = $.isFunction(callback) ? callback : function(){};
|
215
|
-
if(settings.transition &&
|
355
|
+
if(settings.transition && module.can.useElement('transition') && $module.transition('is supported')) {
|
216
356
|
module.set.visible();
|
217
|
-
$
|
357
|
+
$toastBox
|
218
358
|
.transition({
|
219
359
|
animation : settings.transition.showMethod + ' in',
|
220
360
|
queue : false,
|
@@ -222,48 +362,48 @@ $.fn.toast = function(parameters) {
|
|
222
362
|
verbose : settings.verbose,
|
223
363
|
duration : settings.transition.showDuration,
|
224
364
|
onComplete : function() {
|
225
|
-
callback.call($
|
226
|
-
settings.onVisible.call($
|
365
|
+
callback.call($toastBox, element);
|
366
|
+
settings.onVisible.call($toastBox, element);
|
227
367
|
}
|
228
368
|
})
|
229
369
|
;
|
230
370
|
}
|
231
|
-
else {
|
232
|
-
module.error(error.noTransition);
|
233
|
-
}
|
234
371
|
},
|
235
372
|
close: function(callback) {
|
236
373
|
callback = $.isFunction(callback) ? callback : function(){};
|
237
374
|
module.debug('Closing toast');
|
238
|
-
if(settings.onHide.call($
|
375
|
+
if(settings.onHide.call($toastBox, element) === false) {
|
239
376
|
module.debug('onHide callback returned false, cancelling toast animation');
|
240
377
|
return;
|
241
378
|
}
|
242
379
|
if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
|
243
|
-
$
|
380
|
+
$toastBox
|
244
381
|
.transition({
|
245
382
|
animation : settings.transition.hideMethod + ' out',
|
246
383
|
queue : false,
|
247
384
|
duration : settings.transition.hideDuration,
|
248
385
|
debug : settings.debug,
|
249
386
|
verbose : settings.verbose,
|
387
|
+
interval : 50,
|
250
388
|
|
251
389
|
onBeforeHide: function(callback){
|
252
390
|
callback = $.isFunction(callback)?callback : function(){};
|
253
391
|
if(settings.transition.closeEasing !== ''){
|
254
|
-
$
|
255
|
-
$
|
256
|
-
|
257
|
-
|
392
|
+
$toastBox.css('opacity',0);
|
393
|
+
$toastBox.wrap('<div/>').parent().slideUp(500,settings.transition.closeEasing,function(){
|
394
|
+
if($toastBox){
|
395
|
+
$toastBox.parent().remove();
|
396
|
+
callback.call($toastBox);
|
397
|
+
}
|
258
398
|
});
|
259
399
|
} else {
|
260
|
-
callback.call($
|
400
|
+
callback.call($toastBox);
|
261
401
|
}
|
262
402
|
},
|
263
403
|
onComplete : function() {
|
404
|
+
callback.call($toastBox, element);
|
405
|
+
settings.onHidden.call($toastBox, element);
|
264
406
|
module.destroy();
|
265
|
-
callback.call($toast, element);
|
266
|
-
settings.onHidden.call($toast, element);
|
267
407
|
}
|
268
408
|
})
|
269
409
|
;
|
@@ -271,6 +411,18 @@ $.fn.toast = function(parameters) {
|
|
271
411
|
else {
|
272
412
|
module.error(error.noTransition);
|
273
413
|
}
|
414
|
+
},
|
415
|
+
pause: function() {
|
416
|
+
$animationObject.css('animationPlayState','paused');
|
417
|
+
if($progressBar) {
|
418
|
+
$progressBar.css('animationPlayState', 'paused');
|
419
|
+
}
|
420
|
+
},
|
421
|
+
continue: function() {
|
422
|
+
$animationObject.css('animationPlayState','running');
|
423
|
+
if($progressBar) {
|
424
|
+
$progressBar.css('animationPlayState', 'running');
|
425
|
+
}
|
274
426
|
}
|
275
427
|
},
|
276
428
|
|
@@ -278,12 +430,36 @@ $.fn.toast = function(parameters) {
|
|
278
430
|
container: function() {
|
279
431
|
module.verbose('Determining if there is already a container');
|
280
432
|
return ($context.find(module.helpers.toClass(settings.position) + selector.container).length > 0);
|
433
|
+
},
|
434
|
+
toast: function(){
|
435
|
+
return !!module.get.toast();
|
436
|
+
},
|
437
|
+
toasts: function(){
|
438
|
+
return module.get.toasts().length > 0;
|
439
|
+
},
|
440
|
+
configActions: function () {
|
441
|
+
return Array.isArray(settings.actions) && settings.actions.length > 0;
|
281
442
|
}
|
282
443
|
},
|
283
444
|
|
284
445
|
get: {
|
285
446
|
container: function() {
|
286
447
|
return ($context.find(module.helpers.toClass(settings.position) + selector.container)[0]);
|
448
|
+
},
|
449
|
+
toastBox: function() {
|
450
|
+
return $toastBox || null;
|
451
|
+
},
|
452
|
+
toast: function() {
|
453
|
+
return $toast || null;
|
454
|
+
},
|
455
|
+
toasts: function() {
|
456
|
+
return $(module.get.container()).find(selector.box);
|
457
|
+
},
|
458
|
+
iconClass: function() {
|
459
|
+
return typeof settings.showIcon === 'string' ? settings.showIcon : settings.showIcon && settings.icons[settings.class] ? settings.icons[settings.class] : '';
|
460
|
+
},
|
461
|
+
remainingTime: function() {
|
462
|
+
return $animationObject ? $animationObject.css('opacity') * settings.displayTime : 0;
|
287
463
|
}
|
288
464
|
},
|
289
465
|
|
@@ -300,8 +476,24 @@ $.fn.toast = function(parameters) {
|
|
300
476
|
},
|
301
477
|
|
302
478
|
event: {
|
303
|
-
click: function() {
|
304
|
-
|
479
|
+
click: function(event) {
|
480
|
+
if($(event.target).closest('a').length === 0) {
|
481
|
+
settings.onClick.call($toastBox, element);
|
482
|
+
module.close();
|
483
|
+
}
|
484
|
+
},
|
485
|
+
approve: function() {
|
486
|
+
if(settings.onApprove.call(element, $module) === false) {
|
487
|
+
module.verbose('Approve callback returned false cancelling close');
|
488
|
+
return;
|
489
|
+
}
|
490
|
+
module.close();
|
491
|
+
},
|
492
|
+
deny: function() {
|
493
|
+
if(settings.onDeny.call(element, $module) === false) {
|
494
|
+
module.verbose('Deny callback returned false cancelling close');
|
495
|
+
return;
|
496
|
+
}
|
305
497
|
module.close();
|
306
498
|
}
|
307
499
|
},
|
@@ -318,6 +510,43 @@ $.fn.toast = function(parameters) {
|
|
318
510
|
});
|
319
511
|
|
320
512
|
return result;
|
513
|
+
},
|
514
|
+
deQuote: function(string) {
|
515
|
+
return String(string).replace(/"/g,"");
|
516
|
+
},
|
517
|
+
escape: function(string, preserveHTML) {
|
518
|
+
if (preserveHTML){
|
519
|
+
return string;
|
520
|
+
}
|
521
|
+
var
|
522
|
+
badChars = /[&<>"'`]/g,
|
523
|
+
shouldEscape = /[&<>"'`]/,
|
524
|
+
escape = {
|
525
|
+
"&": "&",
|
526
|
+
"<": "<",
|
527
|
+
">": ">",
|
528
|
+
'"': """,
|
529
|
+
"'": "'",
|
530
|
+
"`": "`"
|
531
|
+
},
|
532
|
+
escapedChar = function(chr) {
|
533
|
+
return escape[chr];
|
534
|
+
}
|
535
|
+
;
|
536
|
+
if(shouldEscape.test(string)) {
|
537
|
+
return string.replace(badChars, escapedChar);
|
538
|
+
}
|
539
|
+
return string;
|
540
|
+
}
|
541
|
+
},
|
542
|
+
|
543
|
+
can: {
|
544
|
+
useElement: function(element){
|
545
|
+
if ($.fn[element] !== undefined) {
|
546
|
+
return true;
|
547
|
+
}
|
548
|
+
module.error(error.noElement.replace('{element}',element));
|
549
|
+
return false;
|
321
550
|
}
|
322
551
|
},
|
323
552
|
|
@@ -495,6 +724,7 @@ $.fn.toast = function(parameters) {
|
|
495
724
|
instance.invoke('destroy');
|
496
725
|
}
|
497
726
|
module.initialize();
|
727
|
+
returnedValue = $module;
|
498
728
|
}
|
499
729
|
})
|
500
730
|
;
|
@@ -518,18 +748,29 @@ $.fn.toast.settings = {
|
|
518
748
|
context : 'body',
|
519
749
|
|
520
750
|
position : 'top right',
|
521
|
-
class : '
|
751
|
+
class : 'neutral',
|
752
|
+
classProgress : false,
|
753
|
+
classActions : false,
|
754
|
+
classImage : 'mini',
|
522
755
|
|
523
756
|
title : '',
|
524
757
|
message : '',
|
525
758
|
displayTime : 3000, // set to zero to require manually dismissal, otherwise hides on its own
|
526
|
-
|
759
|
+
minDisplayTime : 1000, // minimum displaytime in case displayTime is set to 'auto'
|
760
|
+
wordsPerMinute : 120,
|
761
|
+
showIcon : false,
|
527
762
|
newestOnTop : false,
|
528
763
|
showProgress : false,
|
529
|
-
|
764
|
+
pauseOnHover : true,
|
765
|
+
progressUp : false, //if true, the bar will start at 0% and increase to 100%
|
530
766
|
opacity : 1,
|
531
767
|
compact : true,
|
532
768
|
closeIcon : false,
|
769
|
+
closeOnClick : true,
|
770
|
+
cloneModule : true,
|
771
|
+
actions : false,
|
772
|
+
preserveHTML : true,
|
773
|
+
showImage : false,
|
533
774
|
|
534
775
|
// transition settings
|
535
776
|
transition : {
|
@@ -537,23 +778,41 @@ $.fn.toast.settings = {
|
|
537
778
|
showDuration : 500,
|
538
779
|
hideMethod : 'scale',
|
539
780
|
hideDuration : 500,
|
540
|
-
closeEasing : '
|
781
|
+
closeEasing : 'easeOutCubic' //Set to empty string to stack the closed toast area immediately (old behaviour)
|
541
782
|
},
|
542
783
|
|
543
784
|
error: {
|
544
785
|
method : 'The method you called is not defined.',
|
545
|
-
|
786
|
+
noElement : 'This module requires ui {element}',
|
787
|
+
verticalCard : 'Vertical but not attached actions are not supported for card layout'
|
546
788
|
},
|
547
789
|
|
548
790
|
className : {
|
549
|
-
container : 'toast-container',
|
550
|
-
box : 'toast-box',
|
791
|
+
container : 'ui toast-container',
|
792
|
+
box : 'floating toast-box',
|
551
793
|
progress : 'ui attached active progress',
|
552
794
|
toast : 'ui toast',
|
553
|
-
icon : 'icon',
|
795
|
+
icon : 'centered icon',
|
554
796
|
visible : 'visible',
|
555
797
|
content : 'content',
|
556
|
-
title : 'header'
|
798
|
+
title : 'ui header',
|
799
|
+
actions : 'actions',
|
800
|
+
extraContent : 'extra content',
|
801
|
+
button : 'ui button',
|
802
|
+
buttons : 'ui buttons',
|
803
|
+
close : 'close icon',
|
804
|
+
image : 'ui image',
|
805
|
+
vertical : 'vertical',
|
806
|
+
attached : 'attached',
|
807
|
+
inverted : 'inverted',
|
808
|
+
compact : 'compact',
|
809
|
+
pausable : 'pausable',
|
810
|
+
progressing : 'progressing',
|
811
|
+
top : 'top',
|
812
|
+
bottom : 'bottom',
|
813
|
+
left : 'left',
|
814
|
+
basic : 'basic',
|
815
|
+
unclickable : 'unclickable'
|
557
816
|
},
|
558
817
|
|
559
818
|
icons : {
|
@@ -564,9 +823,19 @@ $.fn.toast.settings = {
|
|
564
823
|
},
|
565
824
|
|
566
825
|
selector : {
|
567
|
-
container : '.toast-container',
|
826
|
+
container : '.ui.toast-container',
|
568
827
|
box : '.toast-box',
|
569
|
-
toast : '.ui.toast'
|
828
|
+
toast : '.ui.toast',
|
829
|
+
input : 'input:not([type="hidden"]), textarea, select, button, .ui.button, ui.dropdown',
|
830
|
+
approve : '.actions .positive, .actions .approve, .actions .ok',
|
831
|
+
deny : '.actions .negative, .actions .deny, .actions .cancel'
|
832
|
+
},
|
833
|
+
|
834
|
+
fields : {
|
835
|
+
class : 'class',
|
836
|
+
text : 'text',
|
837
|
+
icon : 'icon',
|
838
|
+
click : 'click'
|
570
839
|
},
|
571
840
|
|
572
841
|
// callbacks
|
@@ -576,6 +845,8 @@ $.fn.toast.settings = {
|
|
576
845
|
onHide : function(){},
|
577
846
|
onHidden : function(){},
|
578
847
|
onRemove : function(){},
|
848
|
+
onApprove : function(){},
|
849
|
+
onDeny : function(){}
|
579
850
|
};
|
580
851
|
|
581
852
|
$.extend( $.easing, {
|
@@ -589,6 +860,9 @@ $.extend( $.easing, {
|
|
589
860
|
} else {
|
590
861
|
return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
|
591
862
|
}
|
863
|
+
},
|
864
|
+
easeOutCubic: function (t) {
|
865
|
+
return (--t)*t*t+1;
|
592
866
|
}
|
593
867
|
});
|
594
868
|
|