fomantic-ui 2.8.8-beta.99 → 2.9.0-beta.100
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 +188 -3
- package/.github/dependabot.yml +17 -0
- package/.github/workflows/ci.yml +1 -1
- package/CHANGELOG.md +139 -0
- package/CONTRIBUTING.md +1 -1
- package/CONTRIBUTORS.md +71 -37
- package/README.md +3 -3
- package/dist/components/accordion.css +50 -6
- package/dist/components/accordion.js +1 -1
- package/dist/components/accordion.min.css +2 -2
- package/dist/components/accordion.min.js +3 -3
- package/dist/components/ad.css +1 -1
- package/dist/components/ad.min.css +1 -1
- package/dist/components/api.js +26 -24
- package/dist/components/api.min.js +4 -4
- 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 +4 -4
- package/dist/components/card.css +26 -19
- package/dist/components/card.min.css +2 -2
- package/dist/components/checkbox.css +6 -4
- package/dist/components/checkbox.js +17 -11
- package/dist/components/checkbox.min.css +2 -2
- package/dist/components/checkbox.min.js +4 -4
- package/dist/components/comment.css +11 -11
- package/dist/components/comment.min.css +1 -1
- package/dist/components/container.css +3 -4
- package/dist/components/container.min.css +2 -2
- package/dist/components/dimmer.css +28 -14
- package/dist/components/dimmer.js +15 -12
- package/dist/components/dimmer.min.css +2 -2
- package/dist/components/dimmer.min.js +4 -4
- package/dist/components/divider.css +1 -1
- package/dist/components/divider.min.css +1 -1
- package/dist/components/dropdown.css +54 -7
- package/dist/components/dropdown.js +107 -77
- package/dist/components/dropdown.min.css +2 -2
- package/dist/components/dropdown.min.js +4 -4
- 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 +3 -3
- 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 +119 -54
- package/dist/components/form.js +51 -70
- package/dist/components/form.min.css +2 -2
- package/dist/components/form.min.js +4 -4
- package/dist/components/grid.css +13 -11
- package/dist/components/grid.min.css +2 -2
- package/dist/components/header.css +3 -3
- package/dist/components/header.min.css +2 -2
- package/dist/components/icon.css +86 -5
- 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 +17 -2
- 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 +39 -37
- package/dist/components/loader.min.css +2 -2
- package/dist/components/menu.css +37 -11
- package/dist/components/menu.min.css +1 -1
- package/dist/components/message.css +78 -34
- package/dist/components/message.min.css +2 -2
- package/dist/components/modal.css +7 -5
- package/dist/components/modal.js +237 -41
- package/dist/components/modal.min.css +2 -2
- package/dist/components/modal.min.js +4 -4
- package/dist/components/nag.css +168 -16
- package/dist/components/nag.js +131 -65
- package/dist/components/nag.min.css +2 -2
- package/dist/components/nag.min.js +4 -4
- 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 +5 -5
- package/dist/components/popup.min.css +2 -2
- package/dist/components/popup.min.js +4 -4
- package/dist/components/progress.css +2 -1
- package/dist/components/progress.js +3 -3
- package/dist/components/progress.min.css +2 -2
- package/dist/components/progress.min.js +4 -4
- package/dist/components/rail.css +1 -1
- package/dist/components/rail.min.css +1 -1
- package/dist/components/rating.css +8 -62
- package/dist/components/rating.js +1 -1
- package/dist/components/rating.min.css +2 -2
- package/dist/components/rating.min.js +3 -3
- package/dist/components/reset.css +2 -3
- package/dist/components/reset.min.css +2 -2
- 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 +15 -13
- package/dist/components/search.min.css +1 -1
- package/dist/components/search.min.js +4 -4
- package/dist/components/segment.css +36 -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 +3 -3
- 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 +3 -3
- 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 +3 -3
- package/dist/components/slider.js +1 -1
- package/dist/components/slider.min.js +3 -3
- package/dist/components/state.js +1 -1
- package/dist/components/state.min.js +3 -3
- 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 -2
- package/dist/components/sticky.js +2 -2
- package/dist/components/sticky.min.css +2 -2
- package/dist/components/sticky.min.js +4 -4
- package/dist/components/tab.css +1 -1
- package/dist/components/tab.js +1 -1
- package/dist/components/tab.min.css +1 -1
- package/dist/components/tab.min.js +3 -3
- package/dist/components/table.css +5 -3
- 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 +123 -10
- package/dist/components/toast.js +54 -27
- package/dist/components/toast.min.css +2 -2
- package/dist/components/toast.min.js +4 -4
- 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 +4 -4
- package/dist/components/visibility.js +2 -2
- package/dist/components/visibility.min.js +3 -3
- package/dist/semantic.css +2004 -1124
- package/dist/semantic.js +789 -377
- package/dist/semantic.min.css +4 -397
- package/dist/semantic.min.js +4 -4
- package/examples/assets/library/iframe-content.js +8 -8
- package/examples/assets/library/iframe.js +3 -3
- package/package.json +5 -5
- package/scripts/nightly-version.js +23 -8
- package/src/definitions/behaviors/api.js +25 -23
- package/src/definitions/behaviors/form.js +50 -69
- package/src/definitions/behaviors/visibility.js +1 -1
- package/src/definitions/collections/form.less +200 -142
- package/src/definitions/collections/grid.less +717 -681
- package/src/definitions/collections/menu.less +177 -128
- package/src/definitions/collections/message.less +77 -44
- package/src/definitions/collections/table.less +255 -242
- package/src/definitions/elements/button.less +360 -347
- package/src/definitions/elements/container.less +16 -8
- package/src/definitions/elements/emoji.less +15 -9
- package/src/definitions/elements/flag.less +7 -17
- package/src/definitions/elements/header.less +44 -37
- package/src/definitions/elements/icon.less +121 -43
- package/src/definitions/elements/input.less +23 -7
- package/src/definitions/elements/label.less +92 -91
- package/src/definitions/elements/list.less +55 -45
- package/src/definitions/elements/loader.less +38 -35
- package/src/definitions/elements/segment.less +51 -23
- 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 +55 -5
- package/src/definitions/modules/calendar.js +109 -10
- package/src/definitions/modules/checkbox.js +16 -10
- package/src/definitions/modules/checkbox.less +44 -186
- package/src/definitions/modules/dimmer.js +14 -11
- package/src/definitions/modules/dimmer.less +21 -8
- package/src/definitions/modules/dropdown.js +106 -76
- package/src/definitions/modules/dropdown.less +148 -89
- package/src/definitions/modules/modal.js +236 -40
- package/src/definitions/modules/modal.less +6 -4
- package/src/definitions/modules/nag.js +130 -64
- package/src/definitions/modules/nag.less +105 -40
- package/src/definitions/modules/popup.js +4 -4
- package/src/definitions/modules/popup.less +5 -1
- package/src/definitions/modules/progress.js +2 -2
- package/src/definitions/modules/progress.less +20 -18
- package/src/definitions/modules/rating.less +50 -42
- package/src/definitions/modules/search.js +14 -12
- package/src/definitions/modules/search.less +32 -16
- package/src/definitions/modules/sidebar.less +33 -19
- package/src/definitions/modules/slider.less +43 -42
- package/src/definitions/modules/sticky.js +1 -1
- package/src/definitions/modules/toast.js +53 -26
- package/src/definitions/modules/toast.less +139 -25
- 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/default/collections/grid.variables +8 -8
- package/src/themes/default/collections/menu.variables +6 -0
- package/src/themes/default/collections/table.variables +1 -1
- package/src/themes/default/elements/button.variables +2 -1
- package/src/themes/default/elements/flag.overrides +1635 -986
- package/src/themes/default/elements/flag.variables +7 -5
- package/src/themes/default/elements/header.variables +2 -2
- package/src/themes/default/elements/icon.overrides +35 -28
- package/src/themes/default/elements/icon.variables +4 -0
- package/src/themes/default/elements/list.variables +1 -1
- package/src/themes/default/elements/step.overrides +1 -1
- package/src/themes/default/globals/colors.less +7 -7
- package/src/themes/default/globals/site.variables +19 -9
- package/src/themes/default/globals/variation.variables +119 -6
- package/src/themes/default/modules/accordion.variables +15 -0
- package/src/themes/default/modules/checkbox.variables +16 -16
- package/src/themes/default/modules/dimmer.variables +1 -1
- package/src/themes/default/modules/dropdown.variables +12 -5
- package/src/themes/default/modules/modal.variables +2 -2
- package/src/themes/default/modules/nag.variables +3 -1
- package/src/themes/default/modules/toast.variables +5 -1
- package/src/themes/default/views/card.variables +1 -1
- package/src/themes/famfamfam/elements/flag.overrides +1026 -0
- package/src/themes/famfamfam/elements/flag.variables +13 -0
- package/tasks/admin/components/init.js +2 -2
- package/tasks/admin/distributions/init.js +2 -2
- package/tasks/build/css.js +6 -1
- package/tasks/config/project/release.js +2 -2
- package/tasks/config/tasks.js +13 -9
- package/test/helpers/sinon.js +1 -1
@@ -200,6 +200,7 @@ $.fn.dropdown = function(parameters) {
|
|
200
200
|
select: function() {
|
201
201
|
if(module.has.input() && selectObserver) {
|
202
202
|
selectObserver.observe($module[0], {
|
203
|
+
attributes: true,
|
203
204
|
childList : true,
|
204
205
|
subtree : true
|
205
206
|
});
|
@@ -297,7 +298,9 @@ $.fn.dropdown = function(parameters) {
|
|
297
298
|
: module.get.query()
|
298
299
|
;
|
299
300
|
module.verbose('Searching for query', query);
|
300
|
-
if(module.
|
301
|
+
if(settings.fireOnInit === false && module.is.initialLoad()) {
|
302
|
+
module.verbose('Skipping callback on initial load', settings.onSearch);
|
303
|
+
} else if(module.has.minCharacters(query) && settings.onSearch.call(element, query) !== false) {
|
301
304
|
module.filter(query);
|
302
305
|
}
|
303
306
|
else {
|
@@ -359,7 +362,7 @@ $.fn.dropdown = function(parameters) {
|
|
359
362
|
if( !module.has.menu() ) {
|
360
363
|
module.create.menu();
|
361
364
|
}
|
362
|
-
if ( module.is.
|
365
|
+
if ( module.is.clearable() && !module.has.clearItem() ) {
|
363
366
|
module.verbose('Adding clear icon');
|
364
367
|
$clear = $('<i />')
|
365
368
|
.addClass('remove icon')
|
@@ -370,7 +373,7 @@ $.fn.dropdown = function(parameters) {
|
|
370
373
|
module.verbose('Adding search input');
|
371
374
|
$search = $('<input />')
|
372
375
|
.addClass(className.search)
|
373
|
-
.prop('autocomplete', 'off')
|
376
|
+
.prop('autocomplete', module.is.chrome() ? 'fomantic-search' : 'off')
|
374
377
|
.insertBefore($text)
|
375
378
|
;
|
376
379
|
}
|
@@ -419,6 +422,9 @@ $.fn.dropdown = function(parameters) {
|
|
419
422
|
module.debug('Disabling dropdown');
|
420
423
|
$module.addClass(className.disabled);
|
421
424
|
}
|
425
|
+
if($input.is('[required]')) {
|
426
|
+
settings.forceSelection = true;
|
427
|
+
}
|
422
428
|
$input
|
423
429
|
.removeAttr('required')
|
424
430
|
.removeAttr('class')
|
@@ -558,7 +564,7 @@ $.fn.dropdown = function(parameters) {
|
|
558
564
|
if(settings.onHide.call(element) !== false) {
|
559
565
|
module.animate.hide(function() {
|
560
566
|
module.remove.visible();
|
561
|
-
//
|
567
|
+
// hiding search focus
|
562
568
|
if ( module.is.focusedOnSearch() && preventBlur !== true ) {
|
563
569
|
$search.blur();
|
564
570
|
}
|
@@ -1283,8 +1289,8 @@ $.fn.dropdown = function(parameters) {
|
|
1283
1289
|
},
|
1284
1290
|
select: {
|
1285
1291
|
mutation: function(mutations) {
|
1286
|
-
module.debug('<select> modified, recreating menu');
|
1287
1292
|
if(module.is.selectMutation(mutations)) {
|
1293
|
+
module.debug('<select> modified, recreating menu');
|
1288
1294
|
module.disconnect.selectObserver();
|
1289
1295
|
module.refresh();
|
1290
1296
|
module.setup.select();
|
@@ -1867,7 +1873,7 @@ $.fn.dropdown = function(parameters) {
|
|
1867
1873
|
return count;
|
1868
1874
|
},
|
1869
1875
|
transition: function($subMenu) {
|
1870
|
-
return (settings.transition
|
1876
|
+
return (settings.transition === 'auto')
|
1871
1877
|
? module.is.upward($subMenu)
|
1872
1878
|
? 'slide up'
|
1873
1879
|
: 'slide down'
|
@@ -2318,7 +2324,7 @@ $.fn.dropdown = function(parameters) {
|
|
2318
2324
|
module.error(error.noStorage);
|
2319
2325
|
return;
|
2320
2326
|
}
|
2321
|
-
name = sessionStorage.getItem(value);
|
2327
|
+
name = sessionStorage.getItem(value + elementNamespace);
|
2322
2328
|
return (name !== undefined)
|
2323
2329
|
? name
|
2324
2330
|
: false
|
@@ -2362,7 +2368,7 @@ $.fn.dropdown = function(parameters) {
|
|
2362
2368
|
return;
|
2363
2369
|
}
|
2364
2370
|
module.verbose('Saving remote data to session storage', value, name);
|
2365
|
-
sessionStorage.setItem(value, name);
|
2371
|
+
sessionStorage.setItem(value + elementNamespace, name);
|
2366
2372
|
}
|
2367
2373
|
},
|
2368
2374
|
|
@@ -3067,18 +3073,10 @@ $.fn.dropdown = function(parameters) {
|
|
3067
3073
|
return;
|
3068
3074
|
}
|
3069
3075
|
// temporarily disconnect observer
|
3070
|
-
|
3071
|
-
selectObserver.disconnect();
|
3072
|
-
module.verbose('Temporarily disconnecting mutation observer');
|
3073
|
-
}
|
3076
|
+
module.disconnect.selectObserver();
|
3074
3077
|
$option.remove();
|
3075
3078
|
module.verbose('Removing user addition as an <option>', escapedValue);
|
3076
|
-
|
3077
|
-
selectObserver.observe($input[0], {
|
3078
|
-
childList : true,
|
3079
|
-
subtree : true
|
3080
|
-
});
|
3081
|
-
}
|
3079
|
+
module.observe.select();
|
3082
3080
|
},
|
3083
3081
|
message: function() {
|
3084
3082
|
$menu.children(selector.message).remove();
|
@@ -3377,6 +3375,9 @@ $.fn.dropdown = function(parameters) {
|
|
3377
3375
|
bubbledIconClick: function(event) {
|
3378
3376
|
return $(event.target).closest($icon).length > 0;
|
3379
3377
|
},
|
3378
|
+
chrome: function() {
|
3379
|
+
return !!window.chrome && (!!window.chrome.webstore || !!window.chrome.runtime);
|
3380
|
+
},
|
3380
3381
|
alreadySetup: function() {
|
3381
3382
|
return ($module.is('select') && $module.parent(selector.dropdown).data(moduleNamespace) !== undefined && $module.prev().length === 0);
|
3382
3383
|
},
|
@@ -3440,7 +3441,7 @@ $.fn.dropdown = function(parameters) {
|
|
3440
3441
|
selectChanged = false
|
3441
3442
|
;
|
3442
3443
|
$.each(mutations, function(index, mutation) {
|
3443
|
-
if($(mutation.target).is('select') || $(mutation.addedNodes).is('select')) {
|
3444
|
+
if($(mutation.target).is('select, option, optgroup') || $(mutation.addedNodes).is('select')) {
|
3444
3445
|
selectChanged = true;
|
3445
3446
|
return false;
|
3446
3447
|
}
|
@@ -3615,12 +3616,12 @@ $.fn.dropdown = function(parameters) {
|
|
3615
3616
|
;
|
3616
3617
|
module.verbose('Doing menu show animation', $currentMenu);
|
3617
3618
|
module.set.direction($subMenu);
|
3618
|
-
transition = module.get.transition($subMenu);
|
3619
|
+
transition = settings.transition.showMethod || module.get.transition($subMenu);
|
3619
3620
|
if( module.is.selection() ) {
|
3620
3621
|
module.set.scrollPosition(module.get.selectedItem(), true);
|
3621
3622
|
}
|
3622
3623
|
if( module.is.hidden($currentMenu) || module.is.animating($currentMenu) ) {
|
3623
|
-
if(transition
|
3624
|
+
if(transition === 'none') {
|
3624
3625
|
start();
|
3625
3626
|
$currentMenu.transition({
|
3626
3627
|
displayType: module.get.displayType()
|
@@ -3633,7 +3634,7 @@ $.fn.dropdown = function(parameters) {
|
|
3633
3634
|
animation : transition + ' in',
|
3634
3635
|
debug : settings.debug,
|
3635
3636
|
verbose : settings.verbose,
|
3636
|
-
duration : settings.duration,
|
3637
|
+
duration : settings.transition.showDuration || settings.duration,
|
3637
3638
|
queue : true,
|
3638
3639
|
onStart : start,
|
3639
3640
|
displayType: module.get.displayType(),
|
@@ -3659,7 +3660,7 @@ $.fn.dropdown = function(parameters) {
|
|
3659
3660
|
}
|
3660
3661
|
module.remove.active();
|
3661
3662
|
},
|
3662
|
-
transition = module.get.transition($subMenu)
|
3663
|
+
transition = settings.transition.hideMethod || module.get.transition($subMenu)
|
3663
3664
|
;
|
3664
3665
|
callback = $.isFunction(callback)
|
3665
3666
|
? callback
|
@@ -3668,7 +3669,7 @@ $.fn.dropdown = function(parameters) {
|
|
3668
3669
|
if( module.is.visible($currentMenu) || module.is.animating($currentMenu) ) {
|
3669
3670
|
module.verbose('Doing menu hide animation', $currentMenu);
|
3670
3671
|
|
3671
|
-
if(transition
|
3672
|
+
if(transition === 'none') {
|
3672
3673
|
start();
|
3673
3674
|
$currentMenu.transition({
|
3674
3675
|
displayType: module.get.displayType()
|
@@ -3679,7 +3680,7 @@ $.fn.dropdown = function(parameters) {
|
|
3679
3680
|
$currentMenu
|
3680
3681
|
.transition({
|
3681
3682
|
animation : transition + ' out',
|
3682
|
-
duration : settings.duration,
|
3683
|
+
duration : settings.transition.hideDuration || settings.duration,
|
3683
3684
|
debug : settings.debug,
|
3684
3685
|
verbose : settings.verbose,
|
3685
3686
|
queue : false,
|
@@ -3985,7 +3986,7 @@ $.fn.dropdown.settings = {
|
|
3985
3986
|
keepOnScreen : true, // Whether dropdown should check whether it is on screen before showing
|
3986
3987
|
|
3987
3988
|
match : 'both', // what to match against with search selection (both, text, or label)
|
3988
|
-
fullTextSearch :
|
3989
|
+
fullTextSearch : 'exact', // search anywhere in value (set to 'exact' to require exact matches)
|
3989
3990
|
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...)
|
3990
3991
|
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)
|
3991
3992
|
|
@@ -3993,7 +3994,7 @@ $.fn.dropdown.settings = {
|
|
3993
3994
|
preserveHTML : true, // preserve html when selecting value
|
3994
3995
|
sortSelect : false, // sort selection on init
|
3995
3996
|
|
3996
|
-
forceSelection :
|
3997
|
+
forceSelection : false, // force a choice on blur with search selection
|
3997
3998
|
|
3998
3999
|
allowAdditions : false, // whether multiple select should allow user added values
|
3999
4000
|
ignoreCase : false, // whether to consider case sensitivity when creating labels
|
@@ -4004,7 +4005,7 @@ $.fn.dropdown.settings = {
|
|
4004
4005
|
useLabels : true, // whether multiple select should filter currently active selections from choices
|
4005
4006
|
delimiter : ',', // when multiselect uses normal <input> the values will be delimited with this character
|
4006
4007
|
|
4007
|
-
showOnFocus :
|
4008
|
+
showOnFocus : false, // show menu on focus
|
4008
4009
|
allowReselection : false, // whether current value should trigger callbacks when reselected
|
4009
4010
|
allowTab : true, // add tabindex to element
|
4010
4011
|
allowCategorySelection : false, // allow elements with sub-menus to be selected
|
@@ -4038,6 +4039,7 @@ $.fn.dropdown.settings = {
|
|
4038
4039
|
onChange : function(value, text, $selected){},
|
4039
4040
|
onAdd : function(value, text, $selected){},
|
4040
4041
|
onRemove : function(value, text, $selected){},
|
4042
|
+
onSearch : function(searchTerm){},
|
4041
4043
|
|
4042
4044
|
onLabelSelect : function($selectedLabels){},
|
4043
4045
|
onLabelCreate : function(value, text) { return $(this); },
|
@@ -4085,19 +4087,21 @@ $.fn.dropdown.settings = {
|
|
4085
4087
|
|
4086
4088
|
// property names for remote query
|
4087
4089
|
fields: {
|
4088
|
-
remoteValues
|
4089
|
-
values
|
4090
|
-
disabled
|
4091
|
-
name
|
4092
|
-
|
4093
|
-
|
4094
|
-
|
4095
|
-
|
4096
|
-
|
4097
|
-
|
4098
|
-
|
4099
|
-
|
4100
|
-
|
4090
|
+
remoteValues : 'results', // grouping for api results
|
4091
|
+
values : 'values', // grouping for all dropdown values
|
4092
|
+
disabled : 'disabled', // whether value should be disabled
|
4093
|
+
name : 'name', // displayed dropdown text
|
4094
|
+
description : 'description', // displayed dropdown description
|
4095
|
+
descriptionVertical : 'descriptionVertical', // whether description should be vertical
|
4096
|
+
value : 'value', // actual dropdown value
|
4097
|
+
text : 'text', // displayed text when selected
|
4098
|
+
type : 'type', // type of dropdown element
|
4099
|
+
image : 'image', // optional image path
|
4100
|
+
imageClass : 'imageClass', // optional individual class for image
|
4101
|
+
icon : 'icon', // optional icon name
|
4102
|
+
iconClass : 'iconClass', // optional individual class for icon (for example to use flag instead)
|
4103
|
+
class : 'class', // optional individual class for item/header
|
4104
|
+
divider : 'divider' // optional divider append for group headers
|
4101
4105
|
},
|
4102
4106
|
|
4103
4107
|
keys : {
|
@@ -4136,37 +4140,40 @@ $.fn.dropdown.settings = {
|
|
4136
4140
|
},
|
4137
4141
|
|
4138
4142
|
className : {
|
4139
|
-
active
|
4140
|
-
addition
|
4141
|
-
animating
|
4142
|
-
|
4143
|
-
|
4144
|
-
|
4145
|
-
|
4146
|
-
|
4147
|
-
|
4148
|
-
|
4149
|
-
|
4150
|
-
|
4151
|
-
|
4152
|
-
|
4153
|
-
|
4154
|
-
|
4155
|
-
|
4156
|
-
|
4157
|
-
|
4158
|
-
|
4159
|
-
|
4160
|
-
|
4161
|
-
|
4162
|
-
|
4163
|
-
|
4164
|
-
|
4165
|
-
|
4166
|
-
|
4167
|
-
|
4168
|
-
|
4169
|
-
|
4143
|
+
active : 'active',
|
4144
|
+
addition : 'addition',
|
4145
|
+
animating : 'animating',
|
4146
|
+
description : 'description',
|
4147
|
+
descriptionVertical : 'vertical',
|
4148
|
+
disabled : 'disabled',
|
4149
|
+
empty : 'empty',
|
4150
|
+
dropdown : 'ui dropdown',
|
4151
|
+
filtered : 'filtered',
|
4152
|
+
hidden : 'hidden transition',
|
4153
|
+
icon : 'icon',
|
4154
|
+
image : 'image',
|
4155
|
+
item : 'item',
|
4156
|
+
label : 'ui label',
|
4157
|
+
loading : 'loading',
|
4158
|
+
menu : 'menu',
|
4159
|
+
message : 'message',
|
4160
|
+
multiple : 'multiple',
|
4161
|
+
placeholder : 'default',
|
4162
|
+
sizer : 'sizer',
|
4163
|
+
search : 'search',
|
4164
|
+
selected : 'selected',
|
4165
|
+
selection : 'selection',
|
4166
|
+
text : 'text',
|
4167
|
+
upward : 'upward',
|
4168
|
+
leftward : 'left',
|
4169
|
+
visible : 'visible',
|
4170
|
+
clearable : 'clearable',
|
4171
|
+
noselection : 'noselection',
|
4172
|
+
delete : 'delete',
|
4173
|
+
header : 'header',
|
4174
|
+
divider : 'divider',
|
4175
|
+
groupIcon : '',
|
4176
|
+
unfilterable : 'unfilterable'
|
4170
4177
|
}
|
4171
4178
|
|
4172
4179
|
};
|
@@ -4232,26 +4239,49 @@ $.fn.dropdown.settings.templates = {
|
|
4232
4239
|
var
|
4233
4240
|
itemType = (option[fields.type])
|
4234
4241
|
? option[fields.type]
|
4235
|
-
: 'item'
|
4242
|
+
: 'item',
|
4243
|
+
isMenu = itemType.indexOf('menu') !== -1
|
4236
4244
|
;
|
4237
4245
|
|
4238
|
-
if( itemType === 'item' ) {
|
4246
|
+
if( itemType === 'item' || isMenu) {
|
4239
4247
|
var
|
4240
4248
|
maybeText = (option[fields.text])
|
4241
4249
|
? ' data-text="' + deQuote(option[fields.text],true) + '"'
|
4242
4250
|
: '',
|
4243
4251
|
maybeDisabled = (option[fields.disabled])
|
4244
4252
|
? className.disabled+' '
|
4245
|
-
: ''
|
4253
|
+
: '',
|
4254
|
+
maybeDescriptionVertical = (option[fields.descriptionVertical])
|
4255
|
+
? className.descriptionVertical+' '
|
4256
|
+
: '',
|
4257
|
+
hasDescription = (escape(option[fields.description] || '', preserveHTML) != '')
|
4246
4258
|
;
|
4247
|
-
html += '<div class="'+ maybeDisabled + (option[fields.class] ? deQuote(option[fields.class]) : className.item)+'" data-value="' + deQuote(option[fields.value],true) + '"' + maybeText + '>';
|
4259
|
+
html += '<div class="'+ maybeDisabled + maybeDescriptionVertical + (option[fields.class] ? deQuote(option[fields.class]) : className.item)+'" data-value="' + deQuote(option[fields.value],true) + '"' + maybeText + '>';
|
4260
|
+
if (isMenu) {
|
4261
|
+
html += '<i class="'+ (itemType.indexOf('left') !== -1 ? 'left' : '') + ' dropdown icon"></i>';
|
4262
|
+
}
|
4248
4263
|
if(option[fields.image]) {
|
4249
4264
|
html += '<img class="'+(option[fields.imageClass] ? deQuote(option[fields.imageClass]) : className.image)+'" src="' + deQuote(option[fields.image]) + '">';
|
4250
4265
|
}
|
4251
4266
|
if(option[fields.icon]) {
|
4252
4267
|
html += '<i class="'+deQuote(option[fields.icon])+' '+(option[fields.iconClass] ? deQuote(option[fields.iconClass]) : className.icon)+'"></i>';
|
4253
4268
|
}
|
4269
|
+
if(hasDescription){
|
4270
|
+
html += '<span class="'+ className.description +'">'+ escape(option[fields.description] || '', preserveHTML) + '</span>';
|
4271
|
+
html += (!isMenu) ? '<span class="'+ className.text + '">' : '';
|
4272
|
+
}
|
4273
|
+
if (isMenu) {
|
4274
|
+
html += '<span class="' + className.text + '">';
|
4275
|
+
}
|
4254
4276
|
html += escape(option[fields.name] || '', preserveHTML);
|
4277
|
+
if (isMenu) {
|
4278
|
+
html += '</span>';
|
4279
|
+
html += '<div class="' + itemType + '">';
|
4280
|
+
html += $.fn.dropdown.settings.templates.menu(option, fields, preserveHTML, className);
|
4281
|
+
html += '</div>';
|
4282
|
+
} else if(hasDescription){
|
4283
|
+
html += '</span>';
|
4284
|
+
}
|
4255
4285
|
html += '</div>';
|
4256
4286
|
} else if (itemType === 'header') {
|
4257
4287
|
var groupName = escape(option[fields.name] || '', preserveHTML),
|