module DomainTldParse
Normalize user input into a TLD search token.
Constants
- MIN_LENGTH
- TLD_TOKEN_RE
Public Instance Methods
Source
# File lib/domain_tld_parse.rb, line 12 def parse(input) raw = TextUtil.squish(input) return { error: :empty } if raw.empty? query = raw.downcase.gsub(/\A\.+|\.+\z/, "") return { error: :empty } if query.empty? return { error: :invalid } unless query.match?(TLD_TOKEN_RE) return { error: :invalid } if query.length < MIN_LENGTH { query: query } end