diff --git a/composer.json b/composer.json
index c5412d55e6e2237f11222964442a9c74773a758b..a492e3ab522f4ff2f8e0288edbb53a648f067ac4 100644
--- a/composer.json
+++ b/composer.json
@@ -93,7 +93,7 @@
         "drupal/admin_toolbar": "1.26",
         "drupal/administerusersbyrole": "2.0-alpha6",
         "drupal/allowed_formats": "1.1",
-        "drupal/better_exposed_filters": "3.0-alpha4",
+        "drupal/better_exposed_filters": "3.0-alpha6",
         "drupal/bigmenu": "^1.0@alpha",
         "drupal/block_field": "^1.0@alpha",
         "drupal/block_permissions": "^1.0",
diff --git a/composer.lock b/composer.lock
index 585acf0c4a0ff280c4bd1666fafd96b0e73960b4..b2bf2a137c6583baf8045b88ca4f78fa396e13c3 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
         "This file is @generated automatically"
     ],
-    "content-hash": "426e6f0320bdc4396c4421c039673f87",
+    "content-hash": "d22068b38fe15ec6cf412c8f1f8fcbe8",
     "packages": [
         {
             "name": "alchemy/zippy",
@@ -1585,17 +1585,17 @@
         },
         {
             "name": "drupal/better_exposed_filters",
-            "version": "3.0.0-alpha4",
+            "version": "3.0.0-alpha6",
             "source": {
                 "type": "git",
                 "url": "https://git.drupal.org/project/better_exposed_filters",
-                "reference": "8.x-3.0-alpha4"
+                "reference": "8.x-3.0-alpha6"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://ftp.drupal.org/files/projects/better_exposed_filters-8.x-3.0-alpha4.zip",
-                "reference": "8.x-3.0-alpha4",
-                "shasum": "f42013d1fc36d45212d582e18afc59bc2c364719"
+                "url": "https://ftp.drupal.org/files/projects/better_exposed_filters-8.x-3.0-alpha6.zip",
+                "reference": "8.x-3.0-alpha6",
+                "shasum": "0cd9849aa28eea822e18555107e4539d755d95ef"
             },
             "require": {
                 "drupal/core": "*"
@@ -1606,8 +1606,8 @@
                     "dev-3.x": "3.x-dev"
                 },
                 "drupal": {
-                    "version": "8.x-3.0-alpha4",
-                    "datestamp": "1525044484",
+                    "version": "8.x-3.0-alpha6",
+                    "datestamp": "1550449381",
                     "security-coverage": {
                         "status": "not-covered",
                         "message": "Alpha releases are not covered by Drupal security advisories."
@@ -1622,6 +1622,10 @@
                 "GPL-2.0-or-later"
             ],
             "authors": [
+                {
+                    "name": "chr.fritsch",
+                    "homepage": "https://www.drupal.org/user/2103716"
+                },
                 {
                     "name": "jkopel",
                     "homepage": "https://www.drupal.org/user/66207"
@@ -5102,7 +5106,8 @@
             "homepage": "https://www.drupal.org/project/migrate_devel",
             "support": {
                 "source": "http://cgit.drupalcode.org/migrate_devel"
-            }
+            },
+            "time": "2017-06-25T23:46:13+00:00"
         },
         {
             "name": "drupal/migrate_plus",
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 8af622c47438f09a9ec8e54a9168a46c98bee091..de40e2763a5a612f69837e3020486b2c62cc3a68 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -1638,18 +1638,18 @@
     },
     {
         "name": "drupal/better_exposed_filters",
-        "version": "3.0.0-alpha4",
-        "version_normalized": "3.0.0.0-alpha4",
+        "version": "3.0.0-alpha6",
+        "version_normalized": "3.0.0.0-alpha6",
         "source": {
             "type": "git",
             "url": "https://git.drupal.org/project/better_exposed_filters",
-            "reference": "8.x-3.0-alpha4"
+            "reference": "8.x-3.0-alpha6"
         },
         "dist": {
             "type": "zip",
-            "url": "https://ftp.drupal.org/files/projects/better_exposed_filters-8.x-3.0-alpha4.zip",
-            "reference": "8.x-3.0-alpha4",
-            "shasum": "f42013d1fc36d45212d582e18afc59bc2c364719"
+            "url": "https://ftp.drupal.org/files/projects/better_exposed_filters-8.x-3.0-alpha6.zip",
+            "reference": "8.x-3.0-alpha6",
+            "shasum": "0cd9849aa28eea822e18555107e4539d755d95ef"
         },
         "require": {
             "drupal/core": "*"
@@ -1660,8 +1660,8 @@
                 "dev-3.x": "3.x-dev"
             },
             "drupal": {
-                "version": "8.x-3.0-alpha4",
-                "datestamp": "1525044484",
+                "version": "8.x-3.0-alpha6",
+                "datestamp": "1550449381",
                 "security-coverage": {
                     "status": "not-covered",
                     "message": "Alpha releases are not covered by Drupal security advisories."
@@ -1677,6 +1677,10 @@
             "GPL-2.0-or-later"
         ],
         "authors": [
+            {
+                "name": "chr.fritsch",
+                "homepage": "https://www.drupal.org/user/2103716"
+            },
             {
                 "name": "jkopel",
                 "homepage": "https://www.drupal.org/user/66207"
diff --git a/web/modules/better_exposed_filters/better_exposed_filters.info.yml b/web/modules/better_exposed_filters/better_exposed_filters.info.yml
index b5e40eb0a92416a78edb74a30408d963b8254cb9..352b3a285876bcd772b4081133c544903e6aa2d6 100644
--- a/web/modules/better_exposed_filters/better_exposed_filters.info.yml
+++ b/web/modules/better_exposed_filters/better_exposed_filters.info.yml
@@ -6,8 +6,8 @@ package: Views
 dependencies:
   - drupal:views
 
-# Information added by Drupal.org packaging script on 2018-04-29
-version: '8.x-3.0-alpha4'
+# Information added by Drupal.org packaging script on 2019-02-18
+version: '8.x-3.0-alpha6'
 core: '8.x'
 project: 'better_exposed_filters'
-datestamp: 1525044488
+datestamp: 1550449395
diff --git a/web/modules/better_exposed_filters/better_exposed_filters.libraries.yml b/web/modules/better_exposed_filters/better_exposed_filters.libraries.yml
index 18e14b486bbb2313cbaf4dc809b458638c52918a..4db82b98685304fd3eaabe74dd38ec7828c50d3f 100644
--- a/web/modules/better_exposed_filters/better_exposed_filters.libraries.yml
+++ b/web/modules/better_exposed_filters/better_exposed_filters.libraries.yml
@@ -6,12 +6,14 @@ general:
   js:
     js/better_exposed_filters.js: {}
   dependencies:
+    - core/drupal
     - core/jquery
 auto_submit:
   version: 3.x
   js:
     js/auto_submit.js: {}
   dependencies:
+    - core/drupal
     - core/jquery.once
     - core/drupal.debounce
 select_all_none:
@@ -19,17 +21,20 @@ select_all_none:
   js:
     js/bef_select_all_none.js: {}
   dependencies:
+    - core/drupal
     - core/jquery
 sliders:
   version: 3.x
   js:
     js/bef_sliders.js: {}
   dependencies:
+    - core/drupal
     - core/jquery
 datepickers:
   version: 3.x
   js:
     js/bef_datepickers.js: {}
   dependencies:
+    - core/drupal
     - core/jquery
     - core/jquery.ui.slider
diff --git a/web/modules/better_exposed_filters/src/Plugin/views/exposed_form/BetterExposedFilters.php b/web/modules/better_exposed_filters/src/Plugin/views/exposed_form/BetterExposedFilters.php
index 9e52626a7e8d610338204c53a81bd8fe6afa0478..f4ce19d18c2d7e74cc5f5b4b3d94fc6a32e3b6c5 100644
--- a/web/modules/better_exposed_filters/src/Plugin/views/exposed_form/BetterExposedFilters.php
+++ b/web/modules/better_exposed_filters/src/Plugin/views/exposed_form/BetterExposedFilters.php
@@ -3,9 +3,9 @@
 namespace Drupal\better_exposed_filters\Plugin\views\exposed_form;
 
 use Drupal\Component\Utility\Html;
+use Drupal\Core\Form\FormState;
 use Drupal\Core\Form\FormStateInterface;
 use Drupal\Core\Render\Element;
-use Drupal\Core\StringTranslation\StringTranslationTrait;
 use Drupal\Core\Url;
 use Drupal\views\Plugin\views\exposed_form\InputRequired;
 use Drupal\views\Plugin\views\filter\NumericFilter;
@@ -116,8 +116,9 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
      * Add options for exposed sorts.
      */
     $exposed = FALSE;
+    /* @var \Drupal\views\Plugin\views\HandlerBase $sort */
     foreach ($this->view->display_handler->getHandlers('sort') as $label => $sort) {
-      if ($sort->options['exposed']) {
+      if ($sort->isExposed()) {
         $exposed = TRUE;
         break;
       }
@@ -254,8 +255,9 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
     $bef_filter_intro = FALSE;
 
     // Go through each filter and add BEF options.
+    /* @var \Drupal\views\Plugin\views\HandlerBase $filter */
     foreach ($this->view->display_handler->getHandlers('filter') as $label => $filter) {
-      if (!$filter->options['exposed']) {
+      if (!$filter->isExposed()) {
         continue;
       }
 
@@ -521,7 +523,19 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
         '#description' => $this->t('Places this element in the secondary options portion of the exposed form.'),
       );
 
-      if ($filter instanceof StringFilter) {
+      $filter_form = array();
+      $form_state = new FormState();
+
+      // Let form plugins know this is for exposed widgets.
+      $form_state->set('exposed', TRUE);
+
+      /** @var \Drupal\views\Plugin\views\filter\FilterPluginBase $filter */
+      $filter->buildExposedForm($filter_form, $form_state);
+
+      $supported_types = array('entity_autocomplete', 'textfield');
+
+      $filter_id = $filter->options['expose']['identifier'];
+      if (in_array($filter_form[$filter_id]['#type'], $supported_types) || in_array($filter_form[$filter_id]['value']['#type'], $supported_types)) {
         // Allow users to specify placeholder text.
         $bef_options[$label]['more_options']['placeholder_text'] = [
           '#type' => 'textfield',
@@ -873,13 +887,14 @@ public function exposedFormAlter(&$form, FormStateInterface $form_state) {
     }
 
     // Shorthand for all filters in this view.
+    /* @var \Drupal\views\Plugin\views\HandlerBase[] $filters */
     $filters = $form_state->get('view')->display_handler->handlers['filter'];
 
     // Go through each saved option looking for Better Exposed Filter settings.
     foreach ($settings as $label => $options) {
 
       // Sanity check: Ensure this filter is an exposed filter.
-      if (empty($filters[$label]) || !$filters[$label]->options['exposed']) {
+      if (empty($filters[$label]) || !$filters[$label]->isExposed()) {
         continue;
       }
 
@@ -890,7 +905,7 @@ public function exposedFormAlter(&$form, FormStateInterface $form_state) {
       // Check for placeholder text.
       if (!empty($settings[$label]['more_options']['placeholder_text'])) {
         // @todo: Add token replacement for placeholder text.
-        $form[$label]['#placeholder'] = $settings[$label]['more_options']['placeholder_text'];
+        $form[$field_id]['#placeholder'] = $settings[$label]['more_options']['placeholder_text'];
       }
 
       // Handle filter value rewrites.
@@ -1209,7 +1224,9 @@ public function exposedFormAlter(&$form, FormStateInterface $form_state) {
             '#title' => $form['#info']["filter-$label"]['label'] ?: '',
             '#description' => $form['#info']["filter-$label"]['description'] ?: '',
             // Needed to keep styling consistent with other exposed options.
-            '#attributes' => array('class' => 'form-item'),
+            '#attributes' => [
+              'class' => ['form-item'],
+            ],
             '#value' => NULL,
           ],
         ];
@@ -1247,6 +1264,7 @@ public function exposedFormAlter(&$form, FormStateInterface $form_state) {
           $secondary[$identifier] = $form[$identifier];
           unset($form[$identifier]);
           $secondary[$identifier]['#title'] = $form['#info'][$filter_info_name]['label'];
+          $secondary[$identifier]['#description'] = $form['#info'][$filter_info_name]['description'];
           unset($form['#info'][$filter_info_name]);
         }
       }
@@ -1319,11 +1337,11 @@ protected function rewriteOptions(array $options, $rewriteSettings, $reorder = F
     if (!$reorder) {
       $order = array_keys($options);
     }
-    $lines = explode("\n", trim($rewriteSettings));
+    $lines = preg_split("/(\r\n|\n|\r)/", trim($rewriteSettings));
     foreach ($lines as $line) {
       list($search, $replace) = explode('|', $line);
       if (!empty($search)) {
-        $rewrites[$search] = $replace;
+        $rewrites[$search] = trim($replace);
         if ($reorder) {
           // Reorder options in the order they are specified in rewrites.
           // Collect the keys to use later.
@@ -1580,8 +1598,9 @@ protected function getSettings() {
     );
 
     // Go through each exposed filter and collect settings.
+    /* @var \Drupal\views\Plugin\views\HandlerBase $filter */
     foreach ($this->view->display_handler->getHandlers('filter') as $label => $filter) {
-      if (!$filter->options['exposed']) {
+      if (!$filter->isExposed()) {
         continue;
       }
 
diff --git a/web/modules/better_exposed_filters/templates/bef-links.html.twig b/web/modules/better_exposed_filters/templates/bef-links.html.twig
index d7c796aa02385007fc87b0846edd0e972275d4ba..5b75c41cf20788495b28c4179b65c4f9440baeac 100644
--- a/web/modules/better_exposed_filters/templates/bef-links.html.twig
+++ b/web/modules/better_exposed_filters/templates/bef-links.html.twig
@@ -3,6 +3,7 @@
     'bef-links',
   ]
 %}
+<input type="hidden" name="{{ element["#name"] }}" value="{{ element["#value"] }}" />
 <div{{ attributes.addClass(classes) }}>
   {% set current_nesting_level = 0 %}
   {% for child in children %}
diff --git a/web/modules/better_exposed_filters/tests/bef_test/bef_test.info.yml b/web/modules/better_exposed_filters/tests/bef_test/bef_test.info.yml
index 0005b22879d1f6b3a7545fa66cc79ee751f23cce..6c45052899d87315decdf1d611fdb82ce0e40597 100644
--- a/web/modules/better_exposed_filters/tests/bef_test/bef_test.info.yml
+++ b/web/modules/better_exposed_filters/tests/bef_test/bef_test.info.yml
@@ -10,8 +10,8 @@ dependencies:
   - options
   - user
 
-# Information added by Drupal.org packaging script on 2018-04-29
-version: '8.x-3.0-alpha4'
+# Information added by Drupal.org packaging script on 2019-02-18
+version: '8.x-3.0-alpha6'
 core: '8.x'
 project: 'better_exposed_filters'
-datestamp: 1525044488
+datestamp: 1550449395