fomantic-ui 2.9.0-beta.2 → 2.9.0-beta.202
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.
- package/.all-contributorsrc +197 -3
- package/CONTRIBUTING.md +1 -1
- package/CONTRIBUTORS.md +74 -37
- package/README.md +1 -1
- package/dist/components/accordion.css +162 -26
- package/dist/components/accordion.js +1 -1
- package/dist/components/accordion.min.css +2 -2
- package/dist/components/accordion.min.js +2 -2
- package/dist/components/ad.css +1 -1
- package/dist/components/ad.min.css +1 -1
- package/dist/components/api.js +30 -26
- package/dist/components/api.min.js +3 -3
- package/dist/components/breadcrumb.css +1 -1
- package/dist/components/breadcrumb.min.css +1 -1
- package/dist/components/button.css +81 -81
- package/dist/components/button.min.css +2 -2
- package/dist/components/calendar.css +1 -1
- package/dist/components/calendar.js +110 -11
- package/dist/components/calendar.min.css +1 -1
- package/dist/components/calendar.min.js +3 -3
- package/dist/components/card.css +26 -19
- package/dist/components/card.min.css +2 -2
- package/dist/components/checkbox.css +2 -1
- package/dist/components/checkbox.js +17 -11
- package/dist/components/checkbox.min.css +2 -2
- package/dist/components/checkbox.min.js +3 -3
- package/dist/components/comment.css +11 -11
- package/dist/components/comment.min.css +1 -1
- package/dist/components/container.css +77 -1
- package/dist/components/container.min.css +2 -2
- package/dist/components/dimmer.css +28 -14
- package/dist/components/dimmer.js +7 -1
- package/dist/components/dimmer.min.css +2 -2
- package/dist/components/dimmer.min.js +3 -3
- package/dist/components/divider.css +1 -1
- package/dist/components/divider.min.css +1 -1
- package/dist/components/dropdown.css +30 -7
- package/dist/components/dropdown.js +59 -34
- package/dist/components/dropdown.min.css +2 -2
- package/dist/components/dropdown.min.js +3 -3
- package/dist/components/embed.css +1 -1
- package/dist/components/embed.js +1 -1
- package/dist/components/embed.min.css +1 -1
- package/dist/components/embed.min.js +2 -2
- package/dist/components/emoji.css +2 -2
- package/dist/components/feed.css +28 -28
- package/dist/components/feed.min.css +2 -2
- package/dist/components/flag.css +731 -625
- package/dist/components/flag.min.css +2 -2
- package/dist/components/form.css +106 -55
- package/dist/components/form.js +25 -23
- package/dist/components/form.min.css +2 -2
- package/dist/components/form.min.js +3 -3
- package/dist/components/grid.css +11 -8
- package/dist/components/grid.min.css +2 -2
- package/dist/components/header.css +1 -1
- package/dist/components/header.min.css +1 -1
- package/dist/components/icon.css +6 -1
- package/dist/components/icon.min.css +2 -2
- package/dist/components/image.css +1 -1
- package/dist/components/image.min.css +1 -1
- package/dist/components/input.css +734 -17
- package/dist/components/input.min.css +2 -2
- package/dist/components/item.css +13 -13
- package/dist/components/item.min.css +1 -1
- package/dist/components/label.css +1 -1
- package/dist/components/label.min.css +1 -1
- package/dist/components/list.css +1 -1
- package/dist/components/list.min.css +1 -1
- package/dist/components/loader.css +1 -1
- package/dist/components/loader.min.css +1 -1
- package/dist/components/menu.css +31 -7
- package/dist/components/menu.min.css +1 -1
- package/dist/components/message.css +41 -41
- package/dist/components/message.min.css +2 -2
- package/dist/components/modal.css +13 -1
- package/dist/components/modal.js +121 -46
- package/dist/components/modal.min.css +2 -2
- package/dist/components/modal.min.js +3 -3
- package/dist/components/nag.css +1 -1
- package/dist/components/nag.js +1 -1
- package/dist/components/nag.min.css +1 -1
- package/dist/components/nag.min.js +2 -2
- package/dist/components/placeholder.css +1 -1
- package/dist/components/placeholder.min.css +1 -1
- package/dist/components/popup.css +5 -3
- package/dist/components/popup.js +1 -1
- package/dist/components/popup.min.css +2 -2
- package/dist/components/popup.min.js +2 -2
- package/dist/components/progress.css +1 -1
- package/dist/components/progress.js +6 -3
- package/dist/components/progress.min.css +1 -1
- package/dist/components/progress.min.js +3 -3
- package/dist/components/rail.css +1 -1
- package/dist/components/rail.min.css +1 -1
- package/dist/components/rating.css +7 -46
- package/dist/components/rating.js +1 -1
- package/dist/components/rating.min.css +2 -2
- package/dist/components/rating.min.js +2 -2
- package/dist/components/reset.css +1 -1
- package/dist/components/reset.min.css +1 -1
- package/dist/components/reveal.css +1 -1
- package/dist/components/reveal.min.css +1 -1
- package/dist/components/search.css +1 -1
- package/dist/components/search.js +1 -1
- package/dist/components/search.min.css +1 -1
- package/dist/components/search.min.js +2 -2
- package/dist/components/segment.css +90 -6
- package/dist/components/segment.min.css +2 -2
- package/dist/components/shape.css +1 -1
- package/dist/components/shape.js +1 -1
- package/dist/components/shape.min.css +1 -1
- package/dist/components/shape.min.js +2 -2
- package/dist/components/sidebar.css +4 -2
- package/dist/components/sidebar.js +1 -1
- package/dist/components/sidebar.min.css +2 -2
- package/dist/components/sidebar.min.js +2 -2
- package/dist/components/site.css +61 -39
- package/dist/components/site.js +1 -1
- package/dist/components/site.min.css +2 -2
- package/dist/components/site.min.js +2 -2
- package/dist/components/slider.js +1 -1
- package/dist/components/slider.min.js +2 -2
- package/dist/components/state.js +1 -1
- package/dist/components/state.min.js +2 -2
- package/dist/components/statistic.css +1 -1
- package/dist/components/statistic.min.css +1 -1
- package/dist/components/step.css +4 -4
- package/dist/components/step.min.css +2 -2
- package/dist/components/sticky.css +1 -1
- package/dist/components/sticky.js +2 -2
- package/dist/components/sticky.min.css +1 -1
- package/dist/components/sticky.min.js +3 -3
- package/dist/components/tab.css +1 -1
- package/dist/components/tab.js +23 -5
- package/dist/components/tab.min.css +1 -1
- package/dist/components/tab.min.js +3 -3
- package/dist/components/table.css +1168 -26
- package/dist/components/table.min.css +2 -2
- package/dist/components/text.css +1 -1
- package/dist/components/text.min.css +1 -1
- package/dist/components/toast.css +45 -1
- package/dist/components/toast.js +56 -28
- package/dist/components/toast.min.css +2 -2
- package/dist/components/toast.min.js +3 -3
- package/dist/components/transition.css +1 -1
- package/dist/components/transition.js +2 -2
- package/dist/components/transition.min.css +1 -1
- package/dist/components/transition.min.js +3 -3
- package/dist/components/visibility.js +2 -2
- package/dist/components/visibility.min.js +2 -2
- package/dist/semantic.css +4300 -1394
- package/dist/semantic.js +473 -207
- package/dist/semantic.min.css +3 -3
- package/dist/semantic.min.js +3 -3
- package/examples/assets/library/iframe-content.js +8 -8
- package/examples/assets/library/iframe.js +3 -3
- package/package.json +2 -2
- package/src/definitions/behaviors/api.js +29 -25
- package/src/definitions/behaviors/form.js +24 -22
- package/src/definitions/behaviors/visibility.js +1 -1
- package/src/definitions/collections/form.less +193 -140
- package/src/definitions/collections/grid.less +716 -680
- package/src/definitions/collections/menu.less +174 -127
- package/src/definitions/collections/message.less +48 -46
- package/src/definitions/collections/table.less +849 -262
- package/src/definitions/elements/button.less +360 -347
- package/src/definitions/elements/container.less +126 -8
- package/src/definitions/elements/emoji.less +15 -9
- package/src/definitions/elements/flag.less +7 -17
- package/src/definitions/elements/header.less +42 -35
- package/src/definitions/elements/icon.less +38 -31
- package/src/definitions/elements/input.less +256 -21
- package/src/definitions/elements/label.less +92 -91
- package/src/definitions/elements/list.less +55 -45
- package/src/definitions/elements/loader.less +30 -29
- package/src/definitions/elements/segment.less +146 -27
- package/src/definitions/elements/step.less +52 -48
- package/src/definitions/elements/text.less +17 -15
- package/src/definitions/globals/site.less +23 -2
- package/src/definitions/modules/accordion.less +175 -24
- package/src/definitions/modules/calendar.js +109 -10
- package/src/definitions/modules/checkbox.js +16 -10
- package/src/definitions/modules/checkbox.less +34 -178
- package/src/definitions/modules/dimmer.js +6 -0
- package/src/definitions/modules/dimmer.less +21 -8
- package/src/definitions/modules/dropdown.js +58 -33
- package/src/definitions/modules/dropdown.less +101 -69
- package/src/definitions/modules/modal.js +120 -45
- package/src/definitions/modules/modal.less +12 -0
- package/src/definitions/modules/nag.less +20 -19
- package/src/definitions/modules/popup.less +5 -1
- package/src/definitions/modules/progress.js +5 -2
- package/src/definitions/modules/progress.less +19 -18
- package/src/definitions/modules/rating.less +49 -42
- package/src/definitions/modules/search.less +32 -16
- package/src/definitions/modules/sidebar.less +33 -19
- package/src/definitions/modules/slider.less +39 -38
- package/src/definitions/modules/sticky.js +1 -1
- package/src/definitions/modules/tab.js +22 -4
- package/src/definitions/modules/toast.js +55 -27
- package/src/definitions/modules/toast.less +53 -16
- package/src/definitions/modules/transition.js +1 -1
- package/src/definitions/views/card.less +402 -361
- package/src/definitions/views/comment.less +92 -81
- package/src/definitions/views/feed.less +164 -144
- package/src/definitions/views/item.less +249 -196
- package/src/definitions/views/statistic.less +90 -88
- package/src/themes/bookish/elements/header.overrides +1 -1
- package/src/themes/chubby/elements/button.overrides +1 -1
- package/src/themes/chubby/elements/header.overrides +1 -1
- package/src/themes/default/collections/menu.variables +6 -0
- package/src/themes/default/collections/table.variables +52 -0
- package/src/themes/default/elements/button.variables +2 -1
- package/src/themes/default/elements/container.variables +8 -0
- package/src/themes/default/elements/flag.overrides +1635 -986
- package/src/themes/default/elements/flag.variables +7 -5
- package/src/themes/default/elements/icon.overrides +35 -28
- package/src/themes/default/elements/icon.variables +1 -0
- package/src/themes/default/elements/input.variables +15 -0
- package/src/themes/default/elements/segment.variables +8 -0
- package/src/themes/default/elements/step.overrides +1 -1
- package/src/themes/default/globals/site.variables +6 -0
- package/src/themes/default/globals/variation.variables +135 -6
- package/src/themes/default/modules/accordion.variables +49 -2
- package/src/themes/default/modules/checkbox.variables +5 -5
- package/src/themes/default/modules/dimmer.variables +1 -1
- package/src/themes/default/modules/dropdown.variables +1 -1
- package/src/themes/default/modules/modal.variables +13 -0
- package/src/themes/default/modules/toast.variables +3 -0
- package/src/themes/famfamfam/elements/flag.overrides +1026 -0
- package/src/themes/famfamfam/elements/flag.variables +13 -0
- package/src/themes/instagram/views/card.overrides +1 -1
- package/src/themes/material/collections/menu.overrides +1 -1
- package/src/themes/material/elements/button.overrides +1 -1
- package/src/themes/material/elements/header.overrides +1 -1
- package/src/themes/material/modules/dropdown.overrides +1 -1
- package/src/themes/material/modules/modal.overrides +1 -1
- package/src/themes/rtl/globals/site.overrides +1 -1
- package/tasks/admin/components/init.js +2 -2
- package/tasks/admin/distributions/init.js +2 -2
- package/tasks/build/css.js +6 -1
- package/test/helpers/sinon.js +1 -1
package/dist/semantic.js
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
/*
|
2
|
-
* # Fomantic UI - 2.9.0-beta.
|
2
|
+
* # Fomantic UI - 2.9.0-beta.202
|
3
3
|
* https://github.com/fomantic/Fomantic-UI
|
4
4
|
* http://fomantic-ui.com/
|
5
5
|
*
|
6
|
-
* Copyright
|
6
|
+
* Copyright 2022 Contributors
|
7
7
|
* Released under the MIT license
|
8
8
|
* http://opensource.org/licenses/MIT
|
9
9
|
*
|
10
10
|
*/
|
11
11
|
/*!
|
12
|
-
* # Fomantic-UI 2.9.0-beta.
|
12
|
+
* # Fomantic-UI 2.9.0-beta.202 - Site
|
13
13
|
* http://github.com/fomantic/Fomantic-UI/
|
14
14
|
*
|
15
15
|
*
|
@@ -503,7 +503,7 @@ $.extend($.expr[ ":" ], {
|
|
503
503
|
})( jQuery, window, document );
|
504
504
|
|
505
505
|
/*!
|
506
|
-
* # Fomantic-UI 2.9.0-beta.
|
506
|
+
* # Fomantic-UI 2.9.0-beta.202 - Form Validation
|
507
507
|
* http://github.com/fomantic/Fomantic-UI/
|
508
508
|
*
|
509
509
|
*
|
@@ -923,6 +923,7 @@ $.fn.form = function(parameters) {
|
|
923
923
|
$field.one('keyup' + eventNamespace, module.event.field.keyup);
|
924
924
|
module.submit();
|
925
925
|
module.debug('Enter pressed on input submitting form');
|
926
|
+
event.preventDefault();
|
926
927
|
}
|
927
928
|
keyHeldDown = true;
|
928
929
|
}
|
@@ -1047,7 +1048,7 @@ $.fn.form = function(parameters) {
|
|
1047
1048
|
parts,
|
1048
1049
|
suffixPrompt
|
1049
1050
|
;
|
1050
|
-
if(ancillary && ancillary.indexOf('..') >= 0) {
|
1051
|
+
if(ancillary && ['integer', 'decimal', 'number'].indexOf(ruleName) >= 0 && ancillary.indexOf('..') >= 0) {
|
1051
1052
|
parts = ancillary.split('..', 2);
|
1052
1053
|
if(!rule.prompt) {
|
1053
1054
|
suffixPrompt = (
|
@@ -1390,13 +1391,13 @@ $.fn.form = function(parameters) {
|
|
1390
1391
|
}
|
1391
1392
|
if(settings.inline) {
|
1392
1393
|
if(!promptExists) {
|
1393
|
-
$prompt =
|
1394
|
+
$prompt = $('<div/>').addClass(className.label);
|
1394
1395
|
$prompt
|
1395
1396
|
.appendTo($fieldGroup)
|
1396
1397
|
;
|
1397
1398
|
}
|
1398
1399
|
$prompt
|
1399
|
-
.html(errors
|
1400
|
+
.html(settings.templates.prompt(errors))
|
1400
1401
|
;
|
1401
1402
|
if(!promptExists) {
|
1402
1403
|
if(settings.transition && module.can.useElement('transition') && $module.transition('is supported')) {
|
@@ -1589,12 +1590,15 @@ $.fn.form = function(parameters) {
|
|
1589
1590
|
}
|
1590
1591
|
else if(isCheckbox) {
|
1591
1592
|
module.verbose('Setting checkbox value', value, $element);
|
1592
|
-
if(value === true || value === 1) {
|
1593
|
+
if(value === true || value === 1 || value === 'on') {
|
1593
1594
|
$element.checkbox('check');
|
1594
1595
|
}
|
1595
1596
|
else {
|
1596
1597
|
$element.checkbox('uncheck');
|
1597
1598
|
}
|
1599
|
+
if(typeof value === 'string') {
|
1600
|
+
$field.val(value);
|
1601
|
+
}
|
1598
1602
|
}
|
1599
1603
|
else if(isDropdown) {
|
1600
1604
|
module.verbose('Setting dropdown value', value, $element);
|
@@ -1707,7 +1711,7 @@ $.fn.form = function(parameters) {
|
|
1707
1711
|
if(event && $module.data('moduleApi') !== undefined) {
|
1708
1712
|
event.stopImmediatePropagation();
|
1709
1713
|
}
|
1710
|
-
if(settings.errorFocus) {
|
1714
|
+
if(settings.errorFocus && ignoreCallbacks !== true) {
|
1711
1715
|
var focusElement, hasTabIndex = true;
|
1712
1716
|
if (typeof settings.errorFocus === 'string') {
|
1713
1717
|
focusElement = $(settings.errorFocus);
|
@@ -2030,7 +2034,7 @@ $.fn.form.settings = {
|
|
2030
2034
|
|
2031
2035
|
autoCheckRequired : false,
|
2032
2036
|
preventLeaving : false,
|
2033
|
-
errorFocus :
|
2037
|
+
errorFocus : true,
|
2034
2038
|
dateHandling : 'date', // 'date', 'input', 'formatter'
|
2035
2039
|
|
2036
2040
|
onValid : function() {},
|
@@ -2086,7 +2090,6 @@ $.fn.form.settings = {
|
|
2086
2090
|
doesntContain : '{name} cannot contain "{ruleValue}"',
|
2087
2091
|
doesntContainExactly : '{name} cannot contain exactly "{ruleValue}"',
|
2088
2092
|
minLength : '{name} must be at least {ruleValue} characters',
|
2089
|
-
length : '{name} must be at least {ruleValue} characters',
|
2090
2093
|
exactLength : '{name} must be exactly {ruleValue} characters',
|
2091
2094
|
maxLength : '{name} cannot be longer than {ruleValue} characters',
|
2092
2095
|
match : '{name} must match {ruleValue} field',
|
@@ -2100,7 +2103,7 @@ $.fn.form.settings = {
|
|
2100
2103
|
selector : {
|
2101
2104
|
checkbox : 'input[type="checkbox"], input[type="radio"]',
|
2102
2105
|
clear : '.clear',
|
2103
|
-
field : 'input:not(.search):not([type="file"]), textarea, select',
|
2106
|
+
field : 'input:not(.search):not([type="file"]):not([type="reset"]):not([type="button"]):not([type="submit"]), textarea, select',
|
2104
2107
|
group : '.field',
|
2105
2108
|
input : 'input:not([type="file"])',
|
2106
2109
|
message : '.error.message',
|
@@ -2141,15 +2144,22 @@ $.fn.form.settings = {
|
|
2141
2144
|
html += '<li>' + value + '</li>';
|
2142
2145
|
});
|
2143
2146
|
html += '</ul>';
|
2144
|
-
return
|
2147
|
+
return html;
|
2145
2148
|
},
|
2146
2149
|
|
2147
|
-
// template that produces label
|
2148
|
-
prompt: function(errors
|
2149
|
-
|
2150
|
-
|
2151
|
-
|
2150
|
+
// template that produces label content
|
2151
|
+
prompt: function(errors) {
|
2152
|
+
if(errors.length === 1){
|
2153
|
+
return errors[0];
|
2154
|
+
}
|
2155
|
+
var
|
2156
|
+
html = '<ul class="ui list">'
|
2152
2157
|
;
|
2158
|
+
$.each(errors, function(index, value) {
|
2159
|
+
html += '<li>' + value + '</li>';
|
2160
|
+
});
|
2161
|
+
html += '</ul>';
|
2162
|
+
return html;
|
2153
2163
|
}
|
2154
2164
|
},
|
2155
2165
|
|
@@ -2359,14 +2369,6 @@ $.fn.form.settings = {
|
|
2359
2369
|
;
|
2360
2370
|
},
|
2361
2371
|
|
2362
|
-
// see rls notes for 2.0.6 (this is a duplicate of minLength)
|
2363
|
-
length: function(value, requiredLength) {
|
2364
|
-
return (value !== undefined)
|
2365
|
-
? (value.length >= requiredLength)
|
2366
|
-
: false
|
2367
|
-
;
|
2368
|
-
},
|
2369
|
-
|
2370
2372
|
// is exactly length
|
2371
2373
|
exactLength: function(value, requiredLength) {
|
2372
2374
|
return (value !== undefined)
|
@@ -2575,7 +2577,7 @@ $.fn.form.settings = {
|
|
2575
2577
|
})( jQuery, window, document );
|
2576
2578
|
|
2577
2579
|
/*!
|
2578
|
-
* # Fomantic-UI 2.9.0-beta.
|
2580
|
+
* # Fomantic-UI 2.9.0-beta.202 - Accordion
|
2579
2581
|
* http://github.com/fomantic/Fomantic-UI/
|
2580
2582
|
*
|
2581
2583
|
*
|
@@ -3194,7 +3196,7 @@ $.extend( $.easing, {
|
|
3194
3196
|
|
3195
3197
|
|
3196
3198
|
/*!
|
3197
|
-
* # Fomantic-UI 2.9.0-beta.
|
3199
|
+
* # Fomantic-UI 2.9.0-beta.202 - Calendar
|
3198
3200
|
* http://github.com/fomantic/Fomantic-UI/
|
3199
3201
|
*
|
3200
3202
|
*
|
@@ -3317,7 +3319,7 @@ $.fn.calendar = function(parameters) {
|
|
3317
3319
|
module.set.maxDate($module.data(metadata.maxDate));
|
3318
3320
|
}
|
3319
3321
|
module.setting('type', module.get.type());
|
3320
|
-
module.setting('on', settings.on ||
|
3322
|
+
module.setting('on', settings.on || 'click');
|
3321
3323
|
},
|
3322
3324
|
popup: function () {
|
3323
3325
|
if (settings.inline) {
|
@@ -3348,7 +3350,10 @@ $.fn.calendar = function(parameters) {
|
|
3348
3350
|
module.refreshTooltips();
|
3349
3351
|
return settings.onVisible.apply($container, arguments);
|
3350
3352
|
};
|
3351
|
-
var onHidden =
|
3353
|
+
var onHidden = function () {
|
3354
|
+
module.blur();
|
3355
|
+
return settings.onHidden.apply($container, arguments)
|
3356
|
+
}
|
3352
3357
|
if (!$input.length) {
|
3353
3358
|
//no input, $container has to handle focus/blur
|
3354
3359
|
$container.attr('tabindex', '0');
|
@@ -3357,10 +3362,6 @@ $.fn.calendar = function(parameters) {
|
|
3357
3362
|
module.focus();
|
3358
3363
|
return settings.onVisible.apply($container, arguments);
|
3359
3364
|
};
|
3360
|
-
onHidden = function () {
|
3361
|
-
module.blur();
|
3362
|
-
return settings.onHidden.apply($container, arguments);
|
3363
|
-
};
|
3364
3365
|
}
|
3365
3366
|
var onShow = function () {
|
3366
3367
|
//reset the focus date onShow
|
@@ -3585,6 +3586,19 @@ $.fn.calendar = function(parameters) {
|
|
3585
3586
|
cell.attr("data-variation", disabledDate[metadata.variation]);
|
3586
3587
|
}
|
3587
3588
|
}
|
3589
|
+
if (mode === 'hour') {
|
3590
|
+
var disabledHour = module.helper.findHourAsObject(cellDate, mode, settings.disabledHours);
|
3591
|
+
if (disabledHour !== null && disabledHour[metadata.message]) {
|
3592
|
+
cell.attr("data-tooltip", disabledHour[metadata.message]);
|
3593
|
+
cell.attr("data-position", disabledHour[metadata.position] || tooltipPosition);
|
3594
|
+
if(disabledHour[metadata.inverted] || (isInverted && disabledHour[metadata.inverted] === undefined)) {
|
3595
|
+
cell.attr("data-inverted", '');
|
3596
|
+
}
|
3597
|
+
if(disabledHour[metadata.variation]) {
|
3598
|
+
cell.attr("data-variation", disabledHour[metadata.variation]);
|
3599
|
+
}
|
3600
|
+
}
|
3601
|
+
}
|
3588
3602
|
} else {
|
3589
3603
|
eventDate = module.helper.findDayAsObject(cellDate, mode, settings.eventDates);
|
3590
3604
|
if (eventDate !== null) {
|
@@ -3806,7 +3820,9 @@ $.fn.calendar = function(parameters) {
|
|
3806
3820
|
var mode = module.get.mode();
|
3807
3821
|
var date = module.get.focusDate();
|
3808
3822
|
if (date && !settings.isDisabled(date, mode) && !module.helper.isDisabled(date, mode) && module.helper.isEnabled(date, mode)) {
|
3809
|
-
module.
|
3823
|
+
if (settings.onSelect.call(element, date, module.get.mode()) !== false) {
|
3824
|
+
module.selectDate(date);
|
3825
|
+
}
|
3810
3826
|
}
|
3811
3827
|
//disable form submission:
|
3812
3828
|
event.preventDefault();
|
@@ -4118,6 +4134,7 @@ $.fn.calendar = function(parameters) {
|
|
4118
4134
|
//if this is a range calendar, focus the container or input. This will open the popup from its event listeners.
|
4119
4135
|
var endModule = module.get.calendarModule(settings.endCalendar);
|
4120
4136
|
if (endModule) {
|
4137
|
+
endModule.refresh();
|
4121
4138
|
if (endModule.setting('on') !== 'focus') {
|
4122
4139
|
endModule.popup('show');
|
4123
4140
|
}
|
@@ -4167,7 +4184,7 @@ $.fn.calendar = function(parameters) {
|
|
4167
4184
|
|
4168
4185
|
helper: {
|
4169
4186
|
isDisabled: function(date, mode) {
|
4170
|
-
return (mode === 'day' || mode === 'month' || mode === 'year') && ((mode === 'day' && settings.disabledDaysOfWeek.indexOf(date.getDay()) !== -1) || settings.disabledDates.some(function(d){
|
4187
|
+
return (mode === 'day' || mode === 'month' || mode === 'year' || mode === 'hour') && (((mode === 'day' && settings.disabledDaysOfWeek.indexOf(date.getDay()) !== -1) || settings.disabledDates.some(function(d){
|
4171
4188
|
if(typeof d === 'string') {
|
4172
4189
|
d = module.helper.sanitiseDate(d);
|
4173
4190
|
}
|
@@ -4200,7 +4217,45 @@ $.fn.calendar = function(parameters) {
|
|
4200
4217
|
}
|
4201
4218
|
}
|
4202
4219
|
}
|
4203
|
-
}))
|
4220
|
+
})) || (mode === 'hour' && settings.disabledHours.some(function(d){
|
4221
|
+
if (typeof d === 'string') {
|
4222
|
+
d = module.helper.sanitiseDate(d);
|
4223
|
+
}
|
4224
|
+
if (d instanceof Date) {
|
4225
|
+
return module.helper.dateEqual(date, d, mode);
|
4226
|
+
} else if (typeof d === 'number') {
|
4227
|
+
return date.getHours() === d;
|
4228
|
+
}
|
4229
|
+
if (d !== null && typeof d === 'object') {
|
4230
|
+
var blocked = true;
|
4231
|
+
|
4232
|
+
if (d[metadata.date]) {
|
4233
|
+
if (d[metadata.date] instanceof Date) {
|
4234
|
+
blocked = module.helper.dateEqual(date, module.helper.sanitiseDate(d[metadata.date]));
|
4235
|
+
} else if (Array.isArray(d[metadata.date])) {
|
4236
|
+
return d[metadata.date].some(function(idate) {
|
4237
|
+
blocked = module.helper.dateEqual(date, idate, mode);
|
4238
|
+
});
|
4239
|
+
}
|
4240
|
+
}
|
4241
|
+
|
4242
|
+
if (d[metadata.days]) {
|
4243
|
+
if (typeof d[metadata.days] === 'number') {
|
4244
|
+
blocked = date.getDay() == d[metadata.days];
|
4245
|
+
} else if (Array.isArray(d[metadata.days])) {
|
4246
|
+
blocked = d[metadata.days].indexOf(date.getDay()) > -1;
|
4247
|
+
}
|
4248
|
+
}
|
4249
|
+
|
4250
|
+
if (d[metadata.hours]) {
|
4251
|
+
if (typeof d[metadata.hours] === 'number') {
|
4252
|
+
return blocked && date.getHours() == d[metadata.hours];
|
4253
|
+
} else if (Array.isArray(d[metadata.hours])) {
|
4254
|
+
return blocked && d[metadata.hours].indexOf(date.getHours()) > -1;
|
4255
|
+
}
|
4256
|
+
}
|
4257
|
+
}
|
4258
|
+
})));
|
4204
4259
|
},
|
4205
4260
|
isEnabled: function(date, mode) {
|
4206
4261
|
if (mode === 'day') {
|
@@ -4268,6 +4323,49 @@ $.fn.calendar = function(parameters) {
|
|
4268
4323
|
}
|
4269
4324
|
return null;
|
4270
4325
|
},
|
4326
|
+
findHourAsObject: function(date, mode, hours) {
|
4327
|
+
if (mode === 'hour') {
|
4328
|
+
var d;
|
4329
|
+
var hourCheck = function(date, d) {
|
4330
|
+
if (d[metadata.hours]) {
|
4331
|
+
if (typeof d[metadata.hours] === 'number' && date.getHours() == d[metadata.hours]) {
|
4332
|
+
return d;
|
4333
|
+
} else if (Array.isArray(d[metadata.hours])) {
|
4334
|
+
if (d[metadata.hours].indexOf(date.getHours()) > -1) {
|
4335
|
+
return d;
|
4336
|
+
}
|
4337
|
+
}
|
4338
|
+
}
|
4339
|
+
}
|
4340
|
+
for (var i = 0; i < hours.length; i++) {
|
4341
|
+
d = hours[i];
|
4342
|
+
if (typeof d === 'number' && date.getHours() == d) {
|
4343
|
+
return null;
|
4344
|
+
} else if (d !== null && typeof d === 'object') {
|
4345
|
+
if (d[metadata.days] && hourCheck(date,d)) {
|
4346
|
+
if (typeof d[metadata.days] === 'number' && date.getDay() == d[metadata.days]) {
|
4347
|
+
return d;
|
4348
|
+
} else if (Array.isArray(d[metadata.days])) {
|
4349
|
+
if (d[metadata.days].indexOf(date.getDay()) > -1) {
|
4350
|
+
return d;
|
4351
|
+
}
|
4352
|
+
}
|
4353
|
+
} else if (d[metadata.date] && hourCheck(date,d)) {
|
4354
|
+
if (d[metadata.date] instanceof Date && module.helper.dateEqual(date, module.helper.sanitiseDate(d[metadata.date]))) {
|
4355
|
+
return d;
|
4356
|
+
} else if (Array.isArray(d[metadata.date])) {
|
4357
|
+
if (d[metadata.date].some(function(idate) { return module.helper.dateEqual(date, idate, mode); })) {
|
4358
|
+
return d;
|
4359
|
+
}
|
4360
|
+
}
|
4361
|
+
} else if (hourCheck(date,d)) {
|
4362
|
+
return d;
|
4363
|
+
}
|
4364
|
+
}
|
4365
|
+
}
|
4366
|
+
}
|
4367
|
+
return null;
|
4368
|
+
},
|
4271
4369
|
sanitiseDate: function (date) {
|
4272
4370
|
if (!(date instanceof Date)) {
|
4273
4371
|
date = parser.date('' + date, settings);
|
@@ -4553,6 +4651,7 @@ $.fn.calendar.settings = {
|
|
4553
4651
|
multiMonth : 1, // show multiple months when in 'day' mode
|
4554
4652
|
minTimeGap : 5,
|
4555
4653
|
showWeekNumbers : null, // show Number of Week at the very first column of a dayView
|
4654
|
+
disabledHours : [], // specific hour(s) which won't be selectable and contain additional information.
|
4556
4655
|
disabledDates : [], // specific day(s) which won't be selectable and contain additional information.
|
4557
4656
|
disabledDaysOfWeek : [], // day(s) which won't be selectable(s) (0 = Sunday)
|
4558
4657
|
enabledDates : [], // specific day(s) which will be selectable, all other days will be disabled
|
@@ -4958,7 +5057,9 @@ $.fn.calendar.settings = {
|
|
4958
5057
|
variation: 'variation',
|
4959
5058
|
position: 'position',
|
4960
5059
|
month: 'month',
|
4961
|
-
year: 'year'
|
5060
|
+
year: 'year',
|
5061
|
+
hours: 'hours',
|
5062
|
+
days: 'days'
|
4962
5063
|
},
|
4963
5064
|
|
4964
5065
|
eventClass: 'blue'
|
@@ -4967,7 +5068,7 @@ $.fn.calendar.settings = {
|
|
4967
5068
|
})(jQuery, window, document);
|
4968
5069
|
|
4969
5070
|
/*!
|
4970
|
-
* # Fomantic-UI 2.9.0-beta.
|
5071
|
+
* # Fomantic-UI 2.9.0-beta.202 - Checkbox
|
4971
5072
|
* http://github.com/fomantic/Fomantic-UI/
|
4972
5073
|
*
|
4973
5074
|
*
|
@@ -5207,18 +5308,26 @@ $.fn.checkbox = function(parameters) {
|
|
5207
5308
|
}
|
5208
5309
|
}
|
5209
5310
|
|
5311
|
+
shortcutPressed = false;
|
5210
5312
|
if(key == keyCode.escape) {
|
5211
5313
|
module.verbose('Escape key pressed blurring field');
|
5212
5314
|
$input.blur();
|
5213
5315
|
shortcutPressed = true;
|
5214
5316
|
}
|
5215
|
-
else if(!event.ctrlKey &&
|
5216
|
-
|
5217
|
-
|
5218
|
-
|
5219
|
-
|
5220
|
-
|
5221
|
-
|
5317
|
+
else if(!event.ctrlKey && module.can.change()) {
|
5318
|
+
if( key == keyCode.space || (key == keyCode.enter && settings.enableEnterKey) ) {
|
5319
|
+
module.verbose('Enter/space key pressed, toggling checkbox');
|
5320
|
+
module.toggle();
|
5321
|
+
shortcutPressed = true;
|
5322
|
+
} else if($module.is('.toggle, .slider') && !module.is.radio()) {
|
5323
|
+
if(key == keyCode.left && module.is.checked()) {
|
5324
|
+
module.uncheck();
|
5325
|
+
shortcutPressed = true;
|
5326
|
+
} else if(key == keyCode.right && module.is.unchecked()) {
|
5327
|
+
module.check();
|
5328
|
+
shortcutPressed = true;
|
5329
|
+
}
|
5330
|
+
}
|
5222
5331
|
}
|
5223
5332
|
},
|
5224
5333
|
keyup: function(event) {
|
@@ -5291,7 +5400,6 @@ $.fn.checkbox = function(parameters) {
|
|
5291
5400
|
settings.onEnable.call(input);
|
5292
5401
|
// preserve legacy callbacks
|
5293
5402
|
settings.onEnabled.call(input);
|
5294
|
-
module.trigger.change();
|
5295
5403
|
}
|
5296
5404
|
},
|
5297
5405
|
|
@@ -5306,7 +5414,6 @@ $.fn.checkbox = function(parameters) {
|
|
5306
5414
|
settings.onDisable.call(input);
|
5307
5415
|
// preserve legacy callbacks
|
5308
5416
|
settings.onDisabled.call(input);
|
5309
|
-
module.trigger.change();
|
5310
5417
|
}
|
5311
5418
|
},
|
5312
5419
|
|
@@ -5834,7 +5941,7 @@ $.fn.checkbox.settings = {
|
|
5834
5941
|
|
5835
5942
|
selector : {
|
5836
5943
|
checkbox : '.ui.checkbox',
|
5837
|
-
label : 'label
|
5944
|
+
label : 'label',
|
5838
5945
|
input : 'input[type="checkbox"], input[type="radio"]',
|
5839
5946
|
link : 'a[href]'
|
5840
5947
|
}
|
@@ -5844,7 +5951,7 @@ $.fn.checkbox.settings = {
|
|
5844
5951
|
})( jQuery, window, document );
|
5845
5952
|
|
5846
5953
|
/*!
|
5847
|
-
* # Fomantic-UI 2.9.0-beta.
|
5954
|
+
* # Fomantic-UI 2.9.0-beta.202 - Dimmer
|
5848
5955
|
* http://github.com/fomantic/Fomantic-UI/
|
5849
5956
|
*
|
5850
5957
|
*
|
@@ -6109,6 +6216,7 @@ $.fn.dimmer = function(parameters) {
|
|
6109
6216
|
},
|
6110
6217
|
onComplete : function() {
|
6111
6218
|
module.set.active();
|
6219
|
+
settings.onVisible.call($dimmer);
|
6112
6220
|
callback();
|
6113
6221
|
}
|
6114
6222
|
})
|
@@ -6130,6 +6238,7 @@ $.fn.dimmer = function(parameters) {
|
|
6130
6238
|
.fadeTo(module.get.duration(), settings.opacity, function() {
|
6131
6239
|
$dimmer.removeAttr('style');
|
6132
6240
|
module.set.active();
|
6241
|
+
settings.onVisible.call($dimmer);
|
6133
6242
|
callback();
|
6134
6243
|
})
|
6135
6244
|
;
|
@@ -6155,6 +6264,7 @@ $.fn.dimmer = function(parameters) {
|
|
6155
6264
|
module.remove.dimmed();
|
6156
6265
|
module.remove.variation();
|
6157
6266
|
module.remove.active();
|
6267
|
+
settings.onHidden.call($dimmer);
|
6158
6268
|
callback();
|
6159
6269
|
}
|
6160
6270
|
})
|
@@ -6168,6 +6278,7 @@ $.fn.dimmer = function(parameters) {
|
|
6168
6278
|
module.remove.dimmed();
|
6169
6279
|
module.remove.active();
|
6170
6280
|
$dimmer.removeAttr('style');
|
6281
|
+
settings.onHidden.call($dimmer);
|
6171
6282
|
callback();
|
6172
6283
|
})
|
6173
6284
|
;
|
@@ -6549,6 +6660,8 @@ $.fn.dimmer.settings = {
|
|
6549
6660
|
onChange : function(){},
|
6550
6661
|
onShow : function(){},
|
6551
6662
|
onHide : function(){},
|
6663
|
+
onVisible : function(){},
|
6664
|
+
onHidden : function(){},
|
6552
6665
|
|
6553
6666
|
error : {
|
6554
6667
|
method : 'The method you called is not defined.'
|
@@ -6595,7 +6708,7 @@ $.fn.dimmer.settings = {
|
|
6595
6708
|
})( jQuery, window, document );
|
6596
6709
|
|
6597
6710
|
/*!
|
6598
|
-
* # Fomantic-UI 2.9.0-beta.
|
6711
|
+
* # Fomantic-UI 2.9.0-beta.202 - Dropdown
|
6599
6712
|
* http://github.com/fomantic/Fomantic-UI/
|
6600
6713
|
*
|
6601
6714
|
*
|
@@ -6796,6 +6909,7 @@ $.fn.dropdown = function(parameters) {
|
|
6796
6909
|
select: function() {
|
6797
6910
|
if(module.has.input() && selectObserver) {
|
6798
6911
|
selectObserver.observe($module[0], {
|
6912
|
+
attributes: true,
|
6799
6913
|
childList : true,
|
6800
6914
|
subtree : true
|
6801
6915
|
});
|
@@ -7017,6 +7131,9 @@ $.fn.dropdown = function(parameters) {
|
|
7017
7131
|
module.debug('Disabling dropdown');
|
7018
7132
|
$module.addClass(className.disabled);
|
7019
7133
|
}
|
7134
|
+
if($input.is('[required]')) {
|
7135
|
+
settings.forceSelection = true;
|
7136
|
+
}
|
7020
7137
|
$input
|
7021
7138
|
.removeAttr('required')
|
7022
7139
|
.removeAttr('class')
|
@@ -7156,7 +7273,7 @@ $.fn.dropdown = function(parameters) {
|
|
7156
7273
|
if(settings.onHide.call(element) !== false) {
|
7157
7274
|
module.animate.hide(function() {
|
7158
7275
|
module.remove.visible();
|
7159
|
-
//
|
7276
|
+
// hiding search focus
|
7160
7277
|
if ( module.is.focusedOnSearch() && preventBlur !== true ) {
|
7161
7278
|
$search.blur();
|
7162
7279
|
}
|
@@ -7221,6 +7338,11 @@ $.fn.dropdown = function(parameters) {
|
|
7221
7338
|
$module
|
7222
7339
|
.on('change' + eventNamespace, selector.input, module.event.change)
|
7223
7340
|
;
|
7341
|
+
if(module.is.multiple() && module.is.searchSelection()) {
|
7342
|
+
$module
|
7343
|
+
.on('paste' + eventNamespace, selector.search, module.event.paste)
|
7344
|
+
;
|
7345
|
+
}
|
7224
7346
|
},
|
7225
7347
|
mouseEvents: function() {
|
7226
7348
|
module.verbose('Binding mouse events');
|
@@ -7440,7 +7562,7 @@ $.fn.dropdown = function(parameters) {
|
|
7440
7562
|
var value = module.is.multiple() ? module.get.values() : module.get.value();
|
7441
7563
|
if (value !== '') {
|
7442
7564
|
module.verbose('Value(s) present after click icon, select value(s) in items');
|
7443
|
-
module.set.selected(value, null,
|
7565
|
+
module.set.selected(value, null, true, true);
|
7444
7566
|
}
|
7445
7567
|
}
|
7446
7568
|
iconClicked = false;
|
@@ -7669,6 +7791,15 @@ $.fn.dropdown = function(parameters) {
|
|
7669
7791
|
},
|
7670
7792
|
|
7671
7793
|
event: {
|
7794
|
+
paste: function(event) {
|
7795
|
+
var pasteValue = (event.originalEvent.clipboardData || window.clipboardData).getData('text'),
|
7796
|
+
tokens = pasteValue.split(settings.delimiter)
|
7797
|
+
;
|
7798
|
+
tokens.forEach(function(value){
|
7799
|
+
module.set.selected(module.escape.htmlEntities(value.trim()), null, true, true);
|
7800
|
+
});
|
7801
|
+
event.preventDefault();
|
7802
|
+
},
|
7672
7803
|
change: function() {
|
7673
7804
|
if(!internalChange) {
|
7674
7805
|
module.debug('Input changed, updating selection');
|
@@ -7881,8 +8012,8 @@ $.fn.dropdown = function(parameters) {
|
|
7881
8012
|
},
|
7882
8013
|
select: {
|
7883
8014
|
mutation: function(mutations) {
|
7884
|
-
module.debug('<select> modified, recreating menu');
|
7885
8015
|
if(module.is.selectMutation(mutations)) {
|
8016
|
+
module.debug('<select> modified, recreating menu');
|
7886
8017
|
module.disconnect.selectObserver();
|
7887
8018
|
module.refresh();
|
7888
8019
|
module.setup.select();
|
@@ -8127,7 +8258,7 @@ $.fn.dropdown = function(parameters) {
|
|
8127
8258
|
hasSubMenu = ($subMenu.length> 0),
|
8128
8259
|
hasSelectedItem = ($selectedItem.length > 0),
|
8129
8260
|
selectedIsSelectable = ($selectedItem.not(selector.unselectable).length > 0),
|
8130
|
-
delimiterPressed = (pressedKey == keys.delimiter &&
|
8261
|
+
delimiterPressed = (pressedKey == keys.delimiter && module.is.multiple()),
|
8131
8262
|
isAdditionWithoutMenu = (settings.allowAdditions && settings.hideAdditions && (pressedKey == keys.enter || delimiterPressed) && selectedIsSelectable),
|
8132
8263
|
$nextItem,
|
8133
8264
|
isSubMenuItem,
|
@@ -8225,7 +8356,7 @@ $.fn.dropdown = function(parameters) {
|
|
8225
8356
|
.addClass(className.selected)
|
8226
8357
|
;
|
8227
8358
|
module.set.scrollPosition($nextItem);
|
8228
|
-
if(settings.selectOnKeydown && module.is.single()) {
|
8359
|
+
if(settings.selectOnKeydown && module.is.single() && !$nextItem.hasClass(className.actionable)) {
|
8229
8360
|
module.set.selectedItem($nextItem);
|
8230
8361
|
}
|
8231
8362
|
}
|
@@ -8252,7 +8383,7 @@ $.fn.dropdown = function(parameters) {
|
|
8252
8383
|
.addClass(className.selected)
|
8253
8384
|
;
|
8254
8385
|
module.set.scrollPosition($nextItem);
|
8255
|
-
if(settings.selectOnKeydown && module.is.single()) {
|
8386
|
+
if(settings.selectOnKeydown && module.is.single() && !$nextItem.hasClass(className.actionable)) {
|
8256
8387
|
module.set.selectedItem($nextItem);
|
8257
8388
|
}
|
8258
8389
|
}
|
@@ -8383,7 +8514,7 @@ $.fn.dropdown = function(parameters) {
|
|
8383
8514
|
;
|
8384
8515
|
if( module.can.activate( $(element) ) ) {
|
8385
8516
|
module.set.selected(value, $(element));
|
8386
|
-
if(!module.is.multiple()) {
|
8517
|
+
if(!module.is.multiple() && !(!settings.collapseOnActionable && $(element).hasClass(className.actionable))) {
|
8387
8518
|
module.hideAndClear();
|
8388
8519
|
}
|
8389
8520
|
}
|
@@ -8396,7 +8527,7 @@ $.fn.dropdown = function(parameters) {
|
|
8396
8527
|
;
|
8397
8528
|
if( module.can.activate( $(element) ) ) {
|
8398
8529
|
module.set.value(value, text, $(element));
|
8399
|
-
if(!module.is.multiple()) {
|
8530
|
+
if(!module.is.multiple() && !(!settings.collapseOnActionable && $(element).hasClass(className.actionable))) {
|
8400
8531
|
module.hideAndClear();
|
8401
8532
|
}
|
8402
8533
|
}
|
@@ -8916,7 +9047,7 @@ $.fn.dropdown = function(parameters) {
|
|
8916
9047
|
module.error(error.noStorage);
|
8917
9048
|
return;
|
8918
9049
|
}
|
8919
|
-
name = sessionStorage.getItem(value);
|
9050
|
+
name = sessionStorage.getItem(value + elementNamespace);
|
8920
9051
|
return (name !== undefined)
|
8921
9052
|
? name
|
8922
9053
|
: false
|
@@ -8960,7 +9091,7 @@ $.fn.dropdown = function(parameters) {
|
|
8960
9091
|
return;
|
8961
9092
|
}
|
8962
9093
|
module.verbose('Saving remote data to session storage', value, name);
|
8963
|
-
sessionStorage.setItem(value, name);
|
9094
|
+
sessionStorage.setItem(value + elementNamespace, name);
|
8964
9095
|
}
|
8965
9096
|
},
|
8966
9097
|
|
@@ -9020,7 +9151,7 @@ $.fn.dropdown = function(parameters) {
|
|
9020
9151
|
$nextSelectedItem
|
9021
9152
|
.addClass(className.selected)
|
9022
9153
|
;
|
9023
|
-
if(settings.selectOnKeydown && module.is.single()) {
|
9154
|
+
if(settings.selectOnKeydown && module.is.single() && !$nextItem.hasClass(className.actionable)) {
|
9024
9155
|
module.set.selectedItem($nextSelectedItem);
|
9025
9156
|
}
|
9026
9157
|
$menu
|
@@ -9223,7 +9354,7 @@ $.fn.dropdown = function(parameters) {
|
|
9223
9354
|
module.set.scrollPosition($nextValue);
|
9224
9355
|
$selectedItem.removeClass(className.selected);
|
9225
9356
|
$nextValue.addClass(className.selected);
|
9226
|
-
if(settings.selectOnKeydown && module.is.single()) {
|
9357
|
+
if(settings.selectOnKeydown && module.is.single() && !$nextItem.hasClass(className.actionable)) {
|
9227
9358
|
module.set.selectedItem($nextValue);
|
9228
9359
|
}
|
9229
9360
|
}
|
@@ -9361,17 +9492,24 @@ $.fn.dropdown = function(parameters) {
|
|
9361
9492
|
|
9362
9493
|
isFiltered = $selected.hasClass(className.filtered),
|
9363
9494
|
isActive = $selected.hasClass(className.active),
|
9495
|
+
isActionable = $selected.hasClass(className.actionable),
|
9364
9496
|
isUserValue = $selected.hasClass(className.addition),
|
9365
9497
|
shouldAnimate = (isMultiple && $selectedItem.length == 1)
|
9366
9498
|
;
|
9367
|
-
if(
|
9499
|
+
if(isActionable){
|
9500
|
+
if((!isMultiple || (!isActive || isUserValue)) && settings.apiSettings && settings.saveRemoteData) {
|
9501
|
+
module.save.remoteData(selectedText, selectedValue);
|
9502
|
+
}
|
9503
|
+
settings.onActionable.call(element, selectedValue, selectedText, $selected);
|
9504
|
+
}
|
9505
|
+
else if(isMultiple) {
|
9368
9506
|
if(!isActive || isUserValue) {
|
9369
9507
|
if(settings.apiSettings && settings.saveRemoteData) {
|
9370
9508
|
module.save.remoteData(selectedText, selectedValue);
|
9371
9509
|
}
|
9372
9510
|
if(settings.useLabels) {
|
9373
|
-
module.add.label(selectedValue, selectedText, shouldAnimate);
|
9374
9511
|
module.add.value(selectedValue, selectedText, $selected);
|
9512
|
+
module.add.label(selectedValue, selectedText, shouldAnimate);
|
9375
9513
|
module.set.activeItem($selected);
|
9376
9514
|
module.filterActive();
|
9377
9515
|
module.select.nextAvailable($selectedItem);
|
@@ -9391,7 +9529,7 @@ $.fn.dropdown = function(parameters) {
|
|
9391
9529
|
if(settings.apiSettings && settings.saveRemoteData) {
|
9392
9530
|
module.save.remoteData(selectedText, selectedValue);
|
9393
9531
|
}
|
9394
|
-
if (!keepSearchTerm) {
|
9532
|
+
if (!keepSearchTerm && !$selected.hasClass(className.actionable)) {
|
9395
9533
|
module.set.text(selectedText);
|
9396
9534
|
}
|
9397
9535
|
module.set.value(selectedValue, selectedText, $selected, preventChangeTrigger);
|
@@ -9581,7 +9719,7 @@ $.fn.dropdown = function(parameters) {
|
|
9581
9719
|
}
|
9582
9720
|
// extend current array
|
9583
9721
|
if(Array.isArray(currentValue)) {
|
9584
|
-
newValue = currentValue.concat([addedValue]);
|
9722
|
+
newValue = $selectedItem.hasClass(className.actionable) ? currentValue : currentValue.concat([addedValue]);
|
9585
9723
|
newValue = module.get.uniqueArray(newValue);
|
9586
9724
|
}
|
9587
9725
|
else {
|
@@ -9665,18 +9803,10 @@ $.fn.dropdown = function(parameters) {
|
|
9665
9803
|
return;
|
9666
9804
|
}
|
9667
9805
|
// temporarily disconnect observer
|
9668
|
-
|
9669
|
-
selectObserver.disconnect();
|
9670
|
-
module.verbose('Temporarily disconnecting mutation observer');
|
9671
|
-
}
|
9806
|
+
module.disconnect.selectObserver();
|
9672
9807
|
$option.remove();
|
9673
9808
|
module.verbose('Removing user addition as an <option>', escapedValue);
|
9674
|
-
|
9675
|
-
selectObserver.observe($input[0], {
|
9676
|
-
childList : true,
|
9677
|
-
subtree : true
|
9678
|
-
});
|
9679
|
-
}
|
9809
|
+
module.observe.select();
|
9680
9810
|
},
|
9681
9811
|
message: function() {
|
9682
9812
|
$menu.children(selector.message).remove();
|
@@ -10041,7 +10171,7 @@ $.fn.dropdown = function(parameters) {
|
|
10041
10171
|
selectChanged = false
|
10042
10172
|
;
|
10043
10173
|
$.each(mutations, function(index, mutation) {
|
10044
|
-
if($(mutation.target).is('select') || $(mutation.addedNodes).is('select')) {
|
10174
|
+
if($(mutation.target).is('select, option, optgroup') || $(mutation.addedNodes).is('select')) {
|
10045
10175
|
selectChanged = true;
|
10046
10176
|
return false;
|
10047
10177
|
}
|
@@ -10586,7 +10716,7 @@ $.fn.dropdown.settings = {
|
|
10586
10716
|
keepOnScreen : true, // Whether dropdown should check whether it is on screen before showing
|
10587
10717
|
|
10588
10718
|
match : 'both', // what to match against with search selection (both, text, or label)
|
10589
|
-
fullTextSearch :
|
10719
|
+
fullTextSearch : 'exact', // search anywhere in value (set to 'exact' to require exact matches)
|
10590
10720
|
ignoreDiacritics : false, // match results also if they contain diacritics of the same base character (for example searching for "a" will also match "á" or "â" or "à", etc...)
|
10591
10721
|
hideDividers : false, // Whether to hide any divider elements (specified in selector.divider) that are sibling to any items when searched (set to true will hide all dividers, set to 'empty' will hide them when they are not followed by a visible item)
|
10592
10722
|
|
@@ -10594,7 +10724,7 @@ $.fn.dropdown.settings = {
|
|
10594
10724
|
preserveHTML : true, // preserve html when selecting value
|
10595
10725
|
sortSelect : false, // sort selection on init
|
10596
10726
|
|
10597
|
-
forceSelection :
|
10727
|
+
forceSelection : false, // force a choice on blur with search selection
|
10598
10728
|
|
10599
10729
|
allowAdditions : false, // whether multiple select should allow user added values
|
10600
10730
|
ignoreCase : false, // whether to consider case sensitivity when creating labels
|
@@ -10605,7 +10735,7 @@ $.fn.dropdown.settings = {
|
|
10605
10735
|
useLabels : true, // whether multiple select should filter currently active selections from choices
|
10606
10736
|
delimiter : ',', // when multiselect uses normal <input> the values will be delimited with this character
|
10607
10737
|
|
10608
|
-
showOnFocus :
|
10738
|
+
showOnFocus : false, // show menu on focus
|
10609
10739
|
allowReselection : false, // whether current value should trigger callbacks when reselected
|
10610
10740
|
allowTab : true, // add tabindex to element
|
10611
10741
|
allowCategorySelection : false, // allow elements with sub-menus to be selected
|
@@ -10620,6 +10750,8 @@ $.fn.dropdown.settings = {
|
|
10620
10750
|
|
10621
10751
|
headerDivider : true, // whether option headers should have an additional divider line underneath when converted from <select> <optgroup>
|
10622
10752
|
|
10753
|
+
collapseOnActionable : true, // whether the dropdown should collapse upon selection of an actionable item
|
10754
|
+
|
10623
10755
|
// label settings on multi-select
|
10624
10756
|
label: {
|
10625
10757
|
transition : 'scale',
|
@@ -10639,6 +10771,7 @@ $.fn.dropdown.settings = {
|
|
10639
10771
|
onChange : function(value, text, $selected){},
|
10640
10772
|
onAdd : function(value, text, $selected){},
|
10641
10773
|
onRemove : function(value, text, $selected){},
|
10774
|
+
onActionable : function(value, text, $selected){},
|
10642
10775
|
onSearch : function(searchTerm){},
|
10643
10776
|
|
10644
10777
|
onLabelSelect : function($selectedLabels){},
|
@@ -10701,7 +10834,8 @@ $.fn.dropdown.settings = {
|
|
10701
10834
|
icon : 'icon', // optional icon name
|
10702
10835
|
iconClass : 'iconClass', // optional individual class for icon (for example to use flag instead)
|
10703
10836
|
class : 'class', // optional individual class for item/header
|
10704
|
-
divider : 'divider' // optional divider append for group headers
|
10837
|
+
divider : 'divider', // optional divider append for group headers
|
10838
|
+
actionable : 'actionable' // optional actionable item
|
10705
10839
|
},
|
10706
10840
|
|
10707
10841
|
keys : {
|
@@ -10773,7 +10907,8 @@ $.fn.dropdown.settings = {
|
|
10773
10907
|
header : 'header',
|
10774
10908
|
divider : 'divider',
|
10775
10909
|
groupIcon : '',
|
10776
|
-
unfilterable : 'unfilterable'
|
10910
|
+
unfilterable : 'unfilterable',
|
10911
|
+
actionable : 'actionable'
|
10777
10912
|
}
|
10778
10913
|
|
10779
10914
|
};
|
@@ -10848,6 +10983,9 @@ $.fn.dropdown.settings.templates = {
|
|
10848
10983
|
maybeText = (option[fields.text])
|
10849
10984
|
? ' data-text="' + deQuote(option[fields.text],true) + '"'
|
10850
10985
|
: '',
|
10986
|
+
maybeActionable = (option[fields.actionable])
|
10987
|
+
? className.actionable+' '
|
10988
|
+
: '',
|
10851
10989
|
maybeDisabled = (option[fields.disabled])
|
10852
10990
|
? className.disabled+' '
|
10853
10991
|
: '',
|
@@ -10856,7 +10994,7 @@ $.fn.dropdown.settings.templates = {
|
|
10856
10994
|
: '',
|
10857
10995
|
hasDescription = (escape(option[fields.description] || '', preserveHTML) != '')
|
10858
10996
|
;
|
10859
|
-
html += '<div class="'+ maybeDisabled + maybeDescriptionVertical + (option[fields.class] ? deQuote(option[fields.class]) : className.item)+'" data-value="' + deQuote(option[fields.value],true) + '"' + maybeText + '>';
|
10997
|
+
html += '<div class="'+ maybeActionable + maybeDisabled + maybeDescriptionVertical + (option[fields.class] ? deQuote(option[fields.class]) : className.item)+'" data-value="' + deQuote(option[fields.value],true) + '"' + maybeText + '>';
|
10860
10998
|
if (isMenu) {
|
10861
10999
|
html += '<i class="'+ (itemType.indexOf('left') !== -1 ? 'left' : '') + ' dropdown icon"></i>';
|
10862
11000
|
}
|
@@ -10926,7 +11064,7 @@ $.fn.dropdown.settings.templates = {
|
|
10926
11064
|
})( jQuery, window, document );
|
10927
11065
|
|
10928
11066
|
/*!
|
10929
|
-
* # Fomantic-UI 2.9.0-beta.
|
11067
|
+
* # Fomantic-UI 2.9.0-beta.202 - Embed
|
10930
11068
|
* http://github.com/fomantic/Fomantic-UI/
|
10931
11069
|
*
|
10932
11070
|
*
|
@@ -11636,7 +11774,7 @@ $.fn.embed.settings = {
|
|
11636
11774
|
})( jQuery, window, document );
|
11637
11775
|
|
11638
11776
|
/*!
|
11639
|
-
* # Fomantic-UI 2.9.0-beta.
|
11777
|
+
* # Fomantic-UI 2.9.0-beta.202 - Modal
|
11640
11778
|
* http://github.com/fomantic/Fomantic-UI/
|
11641
11779
|
*
|
11642
11780
|
*
|
@@ -11703,7 +11841,8 @@ $.fn.modal = function(parameters) {
|
|
11703
11841
|
|
11704
11842
|
$module = $(this),
|
11705
11843
|
$context = $(settings.context),
|
11706
|
-
$
|
11844
|
+
$closeIcon = $module.find(selector.closeIcon),
|
11845
|
+
$inputs,
|
11707
11846
|
|
11708
11847
|
$allModals,
|
11709
11848
|
$otherModals,
|
@@ -11729,6 +11868,7 @@ $.fn.modal = function(parameters) {
|
|
11729
11868
|
module = {
|
11730
11869
|
|
11731
11870
|
initialize: function() {
|
11871
|
+
module.create.id();
|
11732
11872
|
if(!$module.hasClass('modal')) {
|
11733
11873
|
module.create.modal();
|
11734
11874
|
if(!$.isFunction(settings.onHidden)) {
|
@@ -11753,15 +11893,17 @@ $.fn.modal = function(parameters) {
|
|
11753
11893
|
$actions.empty();
|
11754
11894
|
}
|
11755
11895
|
settings.actions.forEach(function (el) {
|
11756
|
-
var icon = el[fields.icon] ? '<i class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
|
11896
|
+
var icon = el[fields.icon] ? '<i '+(el[fields.text] ? 'aria-hidden="true"' : '')+' class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
|
11757
11897
|
text = module.helpers.escape(el[fields.text] || '', settings.preserveHTML),
|
11758
11898
|
cls = module.helpers.deQuote(el[fields.class] || ''),
|
11759
11899
|
click = el[fields.click] && $.isFunction(el[fields.click]) ? el[fields.click] : function () {};
|
11760
11900
|
$actions.append($('<button/>', {
|
11761
11901
|
html: icon + text,
|
11902
|
+
'aria-label': $('<div>'+(el[fields.text] || el[fields.icon] || '')+'</div>').text(),
|
11762
11903
|
class: className.button + ' ' + cls,
|
11763
11904
|
click: function () {
|
11764
|
-
|
11905
|
+
var button = $(this);
|
11906
|
+
if (button.is(selector.approve) || button.is(selector.deny) || click.call(element, $module) === false) {
|
11765
11907
|
return;
|
11766
11908
|
}
|
11767
11909
|
module.hide();
|
@@ -11772,7 +11914,6 @@ $.fn.modal = function(parameters) {
|
|
11772
11914
|
module.cache = {};
|
11773
11915
|
module.verbose('Initializing dimmer', $context);
|
11774
11916
|
|
11775
|
-
module.create.id();
|
11776
11917
|
module.create.dimmer();
|
11777
11918
|
|
11778
11919
|
if ( settings.allowMultiple ) {
|
@@ -11782,11 +11923,9 @@ $.fn.modal = function(parameters) {
|
|
11782
11923
|
$module.addClass('top aligned');
|
11783
11924
|
}
|
11784
11925
|
module.refreshModals();
|
11785
|
-
|
11926
|
+
module.refreshInputs();
|
11786
11927
|
module.bind.events();
|
11787
|
-
|
11788
|
-
module.observeChanges();
|
11789
|
-
}
|
11928
|
+
module.observeChanges();
|
11790
11929
|
module.instantiate();
|
11791
11930
|
if(settings.autoShow){
|
11792
11931
|
module.show();
|
@@ -11803,16 +11942,20 @@ $.fn.modal = function(parameters) {
|
|
11803
11942
|
|
11804
11943
|
create: {
|
11805
11944
|
modal: function() {
|
11806
|
-
$module = $('<div/>', {class: className.modal});
|
11945
|
+
$module = $('<div/>', {class: className.modal, role: 'dialog', 'aria-modal': true});
|
11807
11946
|
if (settings.closeIcon) {
|
11808
|
-
$
|
11809
|
-
$module.append($
|
11947
|
+
$closeIcon = $('<i/>', {class: className.close, role: 'button', tabindex: 0, 'aria-label': settings.text.close})
|
11948
|
+
$module.append($closeIcon);
|
11810
11949
|
}
|
11811
11950
|
if (settings.title !== '') {
|
11812
|
-
|
11951
|
+
var titleId = '_' + module.get.id() + 'title';
|
11952
|
+
$module.attr('aria-labelledby', titleId);
|
11953
|
+
$('<div/>', {class: className.title, id: titleId}).appendTo($module);
|
11813
11954
|
}
|
11814
11955
|
if (settings.content !== '') {
|
11815
|
-
|
11956
|
+
var descId = '_' + module.get.id() + 'desc';
|
11957
|
+
$module.attr('aria-describedby', descId);
|
11958
|
+
$('<div/>', {class: className.content, id: descId}).appendTo($module);
|
11816
11959
|
}
|
11817
11960
|
if (module.has.configActions()) {
|
11818
11961
|
$('<div/>', {class: className.actions}).appendTo($module);
|
@@ -11848,8 +11991,8 @@ $.fn.modal = function(parameters) {
|
|
11848
11991
|
module.verbose('Creating unique id for element', id);
|
11849
11992
|
},
|
11850
11993
|
innerDimmer: function() {
|
11851
|
-
if ( $module.find(selector.dimmer).length
|
11852
|
-
$
|
11994
|
+
if ( $module.find(selector.dimmer).length === 0 ) {
|
11995
|
+
$('<div/>', {class: className.innerDimmer}).prependTo($module);
|
11853
11996
|
}
|
11854
11997
|
}
|
11855
11998
|
},
|
@@ -11865,15 +12008,21 @@ $.fn.modal = function(parameters) {
|
|
11865
12008
|
;
|
11866
12009
|
$window.off(elementEventNamespace);
|
11867
12010
|
$dimmer.off(elementEventNamespace);
|
11868
|
-
$
|
12011
|
+
$closeIcon.off(elementEventNamespace);
|
12012
|
+
if($inputs) {
|
12013
|
+
$inputs.off(elementEventNamespace);
|
12014
|
+
}
|
11869
12015
|
$context.dimmer('destroy');
|
11870
12016
|
},
|
11871
12017
|
|
11872
12018
|
observeChanges: function() {
|
11873
12019
|
if('MutationObserver' in window) {
|
11874
12020
|
observer = new MutationObserver(function(mutations) {
|
11875
|
-
|
11876
|
-
|
12021
|
+
if(settings.observeChanges) {
|
12022
|
+
module.debug('DOM tree modified, refreshing');
|
12023
|
+
module.refresh();
|
12024
|
+
}
|
12025
|
+
module.refreshInputs();
|
11877
12026
|
});
|
11878
12027
|
observer.observe(element, {
|
11879
12028
|
childList : true,
|
@@ -11898,6 +12047,23 @@ $.fn.modal = function(parameters) {
|
|
11898
12047
|
$allModals = $otherModals.add($module);
|
11899
12048
|
},
|
11900
12049
|
|
12050
|
+
refreshInputs: function(){
|
12051
|
+
if($inputs){
|
12052
|
+
$inputs
|
12053
|
+
.off('keydown' + elementEventNamespace)
|
12054
|
+
;
|
12055
|
+
}
|
12056
|
+
$inputs = $module.find('[tabindex], :input').filter(':visible').filter(function() {
|
12057
|
+
return $(this).closest('.disabled').length === 0;
|
12058
|
+
});
|
12059
|
+
$inputs.first()
|
12060
|
+
.on('keydown' + elementEventNamespace, module.event.inputKeyDown.first)
|
12061
|
+
;
|
12062
|
+
$inputs.last()
|
12063
|
+
.on('keydown' + elementEventNamespace, module.event.inputKeyDown.last)
|
12064
|
+
;
|
12065
|
+
},
|
12066
|
+
|
11901
12067
|
attachEvents: function(selector, event) {
|
11902
12068
|
var
|
11903
12069
|
$toggle = $(selector)
|
@@ -11926,6 +12092,9 @@ $.fn.modal = function(parameters) {
|
|
11926
12092
|
.on('click' + eventNamespace, selector.approve, module.event.approve)
|
11927
12093
|
.on('click' + eventNamespace, selector.deny, module.event.deny)
|
11928
12094
|
;
|
12095
|
+
$closeIcon
|
12096
|
+
.on('keyup' + elementEventNamespace, module.event.closeKeyUp)
|
12097
|
+
;
|
11929
12098
|
$window
|
11930
12099
|
.on('resize' + elementEventNamespace, module.event.resize)
|
11931
12100
|
;
|
@@ -11944,7 +12113,7 @@ $.fn.modal = function(parameters) {
|
|
11944
12113
|
|
11945
12114
|
get: {
|
11946
12115
|
id: function() {
|
11947
|
-
return
|
12116
|
+
return id;
|
11948
12117
|
},
|
11949
12118
|
element: function() {
|
11950
12119
|
return $module;
|
@@ -11983,10 +12152,38 @@ $.fn.modal = function(parameters) {
|
|
11983
12152
|
close: function() {
|
11984
12153
|
module.hide();
|
11985
12154
|
},
|
12155
|
+
closeKeyUp: function(event){
|
12156
|
+
var
|
12157
|
+
keyCode = event.which
|
12158
|
+
;
|
12159
|
+
if ((keyCode === settings.keys.enter || keyCode === settings.keys.space) && $module.hasClass(className.front)) {
|
12160
|
+
module.hide();
|
12161
|
+
}
|
12162
|
+
},
|
12163
|
+
inputKeyDown: {
|
12164
|
+
first: function(event) {
|
12165
|
+
var
|
12166
|
+
keyCode = event.which
|
12167
|
+
;
|
12168
|
+
if (keyCode === settings.keys.tab && event.shiftKey) {
|
12169
|
+
$inputs.last().focus();
|
12170
|
+
event.preventDefault();
|
12171
|
+
}
|
12172
|
+
},
|
12173
|
+
last: function(event) {
|
12174
|
+
var
|
12175
|
+
keyCode = event.which
|
12176
|
+
;
|
12177
|
+
if (keyCode === settings.keys.tab && !event.shiftKey) {
|
12178
|
+
$inputs.first().focus();
|
12179
|
+
event.preventDefault();
|
12180
|
+
}
|
12181
|
+
}
|
12182
|
+
},
|
11986
12183
|
mousedown: function(event) {
|
11987
12184
|
var
|
11988
12185
|
$target = $(event.target),
|
11989
|
-
isRtl = module.is.rtl()
|
12186
|
+
isRtl = module.is.rtl()
|
11990
12187
|
;
|
11991
12188
|
initialMouseDownInModal = ($target.closest(selector.modal).length > 0);
|
11992
12189
|
if(initialMouseDownInModal) {
|
@@ -12034,10 +12231,9 @@ $.fn.modal = function(parameters) {
|
|
12034
12231
|
},
|
12035
12232
|
keyboard: function(event) {
|
12036
12233
|
var
|
12037
|
-
keyCode = event.which
|
12038
|
-
escapeKey = 27
|
12234
|
+
keyCode = event.which
|
12039
12235
|
;
|
12040
|
-
if(keyCode
|
12236
|
+
if(keyCode === settings.keys.escape) {
|
12041
12237
|
if(settings.closable) {
|
12042
12238
|
module.debug('Escape key pressed hiding modal');
|
12043
12239
|
if ( $module.hasClass(className.front) ) {
|
@@ -12352,7 +12548,7 @@ $.fn.modal = function(parameters) {
|
|
12352
12548
|
$module
|
12353
12549
|
.off('mousedown' + elementEventNamespace)
|
12354
12550
|
;
|
12355
|
-
}
|
12551
|
+
}
|
12356
12552
|
$dimmer
|
12357
12553
|
.off('mousedown' + elementEventNamespace)
|
12358
12554
|
;
|
@@ -12537,13 +12733,10 @@ $.fn.modal = function(parameters) {
|
|
12537
12733
|
set: {
|
12538
12734
|
autofocus: function() {
|
12539
12735
|
var
|
12540
|
-
$inputs = $module.find('[tabindex], :input').filter(':visible').filter(function() {
|
12541
|
-
return $(this).closest('.disabled').length === 0;
|
12542
|
-
}),
|
12543
12736
|
$autofocus = $inputs.filter('[autofocus]'),
|
12544
12737
|
$input = ($autofocus.length > 0)
|
12545
12738
|
? $autofocus.first()
|
12546
|
-
: $inputs.first()
|
12739
|
+
: ($inputs.length > 1 ? $inputs.filter(':not(i.close)') : $inputs).first()
|
12547
12740
|
;
|
12548
12741
|
if($input.length > 0) {
|
12549
12742
|
$input.focus();
|
@@ -12625,7 +12818,7 @@ $.fn.modal = function(parameters) {
|
|
12625
12818
|
? $(document).scrollTop() + settings.padding
|
12626
12819
|
: $(document).scrollTop() + (module.cache.contextHeight - module.cache.height - settings.padding),
|
12627
12820
|
marginLeft: -(module.cache.width / 2)
|
12628
|
-
})
|
12821
|
+
})
|
12629
12822
|
;
|
12630
12823
|
} else {
|
12631
12824
|
$module
|
@@ -12634,7 +12827,7 @@ $.fn.modal = function(parameters) {
|
|
12634
12827
|
? -(module.cache.height / 2)
|
12635
12828
|
: settings.padding / 2,
|
12636
12829
|
marginLeft: -(module.cache.width / 2)
|
12637
|
-
})
|
12830
|
+
})
|
12638
12831
|
;
|
12639
12832
|
}
|
12640
12833
|
module.verbose('Setting modal offset for legacy mode');
|
@@ -12960,11 +13153,19 @@ $.fn.modal.settings = {
|
|
12960
13153
|
// called after deny selector match
|
12961
13154
|
onDeny : function(){ return true; },
|
12962
13155
|
|
13156
|
+
keys : {
|
13157
|
+
space : 32,
|
13158
|
+
enter : 13,
|
13159
|
+
escape : 27,
|
13160
|
+
tab : 9,
|
13161
|
+
},
|
13162
|
+
|
12963
13163
|
selector : {
|
12964
13164
|
title : '> .header',
|
12965
13165
|
content : '> .content',
|
12966
13166
|
actions : '> .actions',
|
12967
13167
|
close : '> .close',
|
13168
|
+
closeIcon: '> .close',
|
12968
13169
|
approve : '.actions .positive, .actions .approve, .actions .ok',
|
12969
13170
|
deny : '.actions .negative, .actions .deny, .actions .cancel',
|
12970
13171
|
modal : '.ui.modal',
|
@@ -12996,11 +13197,13 @@ $.fn.modal.settings = {
|
|
12996
13197
|
template : 'ui tiny modal',
|
12997
13198
|
ok : 'positive',
|
12998
13199
|
cancel : 'negative',
|
12999
|
-
prompt : 'ui fluid input'
|
13200
|
+
prompt : 'ui fluid input',
|
13201
|
+
innerDimmer: 'ui inverted dimmer'
|
13000
13202
|
},
|
13001
13203
|
text: {
|
13002
13204
|
ok : 'Ok',
|
13003
|
-
cancel: 'Cancel'
|
13205
|
+
cancel: 'Cancel',
|
13206
|
+
close : 'Close'
|
13004
13207
|
}
|
13005
13208
|
};
|
13006
13209
|
|
@@ -13026,33 +13229,39 @@ $.fn.modal.settings.templates = {
|
|
13026
13229
|
},
|
13027
13230
|
alert: function () {
|
13028
13231
|
var settings = this.get.settings(),
|
13029
|
-
args = settings.templates.getArguments(arguments)
|
13232
|
+
args = settings.templates.getArguments(arguments),
|
13233
|
+
approveFn = args.handler
|
13030
13234
|
;
|
13031
13235
|
return {
|
13032
13236
|
title : args.title,
|
13033
13237
|
content: args.content,
|
13238
|
+
onApprove: approveFn,
|
13034
13239
|
actions: [{
|
13035
13240
|
text : settings.text.ok,
|
13036
13241
|
class: settings.className.ok,
|
13037
|
-
click:
|
13242
|
+
click: approveFn
|
13038
13243
|
}]
|
13039
13244
|
}
|
13040
13245
|
},
|
13041
13246
|
confirm: function () {
|
13042
13247
|
var settings = this.get.settings(),
|
13043
|
-
args = settings.templates.getArguments(arguments)
|
13248
|
+
args = settings.templates.getArguments(arguments),
|
13249
|
+
approveFn = function(){args.handler(true)},
|
13250
|
+
denyFn = function(){args.handler(false)}
|
13044
13251
|
;
|
13045
13252
|
return {
|
13046
13253
|
title : args.title,
|
13047
13254
|
content: args.content,
|
13255
|
+
onApprove: approveFn,
|
13256
|
+
onDeny: denyFn,
|
13048
13257
|
actions: [{
|
13049
13258
|
text : settings.text.ok,
|
13050
13259
|
class: settings.className.ok,
|
13051
|
-
click:
|
13260
|
+
click: approveFn
|
13052
13261
|
},{
|
13053
13262
|
text: settings.text.cancel,
|
13054
13263
|
class: settings.className.cancel,
|
13055
|
-
click:
|
13264
|
+
click: denyFn
|
13056
13265
|
}]
|
13057
13266
|
}
|
13058
13267
|
},
|
@@ -13060,7 +13269,14 @@ $.fn.modal.settings.templates = {
|
|
13060
13269
|
var $this = this,
|
13061
13270
|
settings = this.get.settings(),
|
13062
13271
|
args = settings.templates.getArguments(arguments),
|
13063
|
-
input = $($.parseHTML(args.content)).filter('.ui.input')
|
13272
|
+
input = $($.parseHTML(args.content)).filter('.ui.input'),
|
13273
|
+
approveFn = function(){
|
13274
|
+
var settings = $this.get.settings(),
|
13275
|
+
inputField = $this.get.element().find(settings.selector.prompt)[0]
|
13276
|
+
;
|
13277
|
+
args.handler($(inputField).val());
|
13278
|
+
},
|
13279
|
+
denyFn = function(){args.handler(null)}
|
13064
13280
|
;
|
13065
13281
|
if (input.length === 0) {
|
13066
13282
|
args.content += '<p><div class="'+settings.className.prompt+'"><input placeholder="'+this.helpers.deQuote(args.placeholder || '')+'" type="text" value="'+this.helpers.deQuote(args.defaultValue || '')+'"></div></p>';
|
@@ -13068,19 +13284,16 @@ $.fn.modal.settings.templates = {
|
|
13068
13284
|
return {
|
13069
13285
|
title : args.title,
|
13070
13286
|
content: args.content,
|
13287
|
+
onApprove: approveFn,
|
13288
|
+
onDeny: denyFn,
|
13071
13289
|
actions: [{
|
13072
13290
|
text: settings.text.ok,
|
13073
13291
|
class: settings.className.ok,
|
13074
|
-
click:
|
13075
|
-
var settings = $this.get.settings(),
|
13076
|
-
inputField = $this.get.element().find(settings.selector.prompt)[0]
|
13077
|
-
;
|
13078
|
-
args.handler($(inputField).val());
|
13079
|
-
}
|
13292
|
+
click: approveFn
|
13080
13293
|
},{
|
13081
13294
|
text: settings.text.cancel,
|
13082
13295
|
class: settings.className.cancel,
|
13083
|
-
click:
|
13296
|
+
click: denyFn
|
13084
13297
|
}]
|
13085
13298
|
}
|
13086
13299
|
}
|
@@ -13089,7 +13302,7 @@ $.fn.modal.settings.templates = {
|
|
13089
13302
|
})( jQuery, window, document );
|
13090
13303
|
|
13091
13304
|
/*!
|
13092
|
-
* # Fomantic-UI 2.9.0-beta.
|
13305
|
+
* # Fomantic-UI 2.9.0-beta.202 - Nag
|
13093
13306
|
* http://github.com/fomantic/Fomantic-UI/
|
13094
13307
|
*
|
13095
13308
|
*
|
@@ -13648,7 +13861,7 @@ $.extend( $.easing, {
|
|
13648
13861
|
})( jQuery, window, document );
|
13649
13862
|
|
13650
13863
|
/*!
|
13651
|
-
* # Fomantic-UI 2.9.0-beta.
|
13864
|
+
* # Fomantic-UI 2.9.0-beta.202 - Popup
|
13652
13865
|
* http://github.com/fomantic/Fomantic-UI/
|
13653
13866
|
*
|
13654
13867
|
*
|
@@ -15190,7 +15403,7 @@ $.fn.popup.settings = {
|
|
15190
15403
|
})( jQuery, window, document );
|
15191
15404
|
|
15192
15405
|
/*!
|
15193
|
-
* # Fomantic-UI 2.9.0-beta.
|
15406
|
+
* # Fomantic-UI 2.9.0-beta.202 - Progress
|
15194
15407
|
* http://github.com/fomantic/Fomantic-UI/
|
15195
15408
|
*
|
15196
15409
|
*
|
@@ -15284,7 +15497,7 @@ $.fn.progress = function(parameters) {
|
|
15284
15497
|
*
|
15285
15498
|
* @param min A minimum value within multiple values
|
15286
15499
|
* @param total A total amount of multiple values
|
15287
|
-
* @returns {number} A
|
15500
|
+
* @returns {number} A precision. Could be 1, 10, 100, ... 1e+10.
|
15288
15501
|
*/
|
15289
15502
|
derivePrecision: function(min, total) {
|
15290
15503
|
var precisionPower = 0
|
@@ -15798,6 +16011,9 @@ $.fn.progress = function(parameters) {
|
|
15798
16011
|
}
|
15799
16012
|
else {
|
15800
16013
|
module.remove.active();
|
16014
|
+
module.remove.warning();
|
16015
|
+
module.remove.error();
|
16016
|
+
module.remove.success();
|
15801
16017
|
module.set.label(settings.text.active);
|
15802
16018
|
}
|
15803
16019
|
},
|
@@ -16182,7 +16398,7 @@ $.fn.progress.settings = {
|
|
16182
16398
|
nonNumeric : 'Progress value is non numeric',
|
16183
16399
|
tooHigh : 'Value specified is above 100%',
|
16184
16400
|
tooLow : 'Value specified is below 0%',
|
16185
|
-
sumExceedsTotal : 'Sum of
|
16401
|
+
sumExceedsTotal : 'Sum of multiple values exceed total',
|
16186
16402
|
},
|
16187
16403
|
|
16188
16404
|
regExp: {
|
@@ -16224,7 +16440,7 @@ $.fn.progress.settings = {
|
|
16224
16440
|
})( jQuery, window, document );
|
16225
16441
|
|
16226
16442
|
/*!
|
16227
|
-
* # Fomantic-UI 2.9.0-beta.
|
16443
|
+
* # Fomantic-UI 2.9.0-beta.202 - Slider
|
16228
16444
|
* http://github.com/fomantic/Fomantic-UI/
|
16229
16445
|
*
|
16230
16446
|
*
|
@@ -17563,7 +17779,7 @@ $.fn.slider.settings = {
|
|
17563
17779
|
})( jQuery, window, document );
|
17564
17780
|
|
17565
17781
|
/*!
|
17566
|
-
* # Fomantic-UI 2.9.0-beta.
|
17782
|
+
* # Fomantic-UI 2.9.0-beta.202 - Rating
|
17567
17783
|
* http://github.com/fomantic/Fomantic-UI/
|
17568
17784
|
*
|
17569
17785
|
*
|
@@ -18118,7 +18334,7 @@ $.fn.rating.settings = {
|
|
18118
18334
|
})( jQuery, window, document );
|
18119
18335
|
|
18120
18336
|
/*!
|
18121
|
-
* # Fomantic-UI 2.9.0-beta.
|
18337
|
+
* # Fomantic-UI 2.9.0-beta.202 - Search
|
18122
18338
|
* http://github.com/fomantic/Fomantic-UI/
|
18123
18339
|
*
|
18124
18340
|
*
|
@@ -19686,7 +19902,7 @@ $.fn.search.settings = {
|
|
19686
19902
|
})( jQuery, window, document );
|
19687
19903
|
|
19688
19904
|
/*!
|
19689
|
-
* # Fomantic-UI 2.9.0-beta.
|
19905
|
+
* # Fomantic-UI 2.9.0-beta.202 - Shape
|
19690
19906
|
* http://github.com/fomantic/Fomantic-UI/
|
19691
19907
|
*
|
19692
19908
|
*
|
@@ -20535,7 +20751,7 @@ $.fn.shape.settings = {
|
|
20535
20751
|
})( jQuery, window, document );
|
20536
20752
|
|
20537
20753
|
/*!
|
20538
|
-
* # Fomantic-UI 2.9.0-beta.
|
20754
|
+
* # Fomantic-UI 2.9.0-beta.202 - Sidebar
|
20539
20755
|
* http://github.com/fomantic/Fomantic-UI/
|
20540
20756
|
*
|
20541
20757
|
*
|
@@ -21572,7 +21788,7 @@ $.fn.sidebar.settings = {
|
|
21572
21788
|
})( jQuery, window, document );
|
21573
21789
|
|
21574
21790
|
/*!
|
21575
|
-
* # Fomantic-UI 2.9.0-beta.
|
21791
|
+
* # Fomantic-UI 2.9.0-beta.202 - Sticky
|
21576
21792
|
* http://github.com/fomantic/Fomantic-UI/
|
21577
21793
|
*
|
21578
21794
|
*
|
@@ -22511,7 +22727,7 @@ $.fn.sticky.settings = {
|
|
22511
22727
|
|
22512
22728
|
error : {
|
22513
22729
|
container : 'Sticky element must be inside a relative container',
|
22514
|
-
visible : 'Element is hidden, you must call refresh after element becomes visible. Use silent setting to
|
22730
|
+
visible : 'Element is hidden, you must call refresh after element becomes visible. Use silent setting to suppress this warning in production.',
|
22515
22731
|
method : 'The method you called is not defined.',
|
22516
22732
|
invalidContext : 'Context specified does not exist',
|
22517
22733
|
elementSize : 'Sticky element is larger than its container, cannot create sticky.'
|
@@ -22530,7 +22746,7 @@ $.fn.sticky.settings = {
|
|
22530
22746
|
})( jQuery, window, document );
|
22531
22747
|
|
22532
22748
|
/*!
|
22533
|
-
* # Fomantic-UI 2.9.0-beta.
|
22749
|
+
* # Fomantic-UI 2.9.0-beta.202 - Tab
|
22534
22750
|
* http://github.com/fomantic/Fomantic-UI/
|
22535
22751
|
*
|
22536
22752
|
*
|
@@ -22631,10 +22847,18 @@ $.fn.tab = function(parameters) {
|
|
22631
22847
|
initializedHistory = true;
|
22632
22848
|
}
|
22633
22849
|
|
22634
|
-
|
22635
|
-
|
22636
|
-
|
22637
|
-
|
22850
|
+
var activeTab = module.determine.activeTab();
|
22851
|
+
if(settings.autoTabActivation && instance === undefined && activeTab == null) {
|
22852
|
+
activeTab = settings.autoTabActivation === true ? module.get.initialPath() : settings.autoTabActivation;
|
22853
|
+
module.debug('No active tab detected, setting tab active', activeTab);
|
22854
|
+
module.changeTab(activeTab);
|
22855
|
+
}
|
22856
|
+
if(activeTab != null && settings.history) {
|
22857
|
+
var autoUpdate = $.address.autoUpdate();
|
22858
|
+
$.address.autoUpdate(false);
|
22859
|
+
$.address.value(activeTab);
|
22860
|
+
$.address.autoUpdate(autoUpdate);
|
22861
|
+
}
|
22638
22862
|
|
22639
22863
|
module.instantiate();
|
22640
22864
|
},
|
@@ -22734,6 +22958,7 @@ $.fn.tab = function(parameters) {
|
|
22734
22958
|
.history(true)
|
22735
22959
|
.state(settings.path)
|
22736
22960
|
;
|
22961
|
+
$(window).trigger('popstate');
|
22737
22962
|
}
|
22738
22963
|
else {
|
22739
22964
|
module.error(error.path);
|
@@ -22901,6 +23126,10 @@ $.fn.tab = function(parameters) {
|
|
22901
23126
|
module.verbose('Tab parameters found', nextPathArray);
|
22902
23127
|
}
|
22903
23128
|
}
|
23129
|
+
if (settings.onBeforeChange.call(element, currentPath) === false) {
|
23130
|
+
module.debug('onBeforeChange returned false, cancelling tab change', $tab);
|
23131
|
+
return false;
|
23132
|
+
}
|
22904
23133
|
if(isLastTab && remoteContent) {
|
22905
23134
|
if(!shouldIgnoreLoad) {
|
22906
23135
|
module.activate.navigation(currentPath);
|
@@ -22937,6 +23166,10 @@ $.fn.tab = function(parameters) {
|
|
22937
23166
|
// if anchor exists use parent tab
|
22938
23167
|
if($anchor && $anchor.length > 0 && currentPath) {
|
22939
23168
|
module.debug('Anchor link used, opening parent tab', $tab, $anchor);
|
23169
|
+
if (settings.onBeforeChange.call(element, currentPath) === false) {
|
23170
|
+
module.debug('onBeforeChange returned false, cancelling tab change', $tab);
|
23171
|
+
return false;
|
23172
|
+
}
|
22940
23173
|
if( !$tab.hasClass(className.active) ) {
|
22941
23174
|
setTimeout(function() {
|
22942
23175
|
module.scrollTo($anchor);
|
@@ -23490,6 +23723,7 @@ $.fn.tab.settings = {
|
|
23490
23723
|
onLoad : function(tabPath, parameterArray, historyEvent) {}, // called on every load
|
23491
23724
|
onVisible : function(tabPath, parameterArray, historyEvent) {}, // called every time tab visible
|
23492
23725
|
onRequest : function(tabPath, parameterArray, historyEvent) {}, // called ever time a tab beings loading remote content
|
23726
|
+
onBeforeChange: function(tabPath) {}, // called before a tab is about to be changed. Returning false will cancel the tab change
|
23493
23727
|
|
23494
23728
|
templates : {
|
23495
23729
|
determineTitle: function(tabArray) {} // returns page title for path
|
@@ -23532,7 +23766,7 @@ $.fn.tab.settings = {
|
|
23532
23766
|
})( jQuery, window, document );
|
23533
23767
|
|
23534
23768
|
/*!
|
23535
|
-
* # Fomantic-UI 2.9.0-beta.
|
23769
|
+
* # Fomantic-UI 2.9.0-beta.202 - Toast
|
23536
23770
|
* http://github.com/fomantic/Fomantic-UI/
|
23537
23771
|
*
|
23538
23772
|
*
|
@@ -23602,12 +23836,14 @@ $.fn.toast = function(parameters) {
|
|
23602
23836
|
element = this,
|
23603
23837
|
instance = isToastComponent ? $module.data(moduleNamespace) : undefined,
|
23604
23838
|
|
23839
|
+
id,
|
23605
23840
|
module
|
23606
23841
|
;
|
23607
23842
|
module = {
|
23608
23843
|
|
23609
23844
|
initialize: function() {
|
23610
23845
|
module.verbose('Initializing element');
|
23846
|
+
module.create.id();
|
23611
23847
|
if (!module.has.container()) {
|
23612
23848
|
module.create.container();
|
23613
23849
|
}
|
@@ -23657,17 +23893,22 @@ $.fn.toast = function(parameters) {
|
|
23657
23893
|
},
|
23658
23894
|
|
23659
23895
|
show: function(callback) {
|
23660
|
-
callback = callback || function(){};
|
23661
|
-
module.debug('Showing toast');
|
23662
23896
|
if(settings.onShow.call($toastBox, element) === false) {
|
23663
23897
|
module.debug('onShow callback returned false, cancelling toast animation');
|
23664
23898
|
return;
|
23665
23899
|
}
|
23900
|
+
callback = callback || function(){};
|
23901
|
+
module.debug('Showing toast');
|
23666
23902
|
module.animate.show(callback);
|
23667
23903
|
},
|
23668
23904
|
|
23669
23905
|
close: function(callback) {
|
23906
|
+
if(settings.onHide.call($toastBox, element) === false) {
|
23907
|
+
module.debug('onHide callback returned false, cancelling toast animation');
|
23908
|
+
return;
|
23909
|
+
}
|
23670
23910
|
callback = callback || function(){};
|
23911
|
+
module.debug('Closing toast');
|
23671
23912
|
module.remove.visible();
|
23672
23913
|
module.unbind.events();
|
23673
23914
|
module.animate.close(callback);
|
@@ -23679,12 +23920,16 @@ $.fn.toast = function(parameters) {
|
|
23679
23920
|
module.verbose('Creating container');
|
23680
23921
|
$context.append($('<div/>',{class: settings.position + ' ' + className.container + ' ' +(settings.horizontal ? className.horizontal : '')}));
|
23681
23922
|
},
|
23923
|
+
id: function() {
|
23924
|
+
id = (Math.random().toString(16) + '000000000').substr(2, 8);
|
23925
|
+
module.verbose('Creating unique id for element', id);
|
23926
|
+
},
|
23682
23927
|
toast: function() {
|
23683
23928
|
$toastBox = $('<div/>', {class: className.box});
|
23684
23929
|
var iconClass = module.get.iconClass();
|
23685
23930
|
if (!isToastComponent) {
|
23686
23931
|
module.verbose('Creating toast');
|
23687
|
-
$toast = $('<div/>');
|
23932
|
+
$toast = $('<div/>', {role: 'alert'});
|
23688
23933
|
var $content = $('<div/>', {class: className.content});
|
23689
23934
|
if (iconClass !== '') {
|
23690
23935
|
$toast.append($('<i/>', {class: iconClass + ' ' + className.icon}));
|
@@ -23697,13 +23942,21 @@ $.fn.toast = function(parameters) {
|
|
23697
23942
|
}));
|
23698
23943
|
}
|
23699
23944
|
if (settings.title !== '') {
|
23945
|
+
var titleId = '_' + module.get.id() + 'title';
|
23946
|
+
$toast.attr('aria-labelledby', titleId);
|
23700
23947
|
$content.append($('<div/>', {
|
23701
23948
|
class: className.title,
|
23702
|
-
|
23949
|
+
id: titleId,
|
23950
|
+
html: module.helpers.escape(settings.title, settings.preserveHTML)
|
23703
23951
|
}));
|
23704
23952
|
}
|
23705
|
-
|
23706
|
-
$
|
23953
|
+
var descId = '_' + module.get.id() + 'desc';
|
23954
|
+
$toast.attr('aria-describedby', descId);
|
23955
|
+
$content.append($('<div/>', {
|
23956
|
+
class: className.message,
|
23957
|
+
id: descId,
|
23958
|
+
html: module.helpers.escape(settings.message, settings.preserveHTML)
|
23959
|
+
}));
|
23707
23960
|
|
23708
23961
|
$toast
|
23709
23962
|
.addClass(settings.class + ' ' + className.toast)
|
@@ -23711,7 +23964,7 @@ $.fn.toast = function(parameters) {
|
|
23711
23964
|
;
|
23712
23965
|
$toast.css('opacity', settings.opacity);
|
23713
23966
|
if (settings.closeIcon) {
|
23714
|
-
$close = $('<i/>', {class: className.close + ' ' + (typeof settings.closeIcon === 'string' ? settings.closeIcon : '')});
|
23967
|
+
$close = $('<i/>', {class: className.close + ' ' + (typeof settings.closeIcon === 'string' ? settings.closeIcon : ''), role: 'button', tabindex: 0, 'aria-label': settings.text.close});
|
23715
23968
|
if($close.hasClass(className.left)) {
|
23716
23969
|
$toast.prepend($close);
|
23717
23970
|
} else {
|
@@ -23754,15 +24007,17 @@ $.fn.toast = function(parameters) {
|
|
23754
24007
|
}
|
23755
24008
|
}
|
23756
24009
|
settings.actions.forEach(function (el) {
|
23757
|
-
var icon = el[fields.icon] ? '<i class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
|
24010
|
+
var icon = el[fields.icon] ? '<i '+(el[fields.text] ? 'aria-hidden="true"' : '')+' class="' + module.helpers.deQuote(el[fields.icon]) + ' icon"></i>' : '',
|
23758
24011
|
text = module.helpers.escape(el[fields.text] || '', settings.preserveHTML),
|
23759
24012
|
cls = module.helpers.deQuote(el[fields.class] || ''),
|
23760
24013
|
click = el[fields.click] && $.isFunction(el[fields.click]) ? el[fields.click] : function () {};
|
23761
24014
|
$actions.append($('<button/>', {
|
23762
24015
|
html: icon + text,
|
24016
|
+
'aria-label': $('<div>'+(el[fields.text] || el[fields.icon] || '')+'</div>').text(),
|
23763
24017
|
class: className.button + ' ' + cls,
|
23764
24018
|
click: function () {
|
23765
|
-
|
24019
|
+
var button = $(this);
|
24020
|
+
if (button.is(selector.approve) || button.is(selector.deny) || click.call(element, $module) === false) {
|
23766
24021
|
return;
|
23767
24022
|
}
|
23768
24023
|
module.close();
|
@@ -23862,13 +24117,12 @@ $.fn.toast = function(parameters) {
|
|
23862
24117
|
bind: {
|
23863
24118
|
events: function() {
|
23864
24119
|
module.debug('Binding events to toast');
|
23865
|
-
if(settings.
|
23866
|
-
(
|
23867
|
-
.on('click' + eventNamespace, module.event.click)
|
23868
|
-
;
|
24120
|
+
if(settings.closeIcon) {
|
24121
|
+
$close.on('click' + eventNamespace, module.event.close);
|
23869
24122
|
}
|
24123
|
+
$toast.on('click' + eventNamespace, module.event.click);
|
23870
24124
|
if($animationObject) {
|
23871
|
-
$animationObject.on('animationend' + eventNamespace, module.close);
|
24125
|
+
$animationObject.on('animationend' + eventNamespace, module.event.close);
|
23872
24126
|
}
|
23873
24127
|
$toastBox
|
23874
24128
|
.on('click' + eventNamespace, selector.approve, module.event.approve)
|
@@ -23880,11 +24134,10 @@ $.fn.toast = function(parameters) {
|
|
23880
24134
|
unbind: {
|
23881
24135
|
events: function() {
|
23882
24136
|
module.debug('Unbinding events to toast');
|
23883
|
-
if(settings.
|
23884
|
-
|
23885
|
-
.off('click' + eventNamespace)
|
23886
|
-
;
|
24137
|
+
if(settings.closeIcon) {
|
24138
|
+
$close.off('click' + eventNamespace);
|
23887
24139
|
}
|
24140
|
+
$toast.off('click' + eventNamespace);
|
23888
24141
|
if($animationObject) {
|
23889
24142
|
$animationObject.off('animationend' + eventNamespace);
|
23890
24143
|
}
|
@@ -23916,11 +24169,6 @@ $.fn.toast = function(parameters) {
|
|
23916
24169
|
},
|
23917
24170
|
close: function(callback) {
|
23918
24171
|
callback = $.isFunction(callback) ? callback : function(){};
|
23919
|
-
module.debug('Closing toast');
|
23920
|
-
if(settings.onHide.call($toastBox, element) === false) {
|
23921
|
-
module.debug('onHide callback returned false, cancelling toast animation');
|
23922
|
-
return;
|
23923
|
-
}
|
23924
24172
|
if(settings.transition && $.fn.transition !== undefined && $module.transition('is supported')) {
|
23925
24173
|
$toastBox
|
23926
24174
|
.transition({
|
@@ -23976,7 +24224,7 @@ $.fn.toast = function(parameters) {
|
|
23976
24224
|
has: {
|
23977
24225
|
container: function() {
|
23978
24226
|
module.verbose('Determining if there is already a container');
|
23979
|
-
return ($context.find(module.helpers.toClass(settings.position) + selector.container + (settings.horizontal ? module.helpers.toClass(className.horizontal) : '')).length > 0);
|
24227
|
+
return ($context.find(module.helpers.toClass(settings.position) + selector.container + (settings.horizontal ? module.helpers.toClass(className.horizontal) : ':not('+module.helpers.toClass(className.horizontal)+')')).length > 0);
|
23980
24228
|
},
|
23981
24229
|
toast: function(){
|
23982
24230
|
return !!module.get.toast();
|
@@ -23990,8 +24238,11 @@ $.fn.toast = function(parameters) {
|
|
23990
24238
|
},
|
23991
24239
|
|
23992
24240
|
get: {
|
24241
|
+
id: function() {
|
24242
|
+
return id;
|
24243
|
+
},
|
23993
24244
|
container: function() {
|
23994
|
-
return ($context.find(module.helpers.toClass(settings.position) + selector.container)[0]);
|
24245
|
+
return ($context.find(module.helpers.toClass(settings.position) + selector.container + (settings.horizontal ? module.helpers.toClass(className.horizontal) : ':not('+module.helpers.toClass(className.horizontal)+')'))[0]);
|
23995
24246
|
},
|
23996
24247
|
toastBox: function() {
|
23997
24248
|
return $toastBox || null;
|
@@ -24023,9 +24274,15 @@ $.fn.toast = function(parameters) {
|
|
24023
24274
|
},
|
24024
24275
|
|
24025
24276
|
event: {
|
24277
|
+
close: function(){
|
24278
|
+
module.close();
|
24279
|
+
},
|
24026
24280
|
click: function(event) {
|
24027
|
-
if($(event.target).closest(
|
24028
|
-
settings.onClick.call($toastBox, element)
|
24281
|
+
if($(event.target).closest(selector.clickable).length === 0) {
|
24282
|
+
if(settings.onClick.call($toastBox, element) === false || !settings.closeOnClick) {
|
24283
|
+
module.verbose('Click callback returned false or close denied by setting cancelling close');
|
24284
|
+
return;
|
24285
|
+
}
|
24029
24286
|
module.close();
|
24030
24287
|
}
|
24031
24288
|
},
|
@@ -24366,6 +24623,10 @@ $.fn.toast.settings = {
|
|
24366
24623
|
unclickable : 'unclickable'
|
24367
24624
|
},
|
24368
24625
|
|
24626
|
+
text: {
|
24627
|
+
close : 'Close'
|
24628
|
+
},
|
24629
|
+
|
24369
24630
|
icons : {
|
24370
24631
|
info : 'info',
|
24371
24632
|
success : 'checkmark',
|
@@ -24382,6 +24643,7 @@ $.fn.toast.settings = {
|
|
24382
24643
|
image : '> img.image, > .image > img',
|
24383
24644
|
icon : '> i.icon',
|
24384
24645
|
input : 'input:not([type="hidden"]), textarea, select, button, .ui.button, ui.dropdown',
|
24646
|
+
clickable : 'a, details, .ui.accordion',
|
24385
24647
|
approve : '.actions .positive, .actions .approve, .actions .ok',
|
24386
24648
|
deny : '.actions .negative, .actions .deny, .actions .cancel'
|
24387
24649
|
},
|
@@ -24425,7 +24687,7 @@ $.extend( $.easing, {
|
|
24425
24687
|
})( jQuery, window, document );
|
24426
24688
|
|
24427
24689
|
/*!
|
24428
|
-
* # Fomantic-UI 2.9.0-beta.
|
24690
|
+
* # Fomantic-UI 2.9.0-beta.202 - Transition
|
24429
24691
|
* http://github.com/fomantic/Fomantic-UI/
|
24430
24692
|
*
|
24431
24693
|
*
|
@@ -25523,7 +25785,7 @@ $.fn.transition.settings = {
|
|
25523
25785
|
|
25524
25786
|
// possible errors
|
25525
25787
|
error: {
|
25526
|
-
noAnimation : 'Element is no longer attached to DOM. Unable to animate. Use silent setting to
|
25788
|
+
noAnimation : 'Element is no longer attached to DOM. Unable to animate. Use silent setting to suppress this warning in production.',
|
25527
25789
|
repeated : 'That animation is already occurring, cancelling repeated animation',
|
25528
25790
|
method : 'The method you called is not defined',
|
25529
25791
|
support : 'This browser does not support CSS animations'
|
@@ -25535,7 +25797,7 @@ $.fn.transition.settings = {
|
|
25535
25797
|
})( jQuery, window, document );
|
25536
25798
|
|
25537
25799
|
/*!
|
25538
|
-
* # Fomantic-UI 2.9.0-beta.
|
25800
|
+
* # Fomantic-UI 2.9.0-beta.202 - API
|
25539
25801
|
* http://github.com/fomantic/Fomantic-UI/
|
25540
25802
|
*
|
25541
25803
|
*
|
@@ -25610,6 +25872,7 @@ $.api = $.fn.api = function(parameters) {
|
|
25610
25872
|
url,
|
25611
25873
|
data,
|
25612
25874
|
requestStartTime,
|
25875
|
+
originalData,
|
25613
25876
|
|
25614
25877
|
// standard module
|
25615
25878
|
element = this,
|
@@ -25622,6 +25885,7 @@ $.api = $.fn.api = function(parameters) {
|
|
25622
25885
|
|
25623
25886
|
initialize: function() {
|
25624
25887
|
if(!methodInvoked) {
|
25888
|
+
originalData = settings.data;
|
25625
25889
|
module.bind.events();
|
25626
25890
|
}
|
25627
25891
|
module.instantiate();
|
@@ -25668,7 +25932,7 @@ $.api = $.fn.api = function(parameters) {
|
|
25668
25932
|
response = JSON.parse(response);
|
25669
25933
|
}
|
25670
25934
|
catch(e) {
|
25671
|
-
//
|
25935
|
+
// isn't json string
|
25672
25936
|
}
|
25673
25937
|
}
|
25674
25938
|
return response;
|
@@ -25684,8 +25948,8 @@ $.api = $.fn.api = function(parameters) {
|
|
25684
25948
|
module.error(error.noStorage);
|
25685
25949
|
return;
|
25686
25950
|
}
|
25687
|
-
response = sessionStorage.getItem(url);
|
25688
|
-
module.debug('Using cached response', url, response);
|
25951
|
+
response = sessionStorage.getItem(url + module.get.normalizedData());
|
25952
|
+
module.debug('Using cached response', url, settings.data, response);
|
25689
25953
|
response = module.decode.json(response);
|
25690
25954
|
return response;
|
25691
25955
|
}
|
@@ -25703,8 +25967,8 @@ $.api = $.fn.api = function(parameters) {
|
|
25703
25967
|
if( $.isPlainObject(response) ) {
|
25704
25968
|
response = JSON.stringify(response);
|
25705
25969
|
}
|
25706
|
-
sessionStorage.setItem(url, response);
|
25707
|
-
module.verbose('Storing cached response for url', url, response);
|
25970
|
+
sessionStorage.setItem(url + module.get.normalizedData(), response);
|
25971
|
+
module.verbose('Storing cached response for url', url, settings.data, response);
|
25708
25972
|
}
|
25709
25973
|
},
|
25710
25974
|
|
@@ -25733,7 +25997,7 @@ $.api = $.fn.api = function(parameters) {
|
|
25733
25997
|
|
25734
25998
|
// Add form content
|
25735
25999
|
if(settings.serializeForm) {
|
25736
|
-
settings.data = module.add.formData(settings.data);
|
26000
|
+
settings.data = module.add.formData(originalData || settings.data);
|
25737
26001
|
}
|
25738
26002
|
|
25739
26003
|
// call beforesend and get any settings changes
|
@@ -25870,10 +26134,6 @@ $.api = $.fn.api = function(parameters) {
|
|
25870
26134
|
cancelled: function() {
|
25871
26135
|
return (module.cancelled || false);
|
25872
26136
|
},
|
25873
|
-
succesful: function() {
|
25874
|
-
module.verbose('This behavior will be deleted due to typo. Use "was successful" instead.');
|
25875
|
-
return module.was.successful();
|
25876
|
-
},
|
25877
26137
|
successful: function() {
|
25878
26138
|
return (module.request && module.request.state() == 'resolved');
|
25879
26139
|
},
|
@@ -25965,25 +26225,29 @@ $.api = $.fn.api = function(parameters) {
|
|
25965
26225
|
},
|
25966
26226
|
formData: function(data) {
|
25967
26227
|
var
|
25968
|
-
|
25969
|
-
formData = (canSerialize)
|
25970
|
-
? $form.serializeObject()
|
25971
|
-
: $form.serialize(),
|
26228
|
+
formData = {},
|
25972
26229
|
hasOtherData
|
25973
26230
|
;
|
25974
|
-
data = data || settings.data;
|
26231
|
+
data = data || originalData || settings.data;
|
25975
26232
|
hasOtherData = $.isPlainObject(data);
|
25976
26233
|
|
25977
|
-
|
25978
|
-
|
25979
|
-
|
25980
|
-
|
25981
|
-
|
25982
|
-
|
25983
|
-
|
25984
|
-
|
25985
|
-
|
26234
|
+
$.each($form.serializeArray(), function (i, element) {
|
26235
|
+
var node = formData[element.name];
|
26236
|
+
|
26237
|
+
if ('undefined' !== typeof node && node !== null) {
|
26238
|
+
if (Array.isArray(node)) {
|
26239
|
+
node.push(element.value);
|
26240
|
+
} else {
|
26241
|
+
formData[element.name] = [node, element.value];
|
26242
|
+
}
|
26243
|
+
} else {
|
26244
|
+
formData[element.name] = element.value;
|
25986
26245
|
}
|
26246
|
+
});
|
26247
|
+
|
26248
|
+
if(hasOtherData) {
|
26249
|
+
module.debug('Extending existing data with form data', data, formData);
|
26250
|
+
data = $.extend(true, {}, data, formData);
|
25987
26251
|
}
|
25988
26252
|
else {
|
25989
26253
|
module.debug('Adding form data', formData);
|
@@ -26234,6 +26498,9 @@ $.api = $.fn.api = function(parameters) {
|
|
26234
26498
|
},
|
26235
26499
|
|
26236
26500
|
get: {
|
26501
|
+
normalizedData: function(){
|
26502
|
+
return typeof settings.data === "string" ? settings.data : JSON.stringify(settings.data, Object.keys(settings.data).sort());
|
26503
|
+
},
|
26237
26504
|
responseFromXHR: function(xhr) {
|
26238
26505
|
return $.isPlainObject(xhr)
|
26239
26506
|
? (module.is.expectingJSON())
|
@@ -26677,7 +26944,6 @@ $.api.settings = {
|
|
26677
26944
|
legacyParameters : 'You are using legacy API success callback names',
|
26678
26945
|
method : 'The method you called is not defined',
|
26679
26946
|
missingAction : 'API action used but no url was defined',
|
26680
|
-
missingSerialize : 'jquery-serialize-object is required to add form data to an existing data object',
|
26681
26947
|
missingURL : 'No URL specified for api event',
|
26682
26948
|
noReturnedValue : 'The beforeSend callback must return a settings object, beforeSend ignored.',
|
26683
26949
|
noStorage : 'Caching responses locally requires session storage',
|
@@ -26713,7 +26979,7 @@ $.api.settings = {
|
|
26713
26979
|
})( jQuery, window, document );
|
26714
26980
|
|
26715
26981
|
/*!
|
26716
|
-
* # Fomantic-UI 2.9.0-beta.
|
26982
|
+
* # Fomantic-UI 2.9.0-beta.202 - State
|
26717
26983
|
* http://github.com/fomantic/Fomantic-UI/
|
26718
26984
|
*
|
26719
26985
|
*
|
@@ -27425,7 +27691,7 @@ $.fn.state.settings = {
|
|
27425
27691
|
})( jQuery, window, document );
|
27426
27692
|
|
27427
27693
|
/*!
|
27428
|
-
* # Fomantic-UI 2.9.0-beta.
|
27694
|
+
* # Fomantic-UI 2.9.0-beta.202 - Visibility
|
27429
27695
|
* http://github.com/fomantic/Fomantic-UI/
|
27430
27696
|
*
|
27431
27697
|
*
|
@@ -28663,7 +28929,7 @@ $.fn.visibility.settings = {
|
|
28663
28929
|
// callback should only occur one time
|
28664
28930
|
once : true,
|
28665
28931
|
|
28666
|
-
// callback should fire continuously
|
28932
|
+
// callback should fire continuously when evaluates to true
|
28667
28933
|
continuous : false,
|
28668
28934
|
|
28669
28935
|
// offset to use with scroll top
|