Implement case insensitive search in the samples index (#1518)

Closes #1517
pull/1520/head
Parker Lougheed 2 years ago committed by GitHub
parent ea1ad9d043
commit 1463a967f6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -11,7 +11,7 @@ samples:
- url: images/gallery4.png
alt: Crane app screenshot
- url: images/gallery5.png
alt: Shrine app screnshot
alt: Shrine app screenshot
source: https://github.com/flutter/gallery
web: https://gallery.flutter.dev
description: >
@ -416,7 +416,7 @@ samples:
- url: images/web_dashboard1.png
alt: Web Dashboard screenshot
- url: images/web_dashboard2.png
alt: Web Dashbaord screenshot
alt: Web Dashboard screenshot
- url: images/web_dashboard3.png
alt: Web Dashboard screenshot
source: https://github.com/flutter/samples/tree/main/experimental/web_dashboard

@ -6,8 +6,11 @@ bool matchesQuery(String query, String sampleAttributes) {
if (query.isEmpty) {
return true;
}
var queryWords = query.split(' ')..removeWhere((s) => s.isEmpty);
var attributes = sampleAttributes.split(' ')..removeWhere((s) => s.isEmpty);
var queryWords = query.toLowerCase().split(' ')
..removeWhere((s) => s.isEmpty);
var attributes = sampleAttributes.toLowerCase().split(' ')
..removeWhere((s) => s.isEmpty);
// Test for type filter
// This will check whether a type parameter is present in the

@ -107,7 +107,9 @@ void main() {
// Test if various queries match these attributes
expect(matchesQuery('foo', attributes), false);
expect(matchesQuery('Foo', attributes), false);
expect(matchesQuery('kittens', attributes), true);
expect(matchesQuery('Kittens', attributes), true);
expect(matchesQuery('tag:cats', attributes), true);
expect(matchesQuery('tag:dogs', attributes), false);
expect(matchesQuery('package:path', attributes), true);

Loading…
Cancel
Save