diff --git a/src/__tests__/__snapshots__/config.test.js.snap b/src/__tests__/__snapshots__/config.test.js.snap index d860f8b18..26e7cedaa 100644 --- a/src/__tests__/__snapshots__/config.test.js.snap +++ b/src/__tests__/__snapshots__/config.test.js.snap @@ -21,12 +21,28 @@ Object { }, }, "description": "promote exact matches", + "objectID": "promote-exact-concatenated", + }, + Object { + "condition": Object { + "anchoring": "is", + "pattern": "{facet:name}", + }, + "consequence": Object { + "params": Object { + "automaticOptionalFacetFilters": Array [ + "_searchInternal.name", + ], + }, + }, + "description": "promote exact matches", "objectID": "promote-exact", }, ], "indexSettings": Object { "attributesForFaceting": Array [ "filterOnly(_searchInternal.concatenatedName)", + "filterOnly(name)", "searchable(keywords)", "searchable(computedKeywords)", "searchable(owner.name)", diff --git a/src/config.js b/src/config.js index a061604dc..6ac38fd92 100644 --- a/src/config.js +++ b/src/config.js @@ -23,6 +23,7 @@ const defaultConfig = { ], attributesForFaceting: [ 'filterOnly(_searchInternal.concatenatedName)' /* optionalFacetFilters to boost the name */, + 'filterOnly(name)' /* optionalFacetFilters to boost the name */, 'searchable(keywords)', 'searchable(computedKeywords)', 'searchable(owner.name)', @@ -61,7 +62,7 @@ const defaultConfig = { ], indexRules: [ { - objectID: 'promote-exact', + objectID: 'promote-exact-concatenated', description: 'promote exact matches', condition: { pattern: '{facet:_searchInternal.concatenatedName}', @@ -73,6 +74,19 @@ const defaultConfig = { }, }, }, + { + objectID: 'promote-exact', + description: 'promote exact matches', + condition: { + pattern: '{facet:name}', + anchoring: 'is', + }, + consequence: { + params: { + automaticOptionalFacetFilters: ['_searchInternal.name'], + }, + }, + }, ], };