1 | import $ from './jquery';
|
2 | import '../../js-vendor/jquery/plugins/jquery.select2';
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 | var originalSelect2 = $.fn.select2;
|
16 |
|
17 |
|
18 | var auiContainer = 'aui-select2-container';
|
19 | var auiDropdown = 'aui-select2-drop aui-dropdown2';
|
20 | var auiHasAvatar = 'aui-has-avatar';
|
21 |
|
22 | $.fn.auiSelect2 = function (first) {
|
23 | var updatedArgs;
|
24 |
|
25 | if ($.isPlainObject(first)) {
|
26 | var auiOpts = $.extend({}, first);
|
27 | var auiAvatarClass = auiOpts.hasAvatar ? ' ' + auiHasAvatar : '';
|
28 |
|
29 | auiOpts.containerCssClass = auiContainer + auiAvatarClass + (auiOpts.containerCssClass ? ' ' + auiOpts.containerCssClass : '');
|
30 | auiOpts.dropdownCssClass = auiDropdown + auiAvatarClass + (auiOpts.dropdownCssClass ? ' ' + auiOpts.dropdownCssClass : '');
|
31 | updatedArgs = Array.prototype.slice.call(arguments, 1);
|
32 | updatedArgs.unshift(auiOpts);
|
33 | } else if (!arguments.length) {
|
34 | updatedArgs = [{
|
35 | containerCssClass: auiContainer,
|
36 | dropdownCssClass: auiDropdown
|
37 | }];
|
38 | } else {
|
39 | updatedArgs = arguments;
|
40 | }
|
41 |
|
42 | return originalSelect2.apply(this, updatedArgs);
|
43 | };
|