effective_form_inputs 0.7.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +28 -27
- data/app/assets/javascripts/effective_select/select2.js +171 -66
- data/app/assets/stylesheets/effective_select/overrides.scss +9 -0
- data/app/assets/stylesheets/effective_select/select2.css +74 -26
- data/lib/effective_form_inputs/version.rb +1 -1
- metadata +2 -2
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 95f0fe620b21c40e0ac46f0ef1fa5d4f5d2cc540
         | 
| 4 | 
            +
              data.tar.gz: 5422d218ea19c12c505bcaaa4878d34f1ccc99cc
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: aef0cd4cf861b48f2bcad05a144e3db91395c500159dd86758c7356bd848b2dab1de786756c74bd158eafe9cd0effbfc39875b6538c12d7dd8ef47c2fe72c0c5
         | 
| 7 | 
            +
              data.tar.gz: b0d77403bfd7c5c8519155a9103fc3ad8b16475bb2b6754d3286d2e7bd34e32af00dee770363ab92870dfc3102bfc1dbdb87c0c36aebddc0d580991f521196e4
         | 
    
        data/README.md
    CHANGED
    
    | @@ -42,6 +42,34 @@ and add the following to your application.css: | |
| 42 42 |  | 
| 43 43 | 
             
            All of the included form inputs will now be available with no additional installation tasks.
         | 
| 44 44 |  | 
| 45 | 
            +
            ### Options Passing to JavaScript
         | 
| 46 | 
            +
             | 
| 47 | 
            +
            All `:input_js => options` passed to any effective_form_input will be used to initialize the Javascript library
         | 
| 48 | 
            +
             | 
| 49 | 
            +
            For example:
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            ```ruby
         | 
| 52 | 
            +
            = form_for @user do |f|
         | 
| 53 | 
            +
              = f.effective_date_time_picker :updated_at, :input_js => {:format => 'dddd, MMMM Do YYYY', :showTodayButton => true}
         | 
| 54 | 
            +
            ```
         | 
| 55 | 
            +
             | 
| 56 | 
            +
            or
         | 
| 57 | 
            +
             | 
| 58 | 
            +
            ```ruby
         | 
| 59 | 
            +
            = simple_form_for @user do |f|
         | 
| 60 | 
            +
              = f.input :updated_at, :as => :effective_date_time_picker, :input_js => {:format => 'dddd, MMMM Do YYYY', :showTodayButton => true}
         | 
| 61 | 
            +
            ```
         | 
| 62 | 
            +
             | 
| 63 | 
            +
            will result in the following call to the Javascript library:
         | 
| 64 | 
            +
             | 
| 65 | 
            +
            ```coffee
         | 
| 66 | 
            +
            $('input.effective_date_time_picker').datetimepicker
         | 
| 67 | 
            +
              format: 'dddd, MMMM Do YYYY',
         | 
| 68 | 
            +
              showTodayButton: true
         | 
| 69 | 
            +
            ```
         | 
| 70 | 
            +
             | 
| 71 | 
            +
            Any options passed in this way will be used to initialize the underlying javascript libraries.
         | 
| 72 | 
            +
             | 
| 45 73 |  | 
| 46 74 | 
             
            ## Effective Date Time Picker
         | 
| 47 75 |  | 
| @@ -383,33 +411,6 @@ There are no javascript options for this input. | |
| 383 411 | 
             
            This input also installs a rails view helper `price_to_currency` that takes a value like `10000` and displays it as `$100.00`
         | 
| 384 412 |  | 
| 385 413 |  | 
| 386 | 
            -
             | 
| 387 | 
            -
            ## Passing Options to JavaScript Behaviour
         | 
| 388 | 
            -
             | 
| 389 | 
            -
            All `:input_js => options` passed to any effective_form_input will be used to initialize the Javascript library
         | 
| 390 | 
            -
             | 
| 391 | 
            -
            For example:
         | 
| 392 | 
            -
             | 
| 393 | 
            -
            ```ruby
         | 
| 394 | 
            -
            = form_for @user do |f|
         | 
| 395 | 
            -
              = f.effective_date_time_picker :updated_at, :input_js => {:format => 'dddd, MMMM Do YYYY', :showTodayButton => true}
         | 
| 396 | 
            -
            ```
         | 
| 397 | 
            -
             | 
| 398 | 
            -
            or
         | 
| 399 | 
            -
             | 
| 400 | 
            -
            ```ruby
         | 
| 401 | 
            -
            = simple_form_for @user do |f|
         | 
| 402 | 
            -
              = f.input :updated_at, :as => :effective_date_time_picker, :input_js => {:format => 'dddd, MMMM Do YYYY', :showTodayButton => true}
         | 
| 403 | 
            -
            ```
         | 
| 404 | 
            -
             | 
| 405 | 
            -
            will result in the following call to the Javascript library:
         | 
| 406 | 
            -
             | 
| 407 | 
            -
            ```coffee
         | 
| 408 | 
            -
            $('input.effective_date_time_picker').datetimepicker
         | 
| 409 | 
            -
              format: 'dddd, MMMM Do YYYY',
         | 
| 410 | 
            -
              showTodayButton: true
         | 
| 411 | 
            -
            ```
         | 
| 412 | 
            -
             | 
| 413 414 | 
             
            ## License
         | 
