This turns the search function into more of a 'fuzzy search': The search
is expected to be a series of space-separated terms, but the terms can
appear in any order, can be just part of a word (e.g., "uefr" would match
"bluefruit") and with other terms between them.
So for instance after this change both "tft feather" or "feather tft"
will show the Feather ESP32-S3 TFT PSRAM (as well as 3 other feather
boards)
Closes#1321
This means that the user can hit anywhere on the big target like
"Adafruit" instead of only being able to click the small checkbox. It
may also improve accessibility.
Additionally, the mouse cursor over the checkbox and its label is
changed to the "pointer" to indicate an action is available by clicking.
- selecting a language in one selects it in the other (if available)
- toss a couple of toLowerCase in there, since firefox uses lower case region codes, and the indonesian language string on the site is upper case
- includes the fix for the selecting languages by user preference, and testing the language string of the browser alone if the <language>-<region> string does not match
- does NOT compare <language> of the firmware port alone if it has a <language>-<region> because I am not sure that the languages are in order of priority (the default english implementation first for example), and I don't want users with "en-UK" to get offered "en-x-pirate" by default, it be bad matey ! Arrrrrrr
I have repeatedly been tripped up by wanting to enter a manufacturer
name in the text search area. While it is possible to open the
filter panel and select manufacturers, it is more convenient and intuitive
to simply enter this in the single text search box.
By concatenating several fields from the dataset (name, id, manufacturer,
and features), and then searching that it becomes possible to text-search
e.g., for "alligator" (board feature), "diary" (manufacturer) or
"metro_m4" (board id)