diff --git a/docs/search-core.source.md b/docs/search-core.source.md
index 6dc1c3cd..545b7d31 100644
--- a/docs/search-core.source.md
+++ b/docs/search-core.source.md
@@ -20,6 +20,7 @@ export declare enum Source
| Bing | "BING_CSE"
| The result is from Bing Search Engine. |
| Custom | "CUSTOM_SEARCHER"
| The result was from a custom source. |
| DocumentVertical | "DOCUMENT_VERTICAL"
| The result is from a document vertical. |
+| FunctionVertical | "FUNCTION_VERTICAL"
| The result is from a function vertical. |
| Google | "GOOGLE_CSE"
| The result is from Google Custom Search Engine. |
| KnowledgeManager | "KNOWLEDGE_MANAGER"
| The result is from a Knowledge Graph. |
| Zendesk | "ZENDESK"
| The result is from Zendesk. |
diff --git a/etc/search-core.api.md b/etc/search-core.api.md
index d2b5fbc8..dbcfb723 100644
--- a/etc/search-core.api.md
+++ b/etc/search-core.api.md
@@ -754,6 +754,7 @@ export enum Source {
Bing = "BING_CSE",
Custom = "CUSTOM_SEARCHER",
DocumentVertical = "DOCUMENT_VERTICAL",
+ FunctionVertical = "FUNCTION_VERTICAL",
Google = "GOOGLE_CSE",
KnowledgeManager = "KNOWLEDGE_MANAGER",
Zendesk = "ZENDESK"
diff --git a/package-lock.json b/package-lock.json
index 18be19d9..b61dc53a 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "@yext/search-core",
- "version": "2.6.0-beta.2",
+ "version": "2.6.0-beta.3",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@yext/search-core",
- "version": "2.6.0-beta.2",
+ "version": "2.6.0-beta.3",
"license": "BSD-3-Clause",
"dependencies": {
"@babel/runtime-corejs3": "^7.12.5",
diff --git a/package.json b/package.json
index ff135761..c814640f 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@yext/search-core",
- "version": "2.6.0-beta.2",
+ "version": "2.6.0-beta.3",
"description": "Typescript Networking Library for the Yext Search API",
"main": "./dist/commonjs/src/index.js",
"module": "./dist/esm/src/index.js",
diff --git a/src/models/searchservice/response/Source.ts b/src/models/searchservice/response/Source.ts
index ddbebe9d..158027a9 100644
--- a/src/models/searchservice/response/Source.ts
+++ b/src/models/searchservice/response/Source.ts
@@ -18,4 +18,6 @@ export enum Source {
Custom = 'CUSTOM_SEARCHER',
/** The result is from a document vertical. */
DocumentVertical = 'DOCUMENT_VERTICAL',
+ /** The result is from a function vertical. */
+ FunctionVertical = 'FUNCTION_VERTICAL',
}
\ No newline at end of file
diff --git a/src/transformers/searchservice/ResultsFactory.ts b/src/transformers/searchservice/ResultsFactory.ts
index 944e1c4d..e7989f10 100644
--- a/src/transformers/searchservice/ResultsFactory.ts
+++ b/src/transformers/searchservice/ResultsFactory.ts
@@ -26,6 +26,8 @@ export class ResultsFactory {
return this.fromAlgoliaSearchEngine(result, resultIndex);
case Source.DocumentVertical:
return this.fromDocumentVertical(result, resultIndex);
+ case Source.FunctionVertical:
+ return this.fromFunctionVertical(result, resultIndex);
default:
return this.fromCustomSource(result, resultIndex);
}
@@ -113,10 +115,18 @@ export class ResultsFactory {
}
private static fromCustomSource(result: any, index: number): Result {
+ return this.fromCustomDataHelper(result, index, Source.Custom);
+ }
+
+ private static fromFunctionVertical(result: any, index: number): Result {
+ return this.fromCustomDataHelper(result, index, Source.FunctionVertical);
+ }
+
+ private static fromCustomDataHelper(result: any, index: number, source: Source): Result {
const rawData = result.data ?? result;
return {
rawData: rawData,
- source: Source.Custom,
+ source: source,
index: index,
name: rawData.name,
description: rawData.description, // Do we want to truncate this like in the SDK?
diff --git a/test-site/index.html b/test-site/index.html
index 5d5914e6..9de8956f 100644
--- a/test-site/index.html
+++ b/test-site/index.html
@@ -14,5 +14,6 @@
+