| 414 415 |  | 
| 415 416 | 
             
            MIT License.  Copyright [Code and Effect Inc.](http://www.codeandeffect.com/)
         | 
| @@ -1041,7 +1041,7 @@ S2.define('select2/results',[ | |
| 1041 1041 | 
             
                  var data = $highlighted.data('data');
         | 
| 1042 1042 |  | 
| 1043 1043 | 
             
                  if ($highlighted.attr('aria-selected') == 'true') {
         | 
| 1044 | 
            -
                    self.trigger('close');
         | 
| 1044 | 
            +
                    self.trigger('close', {});
         | 
| 1045 1045 | 
             
                  } else {
         | 
| 1046 1046 | 
             
                    self.trigger('select', {
         | 
| 1047 1047 | 
             
                      data: data
         | 
| @@ -1163,7 +1163,7 @@ S2.define('select2/results',[ | |
| 1163 1163 | 
             
                        data: data
         | 
| 1164 1164 | 
             
                      });
         | 
| 1165 1165 | 
             
                    } else {
         | 
| 1166 | 
            -
                      self.trigger('close');
         | 
| 1166 | 
            +
                      self.trigger('close', {});
         | 
| 1167 1167 | 
             
                    }
         | 
| 1168 1168 |  | 
| 1169 1169 | 
             
                    return;
         | 
| @@ -1319,7 +1319,7 @@ S2.define('select2/selection/base',[ | |
| 1319 1319 | 
             
                });
         | 
| 1320 1320 |  | 
| 1321 1321 | 
             
                this.$selection.on('blur', function (evt) {
         | 
| 1322 | 
            -
                  self. | 
| 1322 | 
            +
                  self._handleBlur(evt);
         | 
| 1323 1323 | 
             
                });
         | 
| 1324 1324 |  | 
| 1325 1325 | 
             
                this.$selection.on('keydown', function (evt) {
         | 
| @@ -1366,6 +1366,24 @@ S2.define('select2/selection/base',[ | |
| 1366 1366 | 
             
                });
         | 
| 1367 1367 | 
             
              };
         | 
| 1368 1368 |  | 
| 1369 | 
            +
              BaseSelection.prototype._handleBlur = function (evt) {
         | 
| 1370 | 
            +
                var self = this;
         | 
| 1371 | 
            +
             | 
| 1372 | 
            +
                // This needs to be delayed as the actve element is the body when the tab
         | 
| 1373 | 
            +
                // key is pressed, possibly along with others.
         | 
| 1374 | 
            +
                window.setTimeout(function () {
         | 
| 1375 | 
            +
                  // Don't trigger `blur` if the focus is still in the selection
         | 
| 1376 | 
            +
                  if (
         | 
| 1377 | 
            +
                    (document.activeElement == self.$selection[0]) ||
         | 
| 1378 | 
            +
                    ($.contains(self.$selection[0], document.activeElement))
         | 
| 1379 | 
            +
                  ) {
         | 
| 1380 | 
            +
                    return;
         | 
| 1381 | 
            +
                  }
         | 
| 1382 | 
            +
             | 
| 1383 | 
            +
                  self.trigger('blur', evt);
         | 
| 1384 | 
            +
                }, 1);
         | 
| 1385 | 
            +
              };
         | 
| 1386 | 
            +
             | 
| 1369 1387 | 
             
              BaseSelection.prototype._attachCloseHandler = function (container) {
         | 
| 1370 1388 | 
             
                var self = this;
         | 
| 1371 1389 |  | 
| @@ -1475,11 +1493,11 @@ S2.define('select2/selection/single',[ | |
| 1475 1493 | 
             
                this.$selection.find('.select2-selection__rendered').empty();
         | 
| 1476 1494 | 
             
              };
         | 
| 1477 1495 |  | 
| 1478 | 
            -
              SingleSelection.prototype.display = function (data) {
         | 
| 1496 | 
            +
              SingleSelection.prototype.display = function (data, container) {
         | 
| 1479 1497 | 
             
                var template = this.options.get('templateSelection');
         | 
| 1480 1498 | 
             
                var escapeMarkup = this.options.get('escapeMarkup');
         | 
| 1481 1499 |  | 
| 1482 | 
            -
                return escapeMarkup(template(data));
         | 
| 1500 | 
            +
                return escapeMarkup(template(data, container));
         | 
| 1483 1501 | 
             
              };
         | 
| 1484 1502 |  | 
| 1485 1503 | 
             
              SingleSelection.prototype.selectionContainer = function () {
         | 
| @@ -1494,9 +1512,9 @@ S2.define('select2/selection/single',[ | |
| 1494 1512 |  | 
| 1495 1513 | 
             
                var selection = data[0];
         | 
| 1496 1514 |  | 
| 1497 | 
            -
                var formatted = this.display(selection);
         | 
| 1498 | 
            -
             | 
| 1499 1515 | 
             
                var $rendered = this.$selection.find('.select2-selection__rendered');
         | 
| 1516 | 
            +
                var formatted = this.display(selection, $rendered);
         | 
| 1517 | 
            +
             | 
| 1500 1518 | 
             
                $rendered.empty().append(formatted);
         | 
| 1501 1519 | 
             
                $rendered.prop('title', selection.title || selection.text);
         | 
| 1502 1520 | 
             
              };
         | 
| @@ -1538,29 +1556,37 @@ S2.define('select2/selection/multiple',[ | |
| 1538 1556 | 
             
                  });
         | 
| 1539 1557 | 
             
                });
         | 
| 1540 1558 |  | 
| 1541 | 
            -
                this.$selection.on( | 
| 1559 | 
            +
                this.$selection.on(
         | 
| 1560 | 
            +
                  'click',
         | 
| 1561 | 
            +
                  '.select2-selection__choice__remove',
         | 
| 1542 1562 | 
             
                  function (evt) {
         | 
| 1543 | 
            -
             | 
| 1544 | 
            -
             | 
| 1563 | 
            +
                    // Ignore the event if it is disabled
         | 
| 1564 | 
            +
                    if (self.options.get('disabled')) {
         | 
| 1565 | 
            +
                      return;
         | 
| 1566 | 
            +
                    }
         | 
| 1545 1567 |  | 
| 1546 | 
            -
             | 
| 1568 | 
            +
                    var $remove = $(this);
         | 
| 1569 | 
            +
                    var $selection = $remove.parent();
         | 
| 1547 1570 |  | 
| 1548 | 
            -
             | 
| 1549 | 
            -
             | 
| 1550 | 
            -
                     | 
| 1551 | 
            -
             | 
| 1552 | 
            -
             | 
| 1571 | 
            +
                    var data = $selection.data('data');
         | 
| 1572 | 
            +
             | 
| 1573 | 
            +
                    self.trigger('unselect', {
         | 
| 1574 | 
            +
                      originalEvent: evt,
         | 
| 1575 | 
            +
                      data: data
         | 
| 1576 | 
            +
                    });
         | 
| 1577 | 
            +
                  }
         | 
| 1578 | 
            +
                );
         | 
| 1553 1579 | 
             
              };
         | 
| 1554 1580 |  | 
| 1555 1581 | 
             
              MultipleSelection.prototype.clear = function () {
         | 
| 1556 1582 | 
             
                this.$selection.find('.select2-selection__rendered').empty();
         | 
| 1557 1583 | 
             
              };
         | 
| 1558 1584 |  | 
| 1559 | 
            -
              MultipleSelection.prototype.display = function (data) {
         | 
| 1585 | 
            +
              MultipleSelection.prototype.display = function (data, container) {
         | 
| 1560 1586 | 
             
                var template = this.options.get('templateSelection');
         | 
| 1561 1587 | 
             
                var escapeMarkup = this.options.get('escapeMarkup');
         | 
| 1562 1588 |  | 
| 1563 | 
            -
                return escapeMarkup(template(data));
         | 
| 1589 | 
            +
                return escapeMarkup(template(data, container));
         | 
| 1564 1590 | 
             
              };
         | 
| 1565 1591 |  | 
| 1566 1592 | 
             
              MultipleSelection.prototype.selectionContainer = function () {
         | 
| @@ -1587,8 +1613,8 @@ S2.define('select2/selection/multiple',[ | |
| 1587 1613 | 
             
                for (var d = 0; d < data.length; d++) {
         | 
| 1588 1614 | 
             
                  var selection = data[d];
         | 
| 1589 1615 |  | 
| 1590 | 
            -
                  var formatted = this.display(selection);
         | 
| 1591 1616 | 
             
                  var $selection = this.selectionContainer();
         | 
| 1617 | 
            +
                  var formatted = this.display(selection, $selection);
         | 
| 1592 1618 |  | 
| 1593 1619 | 
             
                  $selection.append(formatted);
         | 
| 1594 1620 | 
             
                  $selection.prop('title', selection.title || selection.text);
         | 
| @@ -1720,7 +1746,7 @@ S2.define('select2/selection/allowClear',[ | |
| 1720 1746 |  | 
| 1721 1747 | 
             
                this.$element.val(this.placeholder.id).trigger('change');
         | 
| 1722 1748 |  | 
| 1723 | 
            -
                this.trigger('toggle');
         | 
| 1749 | 
            +
                this.trigger('toggle', {});
         | 
| 1724 1750 | 
             
              };
         | 
| 1725 1751 |  | 
| 1726 1752 | 
             
              AllowClear.prototype._handleKeyboardClear = function (_, evt, container) {
         | 
| @@ -1777,6 +1803,8 @@ S2.define('select2/selection/search',[ | |
| 1777 1803 |  | 
| 1778 1804 | 
             
                var $rendered = decorated.call(this);
         | 
| 1779 1805 |  | 
| 1806 | 
            +
                this._transferTabIndex();
         | 
| 1807 | 
            +
             | 
| 1780 1808 | 
             
                return $rendered;
         | 
| 1781 1809 | 
             
              };
         | 
| 1782 1810 |  | 
| @@ -1786,32 +1814,34 @@ S2.define('select2/selection/search',[ | |
| 1786 1814 | 
             
                decorated.call(this, container, $container);
         | 
| 1787 1815 |  | 
| 1788 1816 | 
             
                container.on('open', function () {
         | 
| 1789 | 
            -
                  self.$search. | 
| 1790 | 
            -
             | 
| 1791 | 
            -
                  self.$search.focus();
         | 
| 1817 | 
            +
                  self.$search.trigger('focus');
         | 
| 1792 1818 | 
             
                });
         | 
| 1793 1819 |  | 
| 1794 1820 | 
             
                container.on('close', function () {
         | 
| 1795 | 
            -
                  self.$search.attr('tabindex', -1);
         | 
| 1796 | 
            -
             | 
| 1797 1821 | 
             
                  self.$search.val('');
         | 
| 1798 | 
            -
                  self.$search.focus | 
| 1822 | 
            +
                  self.$search.trigger('focus');
         | 
| 1799 1823 | 
             
                });
         | 
| 1800 1824 |  | 
| 1801 1825 | 
             
                container.on('enable', function () {
         | 
| 1802 1826 | 
             
                  self.$search.prop('disabled', false);
         | 
| 1827 | 
            +
             | 
| 1828 | 
            +
                  self._transferTabIndex();
         | 
| 1803 1829 | 
             
                });
         | 
| 1804 1830 |  | 
| 1805 1831 | 
             
                container.on('disable', function () {
         | 
| 1806 1832 | 
             
                  self.$search.prop('disabled', true);
         | 
| 1807 1833 | 
             
                });
         | 
| 1808 1834 |  | 
| 1835 | 
            +
                container.on('focus', function (evt) {
         | 
| 1836 | 
            +
                  self.$search.trigger('focus');
         | 
| 1837 | 
            +
                });
         | 
| 1838 | 
            +
             | 
| 1809 1839 | 
             
                this.$selection.on('focusin', '.select2-search--inline', function (evt) {
         | 
| 1810 1840 | 
             
                  self.trigger('focus', evt);
         | 
| 1811 1841 | 
             
                });
         | 
| 1812 1842 |  | 
| 1813 1843 | 
             
                this.$selection.on('focusout', '.select2-search--inline', function (evt) {
         | 
| 1814 | 
            -
                  self. | 
| 1844 | 
            +
                  self._handleBlur(evt);
         | 
| 1815 1845 | 
             
                });
         | 
| 1816 1846 |  | 
| 1817 1847 | 
             
                this.$selection.on('keydown', '.select2-search--inline', function (evt) {
         | 
| @@ -1840,15 +1870,61 @@ S2.define('select2/selection/search',[ | |
| 1840 1870 | 
             
                // Workaround for browsers which do not support the `input` event
         | 
| 1841 1871 | 
             
                // This will prevent double-triggering of events for browsers which support
         | 
| 1842 1872 | 
             
                // both the `keyup` and `input` events.
         | 
| 1843 | 
            -
                this.$selection.on( | 
| 1844 | 
            -
                   | 
| 1845 | 
            -
                   | 
| 1846 | 
            -
             | 
| 1873 | 
            +
                this.$selection.on(
         | 
| 1874 | 
            +
                  'input.searchcheck',
         | 
| 1875 | 
            +
                  '.select2-search--inline',
         | 
| 1876 | 
            +
                  function (evt) {
         | 
| 1877 | 
            +
                    // Try to detect the IE version should the `documentMode` property that
         | 
| 1878 | 
            +
                    // is stored on the document. This is only implemented in IE and is
         | 
| 1879 | 
            +
                    // slightly cleaner than doing a user agent check.
         | 
| 1880 | 
            +
                    // This property is not available in Edge, but Edge also doesn't have
         | 
| 1881 | 
            +
                    // this bug.
         | 
| 1882 | 
            +
                    var msie = document.documentMode;
         | 
| 1883 | 
            +
             | 
| 1884 | 
            +
                    // IE will trigger the `input` event when a placeholder is used on a
         | 
| 1885 | 
            +
                    // search box. To get around this issue, we are forced to ignore all
         | 
| 1886 | 
            +
                    // `input` events in IE and keep using `keyup`.
         | 
| 1887 | 
            +
                    if (msie && msie <= 11) {
         | 
| 1888 | 
            +
                      self.$selection.off('input.search input.searchcheck');
         | 
| 1889 | 
            +
                      return;
         | 
| 1890 | 
            +
                    }
         | 
| 1847 1891 |  | 
| 1848 | 
            -
             | 
| 1849 | 
            -
                     | 
| 1850 | 
            -
                   | 
| 1851 | 
            -
                 | 
| 1892 | 
            +
                    // Unbind the duplicated `keyup` event
         | 
| 1893 | 
            +
                    self.$selection.off('keyup.search');
         | 
| 1894 | 
            +
                  }
         | 
| 1895 | 
            +
                );
         | 
| 1896 | 
            +
             | 
| 1897 | 
            +
                this.$selection.on(
         | 
| 1898 | 
            +
                  'keyup.search input.search',
         | 
| 1899 | 
            +
                  '.select2-search--inline',
         | 
| 1900 | 
            +
                  function (evt) {
         | 
| 1901 | 
            +
                    var key = evt.which;
         | 
| 1902 | 
            +
             | 
| 1903 | 
            +
                    // We can freely ignore events from modifier keys
         | 
| 1904 | 
            +
                    if (key == KEYS.SHIFT || key == KEYS.CTRL || key == KEYS.ALT) {
         | 
| 1905 | 
            +
                      return;
         | 
| 1906 | 
            +
                    }
         | 
| 1907 | 
            +
             | 
| 1908 | 
            +
                    // Tabbing will be handled during the `keydown` phase
         | 
| 1909 | 
            +
                    if (key == KEYS.TAB) {
         | 
| 1910 | 
            +
                      return;
         | 
| 1911 | 
            +
                    }
         | 
| 1912 | 
            +
             | 
| 1913 | 
            +
                    self.handleSearch(evt);
         | 
| 1914 | 
            +
                  }
         | 
| 1915 | 
            +
                );
         | 
| 1916 | 
            +
              };
         | 
| 1917 | 
            +
             | 
| 1918 | 
            +
              /**
         | 
| 1919 | 
            +
               * This method will transfer the tabindex attribute from the rendered
         | 
| 1920 | 
            +
               * selection to the search box. This allows for the search box to be used as
         | 
| 1921 | 
            +
               * the primary focus instead of the selection container.
         | 
| 1922 | 
            +
               *
         | 
| 1923 | 
            +
               * @private
         | 
| 1924 | 
            +
               */
         | 
| 1925 | 
            +
              Search.prototype._transferTabIndex = function (decorated) {
         | 
| 1926 | 
            +
                this.$search.attr('tabindex', this.$selection.attr('tabindex'));
         | 
| 1927 | 
            +
                this.$selection.attr('tabindex', '-1');
         | 
| 1852 1928 | 
             
              };
         | 
| 1853 1929 |  | 
| 1854 1930 | 
             
              Search.prototype.createPlaceholder = function (decorated, placeholder) {
         | 
| @@ -1856,6 +1932,8 @@ S2.define('select2/selection/search',[ | |
| 1856 1932 | 
             
              };
         | 
| 1857 1933 |  | 
| 1858 1934 | 
             
              Search.prototype.update = function (decorated, data) {
         | 
| 1935 | 
            +
                var searchHadFocus = this.$search[0] == document.activeElement;
         | 
| 1936 | 
            +
             | 
| 1859 1937 | 
             
                this.$search.attr('placeholder', '');
         | 
| 1860 1938 |  | 
| 1861 1939 | 
             
                decorated.call(this, data);
         | 
| @@ -1864,6 +1942,9 @@ S2.define('select2/selection/search',[ | |
| 1864 1942 | 
             
                               .append(this.$searchContainer);
         | 
| 1865 1943 |  | 
| 1866 1944 | 
             
                this.resizeSearch();
         | 
| 1945 | 
            +
                if (searchHadFocus) {
         | 
| 1946 | 
            +
                  this.$search.focus();
         | 
| 1947 | 
            +
                }
         | 
| 1867 1948 | 
             
              };
         | 
| 1868 1949 |  | 
| 1869 1950 | 
             
              Search.prototype.handleSearch = function () {
         | 
| @@ -1885,7 +1966,7 @@ S2.define('select2/selection/search',[ | |
| 1885 1966 | 
             
                  data: item
         | 
| 1886 1967 | 
             
                });
         | 
| 1887 1968 |  | 
| 1888 | 
            -
                this.trigger('open');
         | 
| 1969 | 
            +
                this.trigger('open', {});
         | 
| 1889 1970 |  | 
| 1890 1971 | 
             
                this.$search.val(item.text + ' ');
         | 
| 1891 1972 | 
             
              };
         | 
| @@ -3223,7 +3304,7 @@ S2.define('select2/data/array',[ | |
| 3223 3304 | 
             
                    var existingData = this.item($existingOption);
         | 
| 3224 3305 | 
             
                    var newData = $.extend(true, {}, existingData, item);
         | 
| 3225 3306 |  | 
| 3226 | 
            -
                    var $newOption = this.option( | 
| 3307 | 
            +
                    var $newOption = this.option(newData);
         | 
| 3227 3308 |  | 
| 3228 3309 | 
             
                    $existingOption.replaceWith($newOption);
         | 
| 3229 3310 |  | 
| @@ -3259,7 +3340,7 @@ S2.define('select2/data/ajax',[ | |
| 3259 3340 | 
             
                  this.processResults = this.ajaxOptions.processResults;
         | 
| 3260 3341 | 
             
                }
         | 
| 3261 3342 |  | 
| 3262 | 
            -
                 | 
| 3343 | 
            +
                AjaxAdapter.__super__.constructor.call(this, $element, options);
         | 
| 3263 3344 | 
             
              }
         | 
| 3264 3345 |  | 
| 3265 3346 | 
             
              Utils.Extend(AjaxAdapter, ArrayAdapter);
         | 
| @@ -3493,7 +3574,9 @@ S2.define('select2/data/tokenizer',[ | |
| 3493 3574 | 
             
                var self = this;
         | 
| 3494 3575 |  | 
| 3495 3576 | 
             
                function select (data) {
         | 
| 3496 | 
            -
                  self.select | 
| 3577 | 
            +
                  self.trigger('select', {
         | 
| 3578 | 
            +
                    data: data
         | 
| 3579 | 
            +
                  });
         | 
| 3497 3580 | 
             
                }
         | 
| 3498 3581 |  | 
| 3499 3582 | 
             
                params.term = params.term || '';
         | 
| @@ -3541,6 +3624,11 @@ S2.define('select2/data/tokenizer',[ | |
| 3541 3624 |  | 
| 3542 3625 | 
             
                  var data = createTag(partParams);
         | 
| 3543 3626 |  | 
| 3627 | 
            +
                  if (data == null) {
         | 
| 3628 | 
            +
                    i++;
         | 
| 3629 | 
            +
                    continue;
         | 
| 3630 | 
            +
                  }
         | 
| 3631 | 
            +
             | 
| 3544 3632 | 
             
                  callback(data);
         | 
| 3545 3633 |  | 
| 3546 3634 | 
             
                  // Reset the term to not include the tokenized portion
         | 
| @@ -3963,6 +4051,12 @@ S2.define('select2/dropdown/attachBody',[ | |
| 3963 4051 | 
             
                });
         | 
| 3964 4052 | 
             
              };
         | 
| 3965 4053 |  | 
| 4054 | 
            +
              AttachBody.prototype.destroy = function (decorated) {
         | 
| 4055 | 
            +
                decorated.call(this);
         | 
| 4056 | 
            +
             | 
| 4057 | 
            +
                this.$dropdownContainer.remove();
         | 
| 4058 | 
            +
              };
         | 
| 4059 | 
            +
             | 
| 3966 4060 | 
             
              AttachBody.prototype.position = function (decorated, $dropdown, $container) {
         | 
| 3967 4061 | 
             
                // Clone all of the container classes
         | 
| 3968 4062 | 
             
                $dropdown.attr('class', $container.attr('class'));
         | 
| @@ -4096,8 +4190,6 @@ S2.define('select2/dropdown/attachBody',[ | |
| 4096 4190 | 
             
              };
         | 
| 4097 4191 |  | 
| 4098 4192 | 
             
              AttachBody.prototype._resizeDropdown = function () {
         | 
| 4099 | 
            -
                this.$dropdownContainer.width();
         | 
| 4100 | 
            -
             | 
| 4101 4193 | 
             
                var css = {
         | 
| 4102 4194 | 
             
                  width: this.$container.outerWidth(false) + 'px'
         | 
| 4103 4195 | 
             
                };
         | 
| @@ -4217,7 +4309,7 @@ S2.define('select2/dropdown/closeOnSelect',[ | |
| 4217 4309 | 
             
                  return;
         | 
| 4218 4310 | 
             
                }
         | 
| 4219 4311 |  | 
| 4220 | 
            -
                this.trigger('close');
         | 
| 4312 | 
            +
                this.trigger('close', {});
         | 
| 4221 4313 | 
             
              };
         | 
| 4222 4314 |  | 
| 4223 4315 | 
             
              return CloseOnSelect;
         | 
| @@ -4868,8 +4960,8 @@ S2.define('select2/core',[ | |
| 4868 4960 |  | 
| 4869 4961 | 
             
                // Hide the original select
         | 
| 4870 4962 | 
             
                $element.addClass('select2-hidden-accessible');
         | 
| 4871 | 
            -
             | 
| 4872 | 
            -
             | 
| 4963 | 
            +
                $element.attr('aria-hidden', 'true');
         | 
| 4964 | 
            +
             | 
| 4873 4965 | 
             
                // Synchronize any monitored attributes
         | 
| 4874 4966 | 
             
                this._syncAttributes();
         | 
| 4875 4967 |  | 
| @@ -5004,12 +5096,16 @@ S2.define('select2/core',[ | |
| 5004 5096 |  | 
| 5005 5097 | 
             
              Select2.prototype._registerSelectionEvents = function () {
         | 
| 5006 5098 | 
             
                var self = this;
         | 
| 5007 | 
            -
                var nonRelayEvents = ['toggle'];
         | 
| 5099 | 
            +
                var nonRelayEvents = ['toggle', 'focus'];
         | 
| 5008 5100 |  | 
| 5009 5101 | 
             
                this.selection.on('toggle', function () {
         | 
| 5010 5102 | 
             
                  self.toggleDropdown();
         | 
| 5011 5103 | 
             
                });
         | 
| 5012 5104 |  | 
| 5105 | 
            +
                this.selection.on('focus', function (params) {
         | 
| 5106 | 
            +
                  self.focus(params);
         | 
| 5107 | 
            +
                });
         | 
| 5108 | 
            +
             | 
| 5013 5109 | 
             
                this.selection.on('*', function (name, params) {
         | 
| 5014 5110 | 
             
                  if ($.inArray(name, nonRelayEvents) !== -1) {
         | 
| 5015 5111 | 
             
                    return;
         | 
| @@ -5054,17 +5150,13 @@ S2.define('select2/core',[ | |
| 5054 5150 | 
             
                  self.$container.addClass('select2-container--disabled');
         | 
| 5055 5151 | 
             
                });
         | 
| 5056 5152 |  | 
| 5057 | 
            -
                this.on('focus', function () {
         | 
| 5058 | 
            -
                  self.$container.addClass('select2-container--focus');
         | 
| 5059 | 
            -
                });
         | 
| 5060 | 
            -
             | 
| 5061 5153 | 
             
                this.on('blur', function () {
         | 
| 5062 5154 | 
             
                  self.$container.removeClass('select2-container--focus');
         | 
| 5063 5155 | 
             
                });
         | 
| 5064 5156 |  | 
| 5065 5157 | 
             
                this.on('query', function (params) {
         | 
| 5066 5158 | 
             
                  if (!self.isOpen()) {
         | 
| 5067 | 
            -
                    self.trigger('open');
         | 
| 5159 | 
            +
                    self.trigger('open', {});
         | 
| 5068 5160 | 
             
                  }
         | 
| 5069 5161 |  | 
| 5070 5162 | 
             
                  this.dataAdapter.query(params, function (data) {
         | 
| @@ -5088,30 +5180,31 @@ S2.define('select2/core',[ | |
| 5088 5180 | 
             
                  var key = evt.which;
         | 
| 5089 5181 |  | 
| 5090 5182 | 
             
                  if (self.isOpen()) {
         | 
| 5091 | 
            -
                    if (key === KEYS. | 
| 5092 | 
            -
             | 
| 5183 | 
            +
                    if (key === KEYS.ESC || key === KEYS.TAB ||
         | 
| 5184 | 
            +
                        (key === KEYS.UP && evt.altKey)) {
         | 
| 5185 | 
            +
                      self.close();
         | 
| 5186 | 
            +
             | 
| 5187 | 
            +
                      evt.preventDefault();
         | 
| 5188 | 
            +
                    } else if (key === KEYS.ENTER) {
         | 
| 5189 | 
            +
                      self.trigger('results:select', {});
         | 
| 5093 5190 |  | 
| 5094 5191 | 
             
                      evt.preventDefault();
         | 
| 5095 5192 | 
             
                    } else if ((key === KEYS.SPACE && evt.ctrlKey)) {
         | 
| 5096 | 
            -
                      self.trigger('results:toggle');
         | 
| 5193 | 
            +
                      self.trigger('results:toggle', {});
         | 
| 5097 5194 |  | 
| 5098 5195 | 
             
                      evt.preventDefault();
         | 
| 5099 5196 | 
             
                    } else if (key === KEYS.UP) {
         | 
| 5100 | 
            -
                      self.trigger('results:previous');
         | 
| 5197 | 
            +
                      self.trigger('results:previous', {});
         | 
| 5101 5198 |  | 
| 5102 5199 | 
             
                      evt.preventDefault();
         | 
| 5103 5200 | 
             
                    } else if (key === KEYS.DOWN) {
         | 
| 5104 | 
            -
                      self.trigger('results:next');
         | 
| 5105 | 
            -
             | 
| 5106 | 
            -
                      evt.preventDefault();
         | 
| 5107 | 
            -
                    } else if (key === KEYS.ESC || key === KEYS.TAB) {
         | 
| 5108 | 
            -
                      self.close();
         | 
| 5201 | 
            +
                      self.trigger('results:next', {});
         | 
| 5109 5202 |  | 
| 5110 5203 | 
             
                      evt.preventDefault();
         | 
| 5111 5204 | 
             
                    }
         | 
| 5112 5205 | 
             
                  } else {
         | 
| 5113 5206 | 
             
                    if (key === KEYS.ENTER || key === KEYS.SPACE ||
         | 
| 5114 | 
            -
                        ( | 
| 5207 | 
            +
                        (key === KEYS.DOWN && evt.altKey)) {
         | 
| 5115 5208 | 
             
                      self.open();
         | 
| 5116 5209 |  | 
| 5117 5210 | 
             
                      evt.preventDefault();
         | 
| @@ -5128,9 +5221,9 @@ S2.define('select2/core',[ | |
| 5128 5221 | 
             
                    this.close();
         | 
| 5129 5222 | 
             
                  }
         | 
| 5130 5223 |  | 
| 5131 | 
            -
                  this.trigger('disable');
         | 
| 5224 | 
            +
                  this.trigger('disable', {});
         | 
| 5132 5225 | 
             
                } else {
         | 
| 5133 | 
            -
                  this.trigger('enable');
         | 
| 5226 | 
            +
                  this.trigger('enable', {});
         | 
| 5134 5227 | 
             
                }
         | 
| 5135 5228 | 
             
              };
         | 
| 5136 5229 |  | 
| @@ -5185,8 +5278,6 @@ S2.define('select2/core',[ | |
| 5185 5278 | 
             
                }
         | 
| 5186 5279 |  | 
| 5187 5280 | 
             
                this.trigger('query', {});
         | 
| 5188 | 
            -
             | 
| 5189 | 
            -
                this.trigger('open');
         | 
| 5190 5281 | 
             
              };
         | 
| 5191 5282 |  | 
| 5192 5283 | 
             
              Select2.prototype.close = function () {
         | 
| @@ -5194,13 +5285,27 @@ S2.define('select2/core',[ | |
| 5194 5285 | 
             
                  return;
         | 
| 5195 5286 | 
             
                }
         | 
| 5196 5287 |  | 
| 5197 | 
            -
                this.trigger('close');
         | 
| 5288 | 
            +
                this.trigger('close', {});
         | 
| 5198 5289 | 
             
              };
         | 
| 5199 5290 |  | 
| 5200 5291 | 
             
              Select2.prototype.isOpen = function () {
         | 
| 5201 5292 | 
             
                return this.$container.hasClass('select2-container--open');
         | 
| 5202 5293 | 
             
              };
         | 
| 5203 5294 |  | 
| 5295 | 
            +
              Select2.prototype.hasFocus = function () {
         | 
| 5296 | 
            +
                return this.$container.hasClass('select2-container--focus');
         | 
| 5297 | 
            +
              };
         | 
| 5298 | 
            +
             | 
| 5299 | 
            +
              Select2.prototype.focus = function (data) {
         | 
| 5300 | 
            +
                // No need to re-trigger focus events if we are already focused
         | 
| 5301 | 
            +
                if (this.hasFocus()) {
         | 
| 5302 | 
            +
                  return;
         | 
| 5303 | 
            +
                }
         | 
| 5304 | 
            +
             | 
| 5305 | 
            +
                this.$container.addClass('select2-container--focus');
         | 
| 5306 | 
            +
                this.trigger('focus', {});
         | 
| 5307 | 
            +
              };
         | 
| 5308 | 
            +
             | 
| 5204 5309 | 
             
              Select2.prototype.enable = function (args) {
         | 
| 5205 5310 | 
             
                if (this.options.get('debug') && window.console && console.warn) {
         | 
| 5206 5311 | 
             
                  console.warn(
         | 
| @@ -5281,7 +5386,7 @@ S2.define('select2/core',[ | |
| 5281 5386 | 
             
                this.$element.attr('tabindex', this.$element.data('old-tabindex'));
         | 
| 5282 5387 |  | 
| 5283 5388 | 
             
                this.$element.removeClass('select2-hidden-accessible');
         | 
| 5284 | 
            -
             | 
| 5389 | 
            +
                this.$element.attr('aria-hidden', 'false');
         | 
| 5285 5390 | 
             
                this.$element.removeData('select2');
         | 
| 5286 5391 |  | 
| 5287 5392 | 
             
                this.dataAdapter.destroy();
         | 
| @@ -10,3 +10,12 @@ | |
| 10 10 | 
             
              right: 10px;
         | 
| 11 11 | 
             
              margin-top: -1px;
         | 
| 12 12 | 
             
            }
         | 
| 13 | 
            +
             | 
| 14 | 
            +
            .select2-container--focus:not(.select2-container--open) {
         | 
| 15 | 
            +
              box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 8px rgba(102, 175, 233, 0.6);
         | 
| 16 | 
            +
              outline: 0 none;
         | 
| 17 | 
            +
            }
         | 
| 18 | 
            +
             | 
| 19 | 
            +
            .select2-container--focus > .selection > .select2-selection {
         | 
| 20 | 
            +
              border: 1px solid #9cd5fe !important;
         | 
| 21 | 
            +
            }
         | 
| @@ -40,7 +40,8 @@ | |
| 40 40 | 
             
                  box-sizing: border-box;
         | 
| 41 41 | 
             
                  border: none;
         | 
| 42 42 | 
             
                  font-size: 100%;
         | 
| 43 | 
            -
                  margin-top: 5px; | 
| 43 | 
            +
                  margin-top: 5px;
         | 
| 44 | 
            +
                  padding: 0; }
         | 
| 44 45 | 
             
                  .select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
         | 
| 45 46 | 
             
                    -webkit-appearance: none; }
         | 
| 46 47 |  | 
| @@ -113,14 +114,14 @@ | |
| 113 114 | 
             
              filter: alpha(opacity=0); }
         | 
| 114 115 |  | 
| 115 116 | 
             
            .select2-hidden-accessible {
         | 
| 116 | 
            -
              border: 0;
         | 
| 117 | 
            -
              clip: rect(0 0 0 0);
         | 
| 118 | 
            -
              height: 1px;
         | 
| 119 | 
            -
              margin: -1px;
         | 
| 120 | 
            -
              overflow: hidden;
         | 
| 121 | 
            -
              padding: 0;
         | 
| 122 | 
            -
              position: absolute;
         | 
| 123 | 
            -
              width: 1px; }
         | 
| 117 | 
            +
              border: 0 !important;
         | 
| 118 | 
            +
              clip: rect(0 0 0 0) !important;
         | 
| 119 | 
            +
              height: 1px !important;
         | 
| 120 | 
            +
              margin: -1px !important;
         | 
| 121 | 
            +
              overflow: hidden !important;
         | 
| 122 | 
            +
              padding: 0 !important;
         | 
| 123 | 
            +
              position: absolute !important;
         | 
| 124 | 
            +
              width: 1px !important; }
         | 
| 124 125 |  | 
| 125 126 | 
             
            .select2-container--default .select2-selection--single {
         | 
| 126 127 | 
             
              background-color: #fff;
         | 
| @@ -152,19 +153,24 @@ | |
| 152 153 | 
             
                  position: absolute;
         | 
| 153 154 | 
             
                  top: 50%;
         | 
| 154 155 | 
             
                  width: 0; }
         | 
| 156 | 
            +
             | 
| 155 157 | 
             
            .select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
         | 
| 156 158 | 
             
              float: left; }
         | 
| 159 | 
            +
             | 
| 157 160 | 
             
            .select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
         | 
| 158 161 | 
             
              left: 1px;
         | 
| 159 162 | 
             
              right: auto; }
         | 
| 163 | 
            +
             | 
| 160 164 | 
             
            .select2-container--default.select2-container--disabled .select2-selection--single {
         | 
| 161 165 | 
             
              background-color: #eee;
         | 
| 162 166 | 
             
              cursor: default; }
         | 
| 163 167 | 
             
              .select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
         | 
| 164 168 | 
             
                display: none; }
         | 
| 169 | 
            +
             | 
| 165 170 | 
             
            .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
         | 
| 166 171 | 
             
              border-color: transparent transparent #888 transparent;
         | 
| 167 172 | 
             
              border-width: 0 4px 5px 4px; }
         | 
| 173 | 
            +
             | 
| 168 174 | 
             
            .select2-container--default .select2-selection--multiple {
         | 
| 169 175 | 
             
              background-color: white;
         | 
| 170 176 | 
             
              border: 1px solid #aaa;
         | 
| @@ -203,43 +209,59 @@ | |
| 203 209 | 
             
                margin-right: 2px; }
         | 
| 204 210 | 
             
                .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
         | 
| 205 211 | 
             
                  color: #333; }
         | 
| 206 | 
            -
             | 
| 212 | 
            +
             | 
| 213 | 
            +
            .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline {
         | 
| 207 214 | 
             
              float: right; }
         | 
| 215 | 
            +
             | 
| 208 216 | 
             
            .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
         | 
| 209 217 | 
             
              margin-left: 5px;
         | 
| 210 218 | 
             
              margin-right: auto; }
         | 
| 219 | 
            +
             | 
| 211 220 | 
             
            .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
         | 
| 212 221 | 
             
              margin-left: 2px;
         | 
| 213 222 | 
             
              margin-right: auto; }
         | 
| 223 | 
            +
             | 
| 214 224 | 
             
            .select2-container--default.select2-container--focus .select2-selection--multiple {
         | 
| 215 225 | 
             
              border: solid black 1px;
         | 
| 216 226 | 
             
              outline: 0; }
         | 
| 227 | 
            +
             | 
| 217 228 | 
             
            .select2-container--default.select2-container--disabled .select2-selection--multiple {
         | 
| 218 229 | 
             
              background-color: #eee;
         | 
| 219 230 | 
             
              cursor: default; }
         | 
| 231 | 
            +
             | 
| 220 232 | 
             
            .select2-container--default.select2-container--disabled .select2-selection__choice__remove {
         | 
| 221 233 | 
             
              display: none; }
         | 
| 234 | 
            +
             | 
| 222 235 | 
             
            .select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
         | 
| 223 236 | 
             
              border-top-left-radius: 0;
         | 
| 224 237 | 
             
              border-top-right-radius: 0; }
         | 
| 238 | 
            +
             | 
| 225 239 | 
             
            .select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
         | 
| 226 240 | 
             
              border-bottom-left-radius: 0;
         | 
| 227 241 | 
             
              border-bottom-right-radius: 0; }
         | 
| 242 | 
            +
             | 
| 228 243 | 
             
            .select2-container--default .select2-search--dropdown .select2-search__field {
         | 
| 229 244 | 
             
              border: 1px solid #aaa; }
         | 
| 245 | 
            +
             | 
| 230 246 | 
             
            .select2-container--default .select2-search--inline .select2-search__field {
         | 
| 231 247 | 
             
              background: transparent;
         | 
| 232 248 | 
             
              border: none;
         | 
| 233 | 
            -
              outline: 0; | 
| 249 | 
            +
              outline: 0;
         | 
| 250 | 
            +
              box-shadow: none; }
         | 
| 251 | 
            +
             | 
| 234 252 | 
             
            .select2-container--default .select2-results > .select2-results__options {
         | 
| 235 253 | 
             
              max-height: 200px;
         | 
| 236 254 | 
             
              overflow-y: auto; }
         | 
| 255 | 
            +
             | 
| 237 256 | 
             
            .select2-container--default .select2-results__option[role=group] {
         | 
| 238 257 | 
             
              padding: 0; }
         | 
| 258 | 
            +
             | 
| 239 259 | 
             
            .select2-container--default .select2-results__option[aria-disabled=true] {
         | 
| 240 260 | 
             
              color: #999; }
         | 
| 261 | 
            +
             | 
| 241 262 | 
             
            .select2-container--default .select2-results__option[aria-selected=true] {
         | 
| 242 263 | 
             
              background-color: #ddd; }
         | 
| 264 | 
            +
             | 
| 243 265 | 
             
            .select2-container--default .select2-results__option .select2-results__option {
         | 
| 244 266 | 
             
              padding-left: 1em; }
         | 
| 245 267 | 
             
              .select2-container--default .select2-results__option .select2-results__option .select2-results__group {
         | 
| @@ -259,24 +281,26 @@ | |
| 259 281 | 
             
                      .select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
         | 
| 260 282 | 
             
                        margin-left: -5em;
         | 
| 261 283 | 
             
                        padding-left: 6em; }
         | 
| 284 | 
            +
             | 
| 262 285 | 
             
            .select2-container--default .select2-results__option--highlighted[aria-selected] {
         | 
| 263 286 | 
             
              background-color: #5897fb;
         | 
| 264 287 | 
             
              color: white; }
         | 
| 288 | 
            +
             | 
| 265 289 | 
             
            .select2-container--default .select2-results__group {
         | 
| 266 290 | 
             
              cursor: default;
         | 
| 267 291 | 
             
              display: block;
         | 
| 268 292 | 
             
              padding: 6px; }
         | 
| 269 293 |  | 
| 270 294 | 
             
            .select2-container--classic .select2-selection--single {
         | 
| 271 | 
            -
              background-color: # | 
| 295 | 
            +
              background-color: #f7f7f7;
         | 
| 272 296 | 
             
              border: 1px solid #aaa;
         | 
| 273 297 | 
             
              border-radius: 4px;
         | 
| 274 298 | 
             
              outline: 0;
         | 
| 275 | 
            -
              background-image: -webkit-linear-gradient(top,  | 
| 276 | 
            -
              background-image: -o-linear-gradient(top,  | 
| 277 | 
            -
              background-image: linear-gradient(to bottom,  | 
| 299 | 
            +
              background-image: -webkit-linear-gradient(top, white 50%, #eeeeee 100%);
         | 
| 300 | 
            +
              background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
         | 
| 301 | 
            +
              background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
         | 
| 278 302 | 
             
              background-repeat: repeat-x;
         | 
| 279 | 
            -
              filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='# | 
| 303 | 
            +
              filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }
         | 
| 280 304 | 
             
              .select2-container--classic .select2-selection--single:focus {
         | 
| 281 305 | 
             
                border: 1px solid #5897fb; }
         | 
| 282 306 | 
             
              .select2-container--classic .select2-selection--single .select2-selection__rendered {
         | 
| @@ -304,7 +328,7 @@ | |
| 304 328 | 
             
                background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
         | 
| 305 329 | 
             
                background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
         | 
| 306 330 | 
             
                background-repeat: repeat-x;
         | 
| 307 | 
            -
                filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='# | 
| 331 | 
            +
                filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0); }
         | 
| 308 332 | 
             
                .select2-container--classic .select2-selection--single .select2-selection__arrow b {
         | 
| 309 333 | 
             
                  border-color: #888 transparent transparent transparent;
         | 
| 310 334 | 
             
                  border-style: solid;
         | 
| @@ -316,8 +340,10 @@ | |
| 316 340 | 
             
                  position: absolute;
         | 
| 317 341 | 
             
                  top: 50%;
         | 
| 318 342 | 
             
                  width: 0; }
         | 
| 343 | 
            +
             | 
| 319 344 | 
             
            .select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
         | 
| 320 345 | 
             
              float: left; }
         | 
| 346 | 
            +
             | 
| 321 347 | 
             
            .select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
         | 
| 322 348 | 
             
              border: none;
         | 
| 323 349 | 
             
              border-right: 1px solid #aaa;
         | 
| @@ -326,6 +352,7 @@ | |
| 326 352 | 
             
              border-bottom-left-radius: 4px;
         | 
| 327 353 | 
             
              left: 1px;
         | 
| 328 354 | 
             
              right: auto; }
         | 
| 355 | 
            +
             | 
| 329 356 | 
             
            .select2-container--classic.select2-container--open .select2-selection--single {
         | 
| 330 357 | 
             
              border: 1px solid #5897fb; }
         | 
| 331 358 | 
             
              .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
         | 
| @@ -334,24 +361,27 @@ | |
| 334 361 | 
             
                .select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
         | 
| 335 362 | 
             
                  border-color: transparent transparent #888 transparent;
         | 
| 336 363 | 
             
                  border-width: 0 4px 5px 4px; }
         | 
| 364 | 
            +
             | 
| 337 365 | 
             
            .select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
         | 
| 338 366 | 
             
              border-top: none;
         | 
| 339 367 | 
             
              border-top-left-radius: 0;
         | 
| 340 368 | 
             
              border-top-right-radius: 0;
         | 
| 341 | 
            -
              background-image: -webkit-linear-gradient(top,  | 
| 342 | 
            -
              background-image: -o-linear-gradient(top,  | 
| 343 | 
            -
              background-image: linear-gradient(to bottom,  | 
| 369 | 
            +
              background-image: -webkit-linear-gradient(top, white 0%, #eeeeee 50%);
         | 
| 370 | 
            +
              background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
         | 
| 371 | 
            +
              background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
         | 
| 344 372 | 
             
              background-repeat: repeat-x;
         | 
| 345 | 
            -
              filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='# | 
| 373 | 
            +
              filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0); }
         | 
| 374 | 
            +
             | 
| 346 375 | 
             
            .select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
         | 
| 347 376 | 
             
              border-bottom: none;
         | 
| 348 377 | 
             
              border-bottom-left-radius: 0;
         | 
| 349 378 | 
             
              border-bottom-right-radius: 0;
         | 
| 350 | 
            -
              background-image: -webkit-linear-gradient(top, #eeeeee 50%,  | 
| 351 | 
            -
              background-image: -o-linear-gradient(top, #eeeeee 50%,  | 
| 352 | 
            -
              background-image: linear-gradient(to bottom, #eeeeee 50%,  | 
| 379 | 
            +
              background-image: -webkit-linear-gradient(top, #eeeeee 50%, white 100%);
         | 
| 380 | 
            +
              background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);
         | 
| 381 | 
            +
              background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
         | 
| 353 382 | 
             
              background-repeat: repeat-x;
         | 
| 354 | 
            -
              filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='# | 
| 383 | 
            +
              filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0); }
         | 
| 384 | 
            +
             | 
| 355 385 | 
             
            .select2-container--classic .select2-selection--multiple {
         | 
| 356 386 | 
             
              background-color: white;
         | 
| 357 387 | 
             
              border: 1px solid #aaa;
         | 
| @@ -383,49 +413,67 @@ | |
| 383 413 | 
             
                margin-right: 2px; }
         | 
| 384 414 | 
             
                .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
         | 
| 385 415 | 
             
                  color: #555; }
         | 
| 416 | 
            +
             | 
| 386 417 | 
             
            .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
         | 
| 387 418 | 
             
              float: right; }
         | 
| 419 | 
            +
             | 
| 388 420 | 
             
            .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
         | 
| 389 421 | 
             
              margin-left: 5px;
         | 
| 390 422 | 
             
              margin-right: auto; }
         | 
| 423 | 
            +
             | 
| 391 424 | 
             
            .select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
         | 
| 392 425 | 
             
              margin-left: 2px;
         | 
| 393 426 | 
             
              margin-right: auto; }
         | 
| 427 | 
            +
             | 
| 394 428 | 
             
            .select2-container--classic.select2-container--open .select2-selection--multiple {
         | 
| 395 429 | 
             
              border: 1px solid #5897fb; }
         | 
| 430 | 
            +
             | 
| 396 431 | 
             
            .select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
         | 
| 397 432 | 
             
              border-top: none;
         | 
| 398 433 | 
             
              border-top-left-radius: 0;
         | 
| 399 434 | 
             
              border-top-right-radius: 0; }
         | 
| 435 | 
            +
             | 
| 400 436 | 
             
            .select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
         | 
| 401 437 | 
             
              border-bottom: none;
         | 
| 402 438 | 
             
              border-bottom-left-radius: 0;
         | 
| 403 439 | 
             
              border-bottom-right-radius: 0; }
         | 
| 440 | 
            +
             | 
| 404 441 | 
             
            .select2-container--classic .select2-search--dropdown .select2-search__field {
         | 
| 405 442 | 
             
              border: 1px solid #aaa;
         | 
| 406 443 | 
             
              outline: 0; }
         | 
| 444 | 
            +
             | 
| 407 445 | 
             
            .select2-container--classic .select2-search--inline .select2-search__field {
         | 
| 408 | 
            -
              outline: 0; | 
| 446 | 
            +
              outline: 0;
         | 
| 447 | 
            +
              box-shadow: none; }
         | 
| 448 | 
            +
             | 
| 409 449 | 
             
            .select2-container--classic .select2-dropdown {
         | 
| 410 450 | 
             
              background-color: white;
         | 
| 411 451 | 
             
              border: 1px solid transparent; }
         | 
| 452 | 
            +
             | 
| 412 453 | 
             
            .select2-container--classic .select2-dropdown--above {
         | 
| 413 454 | 
             
              border-bottom: none; }
         | 
| 455 | 
            +
             | 
| 414 456 | 
             
            .select2-container--classic .select2-dropdown--below {
         | 
| 415 457 | 
             
              border-top: none; }
         | 
| 458 | 
            +
             | 
| 416 459 | 
             
            .select2-container--classic .select2-results > .select2-results__options {
         | 
| 417 460 | 
             
              max-height: 200px;
         | 
| 418 461 | 
             
              overflow-y: auto; }
         | 
| 462 | 
            +
             | 
| 419 463 | 
             
            .select2-container--classic .select2-results__option[role=group] {
         | 
| 420 464 | 
             
              padding: 0; }
         | 
| 465 | 
            +
             | 
| 421 466 | 
             
            .select2-container--classic .select2-results__option[aria-disabled=true] {
         | 
| 422 467 | 
             
              color: grey; }
         | 
| 468 | 
            +
             | 
| 423 469 | 
             
            .select2-container--classic .select2-results__option--highlighted[aria-selected] {
         | 
| 424 470 | 
             
              background-color: #3875d7;
         | 
| 425 471 | 
             
              color: white; }
         | 
| 472 | 
            +
             | 
| 426 473 | 
             
            .select2-container--classic .select2-results__group {
         | 
| 427 474 | 
             
              cursor: default;
         | 
| 428 475 | 
             
              display: block;
         | 
| 429 476 | 
             
              padding: 6px; }
         | 
| 477 | 
            +
             | 
| 430 478 | 
             
            .select2-container--classic.select2-container--open .select2-dropdown {
         | 
| 431 479 | 
             
              border-color: #5897fb; }
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: effective_form_inputs
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.7. | 
| 4 | 
            +
              version: 0.7.1
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Code and Effect
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2015-08- | 
| 11 | 
            +
            date: 2015-08-27 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: rails
         |