diff --git a/clients/search-component/src/TrieveModal/index.css b/clients/search-component/src/TrieveModal/index.css
index 09f14505f..7575dc4c8 100644
--- a/clients/search-component/src/TrieveModal/index.css
+++ b/clients/search-component/src/TrieveModal/index.css
@@ -1017,6 +1017,25 @@ body {
}
}
}
+
+ .followup-questions {
+ .followup-question {
+ border-color: var(--tv-zinc-700);
+
+ &:hover {
+ background-color: var(--tv-zinc-800);
+ }
+ }
+ }
+ .header {
+ .followup-question {
+ border-color: var(--tv-zinc-700);
+
+ &:hover {
+ background-color: var(--tv-zinc-800);
+ }
+ }
+ }
}
.chat-footer-wrapper {
diff --git a/clients/ts-sdk/openapi.json b/clients/ts-sdk/openapi.json
index 614880383..67e97f33c 100644
--- a/clients/ts-sdk/openapi.json
+++ b/clients/ts-sdk/openapi.json
@@ -12538,6 +12538,10 @@
"type": "boolean",
"nullable": true
},
+ "isTestMode": {
+ "type": "boolean",
+ "nullable": true
+ },
"navLogoImgSrcUrl": {
"type": "string",
"nullable": true
diff --git a/clients/ts-sdk/src/types.gen.ts b/clients/ts-sdk/src/types.gen.ts
index e43dd2afd..084ed503f 100644
--- a/clients/ts-sdk/src/types.gen.ts
+++ b/clients/ts-sdk/src/types.gen.ts
@@ -2093,6 +2093,7 @@ export type PublicPageParameters = {
headingPrefix?: (string) | null;
heroPattern?: ((HeroPattern) | null);
hideDrawnText?: (boolean) | null;
+ isTestMode?: (boolean) | null;
navLogoImgSrcUrl?: (string) | null;
openGraphMetadata?: ((OpenGraphMetadata) | null);
openLinksInNewTab?: (boolean) | null;
diff --git a/frontends/dashboard/src/pages/dataset/PublicPageSettings.tsx b/frontends/dashboard/src/pages/dataset/PublicPageSettings.tsx
index 068beed9c..11411eaa5 100644
--- a/frontends/dashboard/src/pages/dataset/PublicPageSettings.tsx
+++ b/frontends/dashboard/src/pages/dataset/PublicPageSettings.tsx
@@ -1072,6 +1072,28 @@ const PublicPageControls = () => {
class="block w-4 rounded border border-neutral-300 px-3 py-1.5 shadow-sm placeholder:text-neutral-400 focus:outline-magenta-500 sm:text-sm sm:leading-6"
/>
+
+
+
+
+
+ }
+ />
+
+
{
+ setExtraParams("isTestMode", e.currentTarget.checked);
+ }}
+ class="block w-4 rounded border border-neutral-300 px-3 py-1.5 shadow-sm placeholder:text-neutral-400 focus:outline-magenta-500 sm:text-sm sm:leading-6"
+ />
+
diff --git a/server/src/data/models.rs b/server/src/data/models.rs
index e74920b14..bc6f314ae 100644
--- a/server/src/data/models.rs
+++ b/server/src/data/models.rs
@@ -3263,6 +3263,9 @@ impl DatasetConfigurationDTO {
video_position: page_parameters_self
.video_position
.or(page_parameters_curr.video_position),
+ is_test_mode: page_parameters_self
+ .is_test_mode
+ .or(page_parameters_curr.is_test_mode),
}),
},
DISABLE_ANALYTICS: self
diff --git a/server/src/handlers/page_handler.rs b/server/src/handlers/page_handler.rs
index e44c03b54..2bdc41319 100644
--- a/server/src/handlers/page_handler.rs
+++ b/server/src/handlers/page_handler.rs
@@ -260,6 +260,8 @@ pub struct PublicPageParameters {
pub video_link: Option,
#[serde(skip_serializing_if = "Option::is_none")]
pub video_position: Option,
+ #[serde(skip_serializing_if = "Option::is_none")]
+ pub is_test_mode: Option,
}
#[utoipa::path(
@@ -299,8 +301,19 @@ pub async fn public_page(
let dashboard_url =
env::var("ADMIN_DASHBOARD_URL").unwrap_or("https://dashboard.trieve.ai".to_string());
- let search_component_url = std::env::var("SEARCH_COMPONENT_URL")
- .unwrap_or("https://search-component.trieve.ai".to_string());
+ let search_component_url = if config
+ .clone()
+ .PUBLIC_DATASET
+ .extra_params
+ .unwrap_or_default()
+ .is_test_mode
+ .unwrap_or(false)
+ {
+ "https://test-search-component.trieve.ai".to_string()
+ } else {
+ std::env::var("SEARCH_COMPONENT_URL")
+ .unwrap_or("https://search-component.trieve.ai".to_string())
+ };
if config.PUBLIC_DATASET.enabled {
let templ = templates.get_template("page.html").unwrap();
diff --git a/server/src/public/page.html b/server/src/public/page.html
index 15fcdbbb3..bffdd2567 100644
--- a/server/src/public/page.html
+++ b/server/src/public/page.html
@@ -182,6 +182,7 @@
font-size: 1rem;
@media (min-width: 640px) {
font-size: 1.25rem;
+ line-height: 50px;
}
}
}