databricks-tellr-app 0.3.10.dev5__tar.gz → 0.3.11.dev2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/PKG-INFO +1 -1
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/databricks_tellr_app.egg-info/PKG-INFO +1 -1
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/databricks_tellr_app.egg-info/SOURCES.txt +10 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/pyproject.toml +1 -1
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/main.py +2 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/agent_config.py +17 -2
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/export.py +4 -2
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/google_slides.py +5 -1
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/sessions.py +2 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/settings/__init__.py +2 -0
- databricks_tellr_app-0.3.11.dev2/src/api/routes/settings/design_systems.py +517 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/agent_config.py +3 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/services/chat_service.py +29 -5
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/services/export_job_queue.py +4 -2
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/services/session_manager.py +3 -1
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/database.py +71 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/__init__.py +8 -1
- databricks_tellr_app-0.3.11.dev2/src/database/models/design_system.py +193 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/agent_factory.py +42 -3
- databricks_tellr_app-0.3.11.dev2/src/services/design_system_compiler.py +277 -0
- databricks_tellr_app-0.3.11.dev2/src/services/design_system_service.py +482 -0
- databricks_tellr_app-0.3.11.dev2/src/utils/ds_asset_utils.py +58 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/README.md +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/databricks_tellr_app/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/databricks_tellr_app/run.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/databricks_tellr_app.egg-info/dependency_links.txt +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/databricks_tellr_app.egg-info/requires.txt +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/databricks_tellr_app.egg-info/top_level.txt +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/setup.cfg +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/setup.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/_otel_bootstrap.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/fixtures/tour_demo_deck.json +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/mcp_auth.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/mcp_server.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/middleware/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/middleware/request_logging.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/admin.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/chat.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/deck_contributors.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/feedback.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/images.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/local_version.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/profiles.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/settings/contributors.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/settings/deck_prompts.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/settings/identities.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/settings/slide_styles.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/setup.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/slides.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/tools.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/tour.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/verification.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/version.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/feedback.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/requests.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/responses.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/settings/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/settings/requests.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/settings/responses.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/schemas/streaming.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/services/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/services/feedback_service.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/services/job_queue.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/services/session_naming.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/utils/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/utils/validation.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/config_loader.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/context_utils.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/databricks_client.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/defaults.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/encryption.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/init_default_profile.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/lakebase.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/migrate_profiles_to_agent_config.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/mlflow_agent_spans.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/mlflow_tracing.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/otel_logging.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/permission_context.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/prompt_modules.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/settings_db.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/core/user_context.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/deck_contributor.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/feedback.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/genie_space.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/google_global_credentials.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/google_oauth_token.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/identity.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/image.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/profile.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/profile_contributor.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/prompts.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/request_log.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/session.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/slide_deck_prompt.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/slide_style_library.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/database/models/user_preference.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/domain/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/domain/slide.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/domain/slide_deck.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/agent.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/config_service.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/config_validator.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/drive_uploader.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/evaluation/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/evaluation/llm_judge.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/genie_service.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/google_slides_auth.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/google_slides_prompts_defaults.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/html_to_google_slides.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/html_to_pptx.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/identity_provider.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/identity_providers/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/identity_providers/account_provider.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/identity_providers/local_provider.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/identity_providers/workspace_provider.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/image_service.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/image_tools.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/permission_service.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/pptx_from_html_huashu.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/pptx_from_records.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/pptx_prompts_defaults.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/profile_service.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/streaming_callback.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/tools/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/tools/agent_bricks_tool.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/tools/genie_tool.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/tools/mcp_tool.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/tools/model_endpoint_tool.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/tools/vector_tool.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/services/validator.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/__init__.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/css_utils.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/error_handling.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/html_safety.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/html_utils.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/image_utils.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/js_validator.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/logging_config.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/pi_filter.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/slide_hash.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/spotlight.py +0 -0
- {databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/utils/text_caps.py +0 -0
|
@@ -33,6 +33,7 @@ setup.py
|
|
|
33
33
|
./src/api/routes/settings/__init__.py
|
|
34
34
|
./src/api/routes/settings/contributors.py
|
|
35
35
|
./src/api/routes/settings/deck_prompts.py
|
|
36
|
+
./src/api/routes/settings/design_systems.py
|
|
36
37
|
./src/api/routes/settings/identities.py
|
|
37
38
|
./src/api/routes/settings/slide_styles.py
|
|
38
39
|
./src/api/schemas/__init__.py
|
|
@@ -73,6 +74,7 @@ setup.py
|
|
|
73
74
|
./src/database/__init__.py
|
|
74
75
|
./src/database/models/__init__.py
|
|
75
76
|
./src/database/models/deck_contributor.py
|
|
77
|
+
./src/database/models/design_system.py
|
|
76
78
|
./src/database/models/feedback.py
|
|
77
79
|
./src/database/models/genie_space.py
|
|
78
80
|
./src/database/models/google_global_credentials.py
|
|
@@ -95,6 +97,8 @@ setup.py
|
|
|
95
97
|
./src/services/agent_factory.py
|
|
96
98
|
./src/services/config_service.py
|
|
97
99
|
./src/services/config_validator.py
|
|
100
|
+
./src/services/design_system_compiler.py
|
|
101
|
+
./src/services/design_system_service.py
|
|
98
102
|
./src/services/drive_uploader.py
|
|
99
103
|
./src/services/genie_service.py
|
|
100
104
|
./src/services/google_slides_auth.py
|
|
@@ -125,6 +129,7 @@ setup.py
|
|
|
125
129
|
./src/services/tools/vector_tool.py
|
|
126
130
|
./src/utils/__init__.py
|
|
127
131
|
./src/utils/css_utils.py
|
|
132
|
+
./src/utils/ds_asset_utils.py
|
|
128
133
|
./src/utils/error_handling.py
|
|
129
134
|
./src/utils/html_safety.py
|
|
130
135
|
./src/utils/html_utils.py
|
|
@@ -172,6 +177,7 @@ src/api/routes/version.py
|
|
|
172
177
|
src/api/routes/settings/__init__.py
|
|
173
178
|
src/api/routes/settings/contributors.py
|
|
174
179
|
src/api/routes/settings/deck_prompts.py
|
|
180
|
+
src/api/routes/settings/design_systems.py
|
|
175
181
|
src/api/routes/settings/identities.py
|
|
176
182
|
src/api/routes/settings/slide_styles.py
|
|
177
183
|
src/api/schemas/__init__.py
|
|
@@ -212,6 +218,7 @@ src/core/user_context.py
|
|
|
212
218
|
src/database/__init__.py
|
|
213
219
|
src/database/models/__init__.py
|
|
214
220
|
src/database/models/deck_contributor.py
|
|
221
|
+
src/database/models/design_system.py
|
|
215
222
|
src/database/models/feedback.py
|
|
216
223
|
src/database/models/genie_space.py
|
|
217
224
|
src/database/models/google_global_credentials.py
|
|
@@ -234,6 +241,8 @@ src/services/agent.py
|
|
|
234
241
|
src/services/agent_factory.py
|
|
235
242
|
src/services/config_service.py
|
|
236
243
|
src/services/config_validator.py
|
|
244
|
+
src/services/design_system_compiler.py
|
|
245
|
+
src/services/design_system_service.py
|
|
237
246
|
src/services/drive_uploader.py
|
|
238
247
|
src/services/genie_service.py
|
|
239
248
|
src/services/google_slides_auth.py
|
|
@@ -264,6 +273,7 @@ src/services/tools/model_endpoint_tool.py
|
|
|
264
273
|
src/services/tools/vector_tool.py
|
|
265
274
|
src/utils/__init__.py
|
|
266
275
|
src/utils/css_utils.py
|
|
276
|
+
src/utils/ds_asset_utils.py
|
|
267
277
|
src/utils/error_handling.py
|
|
268
278
|
src/utils/html_safety.py
|
|
269
279
|
src/utils/html_utils.py
|
|
@@ -27,6 +27,7 @@ from src.core.permission_context import (
|
|
|
27
27
|
from src.api.routes.settings import (
|
|
28
28
|
contributors_router,
|
|
29
29
|
deck_prompts_router,
|
|
30
|
+
design_systems_router,
|
|
30
31
|
identities_router,
|
|
31
32
|
slide_styles_router,
|
|
32
33
|
)
|
|
@@ -434,6 +435,7 @@ app.include_router(contributors_router, prefix="/api/settings", tags=["settings"
|
|
|
434
435
|
app.include_router(deck_prompts_router, prefix="/api/settings", tags=["settings"])
|
|
435
436
|
app.include_router(identities_router, prefix="/api/settings", tags=["settings"])
|
|
436
437
|
app.include_router(slide_styles_router, prefix="/api/settings", tags=["settings"])
|
|
438
|
+
app.include_router(design_systems_router, prefix="/api/settings", tags=["settings"])
|
|
437
439
|
|
|
438
440
|
# MCP server — mount the FastMCP streamable-HTTP ASGI app at /mcp.
|
|
439
441
|
# Must be registered before the SPA catch-all (which is added lazily by
|
{databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/agent_config.py
RENAMED
|
@@ -21,10 +21,25 @@ router = APIRouter(prefix="/api/sessions/{session_id}/agent-config", tags=["agen
|
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
def _validate_references(config: AgentConfig) -> None:
|
|
24
|
-
"""Validate that slide_style_id and deck_prompt_id reference
|
|
25
|
-
|
|
24
|
+
"""Validate that design_system_id, slide_style_id and deck_prompt_id reference
|
|
25
|
+
existing (active) library entries."""
|
|
26
|
+
from src.database.models import DesignSystem, SlideDeckPromptLibrary, SlideStyleLibrary
|
|
26
27
|
|
|
27
28
|
with get_db_session() as db:
|
|
29
|
+
if config.design_system_id is not None:
|
|
30
|
+
design_system = (
|
|
31
|
+
db.query(DesignSystem)
|
|
32
|
+
.filter(
|
|
33
|
+
DesignSystem.id == config.design_system_id,
|
|
34
|
+
DesignSystem.is_active == True, # noqa: E712
|
|
35
|
+
)
|
|
36
|
+
.first()
|
|
37
|
+
)
|
|
38
|
+
if not design_system:
|
|
39
|
+
raise HTTPException(
|
|
40
|
+
status_code=422,
|
|
41
|
+
detail=f"design_system_id {config.design_system_id} not found",
|
|
42
|
+
)
|
|
28
43
|
if config.slide_style_id is not None:
|
|
29
44
|
style = (
|
|
30
45
|
db.query(SlideStyleLibrary)
|
{databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/export.py
RENAMED
|
@@ -405,12 +405,14 @@ async def export_to_pptx(request: ExportPPTXRequest):
|
|
|
405
405
|
if not slide_deck or not slide_deck.get("slides"):
|
|
406
406
|
raise HTTPException(status_code=404, detail="No slides available")
|
|
407
407
|
|
|
408
|
-
# Substitute {{image:ID}} placeholders with base64 data URIs
|
|
409
|
-
# so the PPTX converter can extract and embed the actual images
|
|
408
|
+
# Substitute {{image:ID}} + {{ds-asset:ID}} placeholders with base64 data URIs
|
|
409
|
+
# so the PPTX converter can extract and embed the actual images/brand assets
|
|
410
|
+
from src.utils.ds_asset_utils import substitute_deck_dict_ds_assets
|
|
410
411
|
from src.utils.image_utils import substitute_deck_dict_images
|
|
411
412
|
from src.core.database import get_db_session
|
|
412
413
|
with get_db_session() as db:
|
|
413
414
|
substitute_deck_dict_images(slide_deck, db)
|
|
415
|
+
substitute_deck_dict_ds_assets(slide_deck, db)
|
|
414
416
|
|
|
415
417
|
slide_count = len(slide_deck.get("slides", []))
|
|
416
418
|
log_msg = (
|
|
@@ -276,11 +276,13 @@ async def start_google_slides_export(
|
|
|
276
276
|
if not slide_deck or not slide_deck.get("slides"):
|
|
277
277
|
raise HTTPException(status_code=404, detail="No slides available")
|
|
278
278
|
|
|
279
|
-
# Substitute {{image:ID}} placeholders with base64 data URIs
|
|
279
|
+
# Substitute {{image:ID}} + {{ds-asset:ID}} placeholders with base64 data URIs
|
|
280
|
+
from src.utils.ds_asset_utils import substitute_deck_dict_ds_assets
|
|
280
281
|
from src.utils.image_utils import substitute_deck_dict_images
|
|
281
282
|
from src.core.database import get_db_session
|
|
282
283
|
with get_db_session() as db:
|
|
283
284
|
substitute_deck_dict_images(slide_deck, db)
|
|
285
|
+
substitute_deck_dict_ds_assets(slide_deck, db)
|
|
284
286
|
|
|
285
287
|
slides_data = slide_deck.get("slides", [])
|
|
286
288
|
total = len(slides_data)
|
|
@@ -502,9 +504,11 @@ async def export_google_slides_from_huashu(
|
|
|
502
504
|
# legacy /export route). Use a fresh session because the request's `db`
|
|
503
505
|
# is held by the route's transaction context.
|
|
504
506
|
from src.core.database import get_db_session
|
|
507
|
+
from src.utils.ds_asset_utils import substitute_deck_dict_ds_assets
|
|
505
508
|
from src.utils.image_utils import substitute_deck_dict_images
|
|
506
509
|
with get_db_session() as imdb:
|
|
507
510
|
substitute_deck_dict_images(slide_deck, imdb)
|
|
511
|
+
substitute_deck_dict_ds_assets(slide_deck, imdb)
|
|
508
512
|
|
|
509
513
|
title = slide_deck.get("title") or "Presentation"
|
|
510
514
|
slides_data = slide_deck.get("slides") or []
|
{databricks_tellr_app-0.3.10.dev5 → databricks_tellr_app-0.3.11.dev2}/src/api/routes/sessions.py
RENAMED
|
@@ -149,10 +149,12 @@ def _check_deck_permission_for_session(
|
|
|
149
149
|
def _substitute_deck_images(deck_dict: dict) -> None:
|
|
150
150
|
"""Substitute {{image:ID}} placeholders in a deck dict with base64 data URIs."""
|
|
151
151
|
from src.core.database import get_db_session
|
|
152
|
+
from src.utils.ds_asset_utils import substitute_deck_dict_ds_assets
|
|
152
153
|
from src.utils.image_utils import substitute_deck_dict_images
|
|
153
154
|
|
|
154
155
|
with get_db_session() as db:
|
|
155
156
|
substitute_deck_dict_images(deck_dict, db)
|
|
157
|
+
substitute_deck_dict_ds_assets(deck_dict, db)
|
|
156
158
|
|
|
157
159
|
|
|
158
160
|
@router.post("")
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
"""Configuration API routes."""
|
|
2
2
|
from src.api.routes.settings.contributors import router as contributors_router
|
|
3
3
|
from src.api.routes.settings.deck_prompts import router as deck_prompts_router
|
|
4
|
+
from src.api.routes.settings.design_systems import router as design_systems_router
|
|
4
5
|
from src.api.routes.settings.identities import router as identities_router
|
|
5
6
|
from src.api.routes.settings.slide_styles import router as slide_styles_router
|
|
6
7
|
|
|
7
8
|
__all__ = [
|
|
8
9
|
"contributors_router",
|
|
9
10
|
"deck_prompts_router",
|
|
11
|
+
"design_systems_router",
|
|
10
12
|
"identities_router",
|
|
11
13
|
"slide_styles_router",
|
|
12
14
|
]
|