Add configurable OpenSearch feature and UI improvements
All checks were successful
Security Scan / security (pull_request) Successful in 49s
Security Scan / dependency-check (pull_request) Successful in 51s
Test Suite / lint (pull_request) Successful in 41s
Test Suite / test (3.11) (pull_request) Successful in 1m43s
Test Suite / build (pull_request) Successful in 37s

- Add MIT license with Austin Godber copyright
  - Implement optional OpenSearch feature toggle via EMBEDDINGBUDDY_OPENSEARCH_ENABLED
  - Disable OpenSearch by default in production for security
  - Add development environment flag to test OpenSearch disable state
  - Update about modal to open by default with improved content
  - Reorganize text input component: move model selection below text input
  - Conditionally show/hide OpenSearch tab and callbacks based on configuration
  - Update tooltips to reflect OpenSearch availability status
This commit is contained in:
2025-09-17 19:01:51 -07:00
parent 89dcafd311
commit 2f458884a2
10 changed files with 85 additions and 17 deletions

View File

@@ -82,19 +82,23 @@ class DataProcessingCallbacks:
)
def render_tab_content(active_tab):
from ...ui.components.datasource import DataSourceComponent
from ...config.settings import AppSettings
datasource = DataSourceComponent()
if active_tab == "opensearch-tab":
if active_tab == "opensearch-tab" and AppSettings.OPENSEARCH_ENABLED:
return [datasource.create_opensearch_tab()]
elif active_tab == "text-input-tab":
return [datasource.create_text_input_tab()]
else:
return [datasource.create_file_upload_tab()]
# Register callbacks for both data and prompts sections
self._register_opensearch_callbacks("data", self.opensearch_client_data)
self._register_opensearch_callbacks("prompts", self.opensearch_client_prompts)
# Register callbacks for both data and prompts sections (only if OpenSearch is enabled)
if AppSettings.OPENSEARCH_ENABLED:
self._register_opensearch_callbacks("data", self.opensearch_client_data)
self._register_opensearch_callbacks(
"prompts", self.opensearch_client_prompts
)
# Register collapsible section callbacks
self._register_collapse_callbacks()