@@ -4,7 +4,8 @@ module Data.Tags.Validation (
6import Data.Text as T
6import Data.Text as T
7−import Data.Char
7+import Data.Char as C
8+import qualified Data.Set as S
9validateTag :: T.Text -> Maybe T.Text
10validateTag :: T.Text -> Maybe T.Text
10validateTag tag =
11validateTag tag =
@@ -17,6 +18,9 @@ validateTag tag =
17validateTag' :: T.Text -> Bool
18validateTag' :: T.Text -> Bool
18validateTag' = T.all validChar
19validateTag' = T.all validChar
21+validChars :: S.Set Char
22+validChars = S.fromList "йцукенгшщзхъфывапролджэёячсмитьбюqwertyuiopasdfghjklzxcvbnm"
20validChar :: Char -> Bool
24validChar :: Char -> Bool
21−validChar '-' = True
25+validChar '_' = True
22−validChar c = isAlphaNum c
26+validChar c = S.member (C.toLower c) validChars