I'm using Sitecore 9.1 and SXA 1.8, I'm using FuzzyLookupFactory for my suggester, and this is the configuration:
<searchComponent name="suggest" class="solr.SuggestComponent">
<lst name="suggester">
<str name="name">sxaSuggester</str>
<str name="lookupImpl">FuzzyLookupFactory</str>
<str name="dictionaryImpl">DocumentDictionaryFactory</str>
<str name="field">suggestion_s</str>
<str name="suggestAnalyzerFieldType">text_suggester</str>
<str name="maxEdits">2</str>
<str name="exactMatchFirst">true</str>
<str name="nonFuzzyPrefix">0</str>
</lst>
</searchComponent>
<requestHandler name="/suggest" class="solr.SearchHandler" startup="lazy">
<lst name="defaults">
<str name="suggest.dictionary">sxaSuggester</str>
<str name="suggest">true</str>
<str name="suggest.onlyMorePopular">true</str>
<str name="suggest.count">30</str>
<str name="suggest.collate">true</str>
</lst>
<arr name="components">
<str>suggest</str>
</arr>
</requestHandler>
and the configuration for "text_suggester" field :
<fieldType name="text_suggester" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.LowerCaseFilterFactory" />
<filter class="solr.RemoveDuplicatesTokenFilterFactory" />
<filter class="solr.ArabicNormalizationFilterFactory" />
<filter class="solr.ArabicStemFilterFactory" />
<charfilter class="solr.PatternReplaceCharFilterFactory" pattern="[^a-zA-Z0-9]" replacement=" " />
</analyzer>
When I type for example: "الخدمات"
The results are :
أديبك
اعماق موسيقية