summaryrefslogtreecommitdiff
path: root/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/themes/search.go
diff options
context:
space:
mode:
Diffstat (limited to 'raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/themes/search.go')
-rw-r--r--raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/themes/search.go40
1 files changed, 0 insertions, 40 deletions
diff --git a/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/themes/search.go b/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/themes/search.go
deleted file mode 100644
index 347f791..0000000
--- a/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/themes/search.go
+++ /dev/null
@@ -1,40 +0,0 @@
-package themes
-
-import (
- "strings"
-
- "github.com/AvengeMedia/DankMaterialShell/core/internal/utils"
-)
-
-func FuzzySearch(query string, themes []Theme) []Theme {
- if query == "" {
- return themes
- }
-
- queryLower := strings.ToLower(query)
- return utils.Filter(themes, func(t Theme) bool {
- return fuzzyMatch(queryLower, strings.ToLower(t.Name)) ||
- fuzzyMatch(queryLower, strings.ToLower(t.Description)) ||
- fuzzyMatch(queryLower, strings.ToLower(t.Author))
- })
-}
-
-func fuzzyMatch(query, text string) bool {
- queryIdx := 0
- for _, char := range text {
- if queryIdx < len(query) && char == rune(query[queryIdx]) {
- queryIdx++
- }
- }
- return queryIdx == len(query)
-}
-
-func FindByIDOrName(idOrName string, themes []Theme) *Theme {
- if t, found := utils.Find(themes, func(t Theme) bool { return t.ID == idOrName }); found {
- return &t
- }
- if t, found := utils.Find(themes, func(t Theme) bool { return t.Name == idOrName }); found {
- return &t
- }
- return nil
-}