/**
  * {@inheritdoc}
  */
 protected function findDefinitions()
 {
     $definitions = parent::findDefinitions();
     // Sort definitions by weight
     uasort($definitions, array('Drupal\\Component\\Utility\\SortArray', 'sortByWeightElement'));
     return $definitions;
 }
 /**
  * {@inheritdoc}
  */
 protected function findDefinitions()
 {
     $definitions = parent::findDefinitions();
     if (isset($definitions['default'])) {
         // Always put default first.
         $definitions = ['default' => $definitions['default']] + $definitions;
     }
     return $definitions;
 }
 /**
  * Supplement parent findDefinitions values with Matchers defined in Zxcvbn
  * library.
  *
  * Each entry must be defined as 'NamespacedClass' => 'Description'
  *
  * It then massages the data in the structure needed to represent a plugin
  * definition.
  *
  * @return array
  */
 protected function findDefinitions()
 {
     $definitions = parent::findDefinitions();
     $zxcvbn_matchers = array('ZxcvbnPhp\\Matchers\\DateMatch' => 'Matching the use of dates in passwords', 'ZxcvbnPhp\\Matchers\\DigitMatch' => 'Matching the use of three or more digits in a row in passwords', 'ZxcvbnPhp\\Matchers\\L33tMatch' => 'Matching l33t speak words used in passwords', 'ZxcvbnPhp\\Matchers\\RepeatMatch' => 'Matching the use of three or more of the same character in passwords', 'ZxcvbnPhp\\Matchers\\SequenceMatch' => 'Matching alphanumerical sequences of characters in passwords', 'ZxcvbnPhp\\Matchers\\SpatialMatch' => 'Matching keyboard character spatial locality in passwords', 'ZxcvbnPhp\\Matchers\\YearMatch' => 'Matching years in passwords', 'ZxcvbnPhp\\Matchers\\DictionaryMatch' => 'Matching words used in passwords pulled from a dictionary');
     foreach ($zxcvbn_matchers as $matcher_class => $matcher_description) {
         $class = ltrim(strrchr($matcher_class, '\\'), '\\');
         $name = 'zxcvbn_' . strtolower($class);
         $definitions[$name] = array('id' => $name, 'title' => new TranslationWrapper($matcher_description), 'description' => new TranslationWrapper('Zxcvbn Library ' . $class . ' Matcher'), 'class' => $matcher_class, 'provider' => 'password_strength');
     }
     return $definitions;
 }