open-swarm 0.1.1743070217__py3-none-any.whl → 0.1.1743364176__py3-none-any.whl
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.
- open_swarm-0.1.1743364176.dist-info/METADATA +286 -0
- open_swarm-0.1.1743364176.dist-info/RECORD +260 -0
- {open_swarm-0.1.1743070217.dist-info → open_swarm-0.1.1743364176.dist-info}/WHEEL +1 -2
- open_swarm-0.1.1743364176.dist-info/entry_points.txt +2 -0
- swarm/__init__.py +0 -2
- swarm/auth.py +53 -49
- swarm/blueprints/README.md +67 -0
- swarm/blueprints/burnt_noodles/blueprint_burnt_noodles.py +412 -0
- swarm/blueprints/chatbot/blueprint_chatbot.py +98 -0
- swarm/blueprints/chatbot/templates/chatbot/chatbot.html +33 -0
- swarm/blueprints/digitalbutlers/blueprint_digitalbutlers.py +183 -0
- swarm/blueprints/dilbot_universe/blueprint_dilbot_universe.py +285 -0
- swarm/blueprints/divine_code/__init__.py +0 -0
- swarm/blueprints/divine_code/apps.py +11 -0
- swarm/blueprints/divine_code/blueprint_divine_code.py +219 -0
- swarm/blueprints/django_chat/apps.py +6 -0
- swarm/blueprints/django_chat/blueprint_django_chat.py +84 -0
- swarm/blueprints/django_chat/templates/django_chat/django_chat_webpage.html +37 -0
- swarm/blueprints/django_chat/urls.py +8 -0
- swarm/blueprints/django_chat/views.py +32 -0
- swarm/blueprints/echocraft/blueprint_echocraft.py +44 -0
- swarm/blueprints/family_ties/apps.py +11 -0
- swarm/blueprints/family_ties/blueprint_family_ties.py +152 -0
- swarm/blueprints/family_ties/models.py +19 -0
- swarm/blueprints/family_ties/serializers.py +7 -0
- swarm/blueprints/family_ties/settings.py +16 -0
- swarm/blueprints/family_ties/urls.py +10 -0
- swarm/blueprints/family_ties/views.py +26 -0
- swarm/blueprints/flock/__init__.py +0 -0
- swarm/blueprints/gaggle/blueprint_gaggle.py +184 -0
- swarm/blueprints/gotchaman/blueprint_gotchaman.py +232 -0
- swarm/blueprints/mcp_demo/blueprint_mcp_demo.py +133 -0
- swarm/blueprints/messenger/templates/messenger/messenger.html +46 -0
- swarm/blueprints/mission_improbable/blueprint_mission_improbable.py +234 -0
- swarm/blueprints/monkai_magic/blueprint_monkai_magic.py +248 -0
- swarm/blueprints/nebula_shellz/blueprint_nebula_shellz.py +156 -0
- swarm/blueprints/omniplex/blueprint_omniplex.py +221 -0
- swarm/blueprints/rue_code/__init__.py +0 -0
- swarm/blueprints/rue_code/blueprint_rue_code.py +291 -0
- swarm/blueprints/suggestion/blueprint_suggestion.py +110 -0
- swarm/blueprints/unapologetic_press/blueprint_unapologetic_press.py +298 -0
- swarm/blueprints/whiskeytango_foxtrot/__init__.py +0 -0
- swarm/blueprints/whiskeytango_foxtrot/apps.py +11 -0
- swarm/blueprints/whiskeytango_foxtrot/blueprint_whiskeytango_foxtrot.py +256 -0
- swarm/extensions/blueprint/__init__.py +30 -15
- swarm/extensions/blueprint/agent_utils.py +16 -40
- swarm/extensions/blueprint/blueprint_base.py +141 -543
- swarm/extensions/blueprint/blueprint_discovery.py +112 -98
- swarm/extensions/blueprint/cli_handler.py +185 -0
- swarm/extensions/blueprint/config_loader.py +122 -0
- swarm/extensions/blueprint/django_utils.py +181 -79
- swarm/extensions/blueprint/interactive_mode.py +1 -1
- swarm/extensions/config/config_loader.py +83 -200
- swarm/extensions/launchers/build_swarm_wrapper.py +0 -0
- swarm/extensions/launchers/swarm_cli.py +199 -287
- swarm/llm/chat_completion.py +26 -55
- swarm/management/__init__.py +0 -0
- swarm/management/commands/__init__.py +0 -0
- swarm/management/commands/runserver.py +58 -0
- swarm/permissions.py +38 -0
- swarm/serializers.py +96 -5
- swarm/settings.py +95 -110
- swarm/static/contrib/fonts/fontawesome-webfont.ttf +7 -0
- swarm/static/contrib/fonts/fontawesome-webfont.woff +7 -0
- swarm/static/contrib/fonts/fontawesome-webfont.woff2 +7 -0
- swarm/static/contrib/markedjs/marked.min.js +6 -0
- swarm/static/contrib/tabler-icons/adjustments-horizontal.svg +27 -0
- swarm/static/contrib/tabler-icons/alert-triangle.svg +21 -0
- swarm/static/contrib/tabler-icons/archive.svg +21 -0
- swarm/static/contrib/tabler-icons/artboard.svg +27 -0
- swarm/static/contrib/tabler-icons/automatic-gearbox.svg +23 -0
- swarm/static/contrib/tabler-icons/box-multiple.svg +19 -0
- swarm/static/contrib/tabler-icons/carambola.svg +19 -0
- swarm/static/contrib/tabler-icons/copy.svg +20 -0
- swarm/static/contrib/tabler-icons/download.svg +21 -0
- swarm/static/contrib/tabler-icons/edit.svg +21 -0
- swarm/static/contrib/tabler-icons/filled/carambola.svg +13 -0
- swarm/static/contrib/tabler-icons/filled/paint.svg +13 -0
- swarm/static/contrib/tabler-icons/headset.svg +22 -0
- swarm/static/contrib/tabler-icons/layout-sidebar-left-collapse.svg +21 -0
- swarm/static/contrib/tabler-icons/layout-sidebar-left-expand.svg +21 -0
- swarm/static/contrib/tabler-icons/layout-sidebar-right-collapse.svg +21 -0
- swarm/static/contrib/tabler-icons/layout-sidebar-right-expand.svg +21 -0
- swarm/static/contrib/tabler-icons/message-chatbot.svg +22 -0
- swarm/static/contrib/tabler-icons/message-star.svg +22 -0
- swarm/static/contrib/tabler-icons/message-x.svg +23 -0
- swarm/static/contrib/tabler-icons/message.svg +21 -0
- swarm/static/contrib/tabler-icons/paperclip.svg +18 -0
- swarm/static/contrib/tabler-icons/playlist-add.svg +22 -0
- swarm/static/contrib/tabler-icons/robot.svg +26 -0
- swarm/static/contrib/tabler-icons/search.svg +19 -0
- swarm/static/contrib/tabler-icons/settings.svg +20 -0
- swarm/static/contrib/tabler-icons/thumb-down.svg +19 -0
- swarm/static/contrib/tabler-icons/thumb-up.svg +19 -0
- swarm/static/css/dropdown.css +22 -0
- swarm/static/htmx/htmx.min.js +0 -0
- swarm/static/js/dropdown.js +23 -0
- swarm/static/rest_mode/css/base.css +470 -0
- swarm/static/rest_mode/css/chat-history.css +286 -0
- swarm/static/rest_mode/css/chat.css +251 -0
- swarm/static/rest_mode/css/chatbot.css +74 -0
- swarm/static/rest_mode/css/chatgpt.css +62 -0
- swarm/static/rest_mode/css/colors/corporate.css +74 -0
- swarm/static/rest_mode/css/colors/pastel.css +81 -0
- swarm/static/rest_mode/css/colors/tropical.css +82 -0
- swarm/static/rest_mode/css/general.css +142 -0
- swarm/static/rest_mode/css/layout.css +167 -0
- swarm/static/rest_mode/css/layouts/messenger-layout.css +17 -0
- swarm/static/rest_mode/css/layouts/minimalist-layout.css +57 -0
- swarm/static/rest_mode/css/layouts/mobile-layout.css +8 -0
- swarm/static/rest_mode/css/messages.css +84 -0
- swarm/static/rest_mode/css/messenger.css +135 -0
- swarm/static/rest_mode/css/settings.css +91 -0
- swarm/static/rest_mode/css/simple.css +44 -0
- swarm/static/rest_mode/css/slack.css +58 -0
- swarm/static/rest_mode/css/style.css +156 -0
- swarm/static/rest_mode/css/theme.css +30 -0
- swarm/static/rest_mode/css/toast.css +40 -0
- swarm/static/rest_mode/js/auth.js +9 -0
- swarm/static/rest_mode/js/blueprint.js +41 -0
- swarm/static/rest_mode/js/blueprintUtils.js +12 -0
- swarm/static/rest_mode/js/chatLogic.js +79 -0
- swarm/static/rest_mode/js/debug.js +63 -0
- swarm/static/rest_mode/js/events.js +98 -0
- swarm/static/rest_mode/js/main.js +19 -0
- swarm/static/rest_mode/js/messages.js +264 -0
- swarm/static/rest_mode/js/messengerLogic.js +355 -0
- swarm/static/rest_mode/js/modules/apiService.js +84 -0
- swarm/static/rest_mode/js/modules/blueprintManager.js +162 -0
- swarm/static/rest_mode/js/modules/chatHistory.js +110 -0
- swarm/static/rest_mode/js/modules/debugLogger.js +14 -0
- swarm/static/rest_mode/js/modules/eventHandlers.js +107 -0
- swarm/static/rest_mode/js/modules/messageProcessor.js +120 -0
- swarm/static/rest_mode/js/modules/state.js +7 -0
- swarm/static/rest_mode/js/modules/userInteractions.js +29 -0
- swarm/static/rest_mode/js/modules/validation.js +23 -0
- swarm/static/rest_mode/js/rendering.js +119 -0
- swarm/static/rest_mode/js/settings.js +130 -0
- swarm/static/rest_mode/js/sidebar.js +94 -0
- swarm/static/rest_mode/js/simpleLogic.js +37 -0
- swarm/static/rest_mode/js/slackLogic.js +66 -0
- swarm/static/rest_mode/js/splash.js +76 -0
- swarm/static/rest_mode/js/theme.js +111 -0
- swarm/static/rest_mode/js/toast.js +36 -0
- swarm/static/rest_mode/js/ui.js +265 -0
- swarm/static/rest_mode/js/validation.js +57 -0
- swarm/static/rest_mode/svg/animated_spinner.svg +12 -0
- swarm/static/rest_mode/svg/arrow_down.svg +5 -0
- swarm/static/rest_mode/svg/arrow_left.svg +5 -0
- swarm/static/rest_mode/svg/arrow_right.svg +5 -0
- swarm/static/rest_mode/svg/arrow_up.svg +5 -0
- swarm/static/rest_mode/svg/attach.svg +8 -0
- swarm/static/rest_mode/svg/avatar.svg +7 -0
- swarm/static/rest_mode/svg/canvas.svg +6 -0
- swarm/static/rest_mode/svg/chat_history.svg +4 -0
- swarm/static/rest_mode/svg/close.svg +5 -0
- swarm/static/rest_mode/svg/copy.svg +4 -0
- swarm/static/rest_mode/svg/dark_mode.svg +3 -0
- swarm/static/rest_mode/svg/edit.svg +5 -0
- swarm/static/rest_mode/svg/layout.svg +9 -0
- swarm/static/rest_mode/svg/logo.svg +29 -0
- swarm/static/rest_mode/svg/logout.svg +5 -0
- swarm/static/rest_mode/svg/mobile.svg +5 -0
- swarm/static/rest_mode/svg/new_chat.svg +4 -0
- swarm/static/rest_mode/svg/not_visible.svg +5 -0
- swarm/static/rest_mode/svg/plus.svg +7 -0
- swarm/static/rest_mode/svg/run_code.svg +6 -0
- swarm/static/rest_mode/svg/save.svg +4 -0
- swarm/static/rest_mode/svg/search.svg +6 -0
- swarm/static/rest_mode/svg/settings.svg +4 -0
- swarm/static/rest_mode/svg/speaker.svg +5 -0
- swarm/static/rest_mode/svg/stop.svg +6 -0
- swarm/static/rest_mode/svg/thumbs_down.svg +3 -0
- swarm/static/rest_mode/svg/thumbs_up.svg +3 -0
- swarm/static/rest_mode/svg/toggle_off.svg +6 -0
- swarm/static/rest_mode/svg/toggle_on.svg +6 -0
- swarm/static/rest_mode/svg/trash.svg +10 -0
- swarm/static/rest_mode/svg/undo.svg +3 -0
- swarm/static/rest_mode/svg/visible.svg +8 -0
- swarm/static/rest_mode/svg/voice.svg +10 -0
- swarm/templates/account/login.html +22 -0
- swarm/templates/account/signup.html +32 -0
- swarm/templates/base.html +30 -0
- swarm/templates/chat.html +43 -0
- swarm/templates/index.html +35 -0
- swarm/templates/rest_mode/components/chat_sidebar.html +55 -0
- swarm/templates/rest_mode/components/header.html +45 -0
- swarm/templates/rest_mode/components/main_chat_pane.html +41 -0
- swarm/templates/rest_mode/components/settings_dialog.html +97 -0
- swarm/templates/rest_mode/components/splash_screen.html +7 -0
- swarm/templates/rest_mode/components/top_bar.html +28 -0
- swarm/templates/rest_mode/message_ui.html +50 -0
- swarm/templates/rest_mode/slackbot.html +30 -0
- swarm/templates/simple_blueprint_page.html +24 -0
- swarm/templates/websocket_partials/final_system_message.html +3 -0
- swarm/templates/websocket_partials/system_message.html +4 -0
- swarm/templates/websocket_partials/user_message.html +5 -0
- swarm/urls.py +57 -74
- swarm/utils/log_utils.py +63 -0
- swarm/views/api_views.py +48 -39
- swarm/views/chat_views.py +156 -70
- swarm/views/core_views.py +85 -90
- swarm/views/model_views.py +64 -121
- swarm/views/utils.py +65 -441
- open_swarm-0.1.1743070217.dist-info/METADATA +0 -258
- open_swarm-0.1.1743070217.dist-info/RECORD +0 -89
- open_swarm-0.1.1743070217.dist-info/entry_points.txt +0 -3
- open_swarm-0.1.1743070217.dist-info/top_level.txt +0 -1
- swarm/agent/agent.py +0 -49
- swarm/core.py +0 -326
- swarm/extensions/mcp/__init__.py +0 -1
- swarm/extensions/mcp/cache_utils.py +0 -36
- swarm/extensions/mcp/mcp_client.py +0 -341
- swarm/extensions/mcp/mcp_constants.py +0 -7
- swarm/extensions/mcp/mcp_tool_provider.py +0 -110
- swarm/types.py +0 -126
- {open_swarm-0.1.1743070217.dist-info → open_swarm-0.1.1743364176.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,74 @@
|
|
1
|
+
/* corporate.css - Revised Corporate Color Theme */
|
2
|
+
:root {
|
3
|
+
/* Light Mode */
|
4
|
+
--bg-primary: #f8f9fa;
|
5
|
+
--bg-container: #ffffff;
|
6
|
+
--bg-message-user: #e9ecef;
|
7
|
+
--bg-message-assistant: #dee2e6;
|
8
|
+
--bg-message-tool: #f1f3f5;
|
9
|
+
--bg-message-other: #e9ecef;
|
10
|
+
--bg-blueprint: #ffffff;
|
11
|
+
--bg-debug: #f8f9fa;
|
12
|
+
--bg-chat-history-header: #6c757d;
|
13
|
+
--bg-chat-history-pane: #e9ecef;
|
14
|
+
--text-primary: #212529;
|
15
|
+
--text-secondary: #495057;
|
16
|
+
--border-color: #ced4da;
|
17
|
+
--button-primary: #2b8ce6; /* More vibrant primary color */
|
18
|
+
--button-hover: #1a6eb8;
|
19
|
+
--button-pane-bg: #e9ecef;
|
20
|
+
--button-pane-hover-bg: #dee2e6;
|
21
|
+
--button-header-bg: #ffffff;
|
22
|
+
--button-header-hover-bg: #e9ecef;
|
23
|
+
--logout-button-bg: #e9ecef;
|
24
|
+
--logout-button-hover: #dee2e6;
|
25
|
+
--logo-color: #2b8ce6;
|
26
|
+
--transition-duration: 0.3s;
|
27
|
+
}
|
28
|
+
|
29
|
+
[data-theme-dark="true"] {
|
30
|
+
/* Dark Mode */
|
31
|
+
--bg-primary: #1a1a1a;
|
32
|
+
--bg-container: #2d2d2d;
|
33
|
+
--bg-message-user: #404040;
|
34
|
+
--bg-message-assistant: #4d4d4d;
|
35
|
+
--bg-message-tool: #333333;
|
36
|
+
--bg-message-other: #404040;
|
37
|
+
--bg-blueprint: #2d2d2d;
|
38
|
+
--bg-debug: #1a1a1a;
|
39
|
+
--bg-chat-history-pane: #262626;
|
40
|
+
--text-primary: #f8f9fa;
|
41
|
+
--text-secondary: #dee2e6;
|
42
|
+
--border-color: #495057;
|
43
|
+
--button-primary: #4a9eff; /* Brighter blue for better visibility */
|
44
|
+
--button-hover: #357abd;
|
45
|
+
--logout-button-bg: #404040;
|
46
|
+
--logout-button-hover: #4d4d4d;
|
47
|
+
--logo-color: #4a9eff;
|
48
|
+
}
|
49
|
+
|
50
|
+
/* Message Styling Updates */
|
51
|
+
.message.user {
|
52
|
+
background-color: var(--bg-message-user);
|
53
|
+
color: var(--text-primary);
|
54
|
+
border: 1px solid var(--border-color);
|
55
|
+
}
|
56
|
+
|
57
|
+
.message.assistant {
|
58
|
+
background-color: var(--bg-message-assistant);
|
59
|
+
color: var(--text-primary);
|
60
|
+
border: 1px solid var(--border-color);
|
61
|
+
}
|
62
|
+
|
63
|
+
.pinned-message {
|
64
|
+
border-color: var(--border-color);
|
65
|
+
background-color: var(--bg-container);
|
66
|
+
}
|
67
|
+
|
68
|
+
.pinned-message .remove-pinned-button {
|
69
|
+
color: #dc3545;
|
70
|
+
}
|
71
|
+
|
72
|
+
.pinned-message .remove-pinned-button:hover {
|
73
|
+
color: #ff1a1a;
|
74
|
+
}
|
@@ -0,0 +1,81 @@
|
|
1
|
+
/* pastel.css - Revised Pastel Color Theme */
|
2
|
+
:root {
|
3
|
+
/* Light Mode */
|
4
|
+
--bg-primary: #fafafa; /* Soft White */
|
5
|
+
--bg-container: #f0f8ff; /* Alice Blue */
|
6
|
+
--bg-message-user: #b3e0ff; /* Powder Blue */
|
7
|
+
--bg-message-assistant: #e0ffe0; /* Mint Cream */
|
8
|
+
--bg-message-tool: #ffe0e6; /* Misty Rose */
|
9
|
+
--bg-message-other: #f5f5f5; /* White Smoke */
|
10
|
+
--bg-blueprint: #fff8f0; /* Seashell */
|
11
|
+
--bg-debug: #f8f8f8; /* Snow White */
|
12
|
+
--text-primary: #2c3e50; /* Dark Slate */
|
13
|
+
--text-secondary: #5a6a7f;
|
14
|
+
--border-color: #d1e0e0; /* Pale Teal */
|
15
|
+
--button-primary: #89c4f4; /* Soft Sky Blue */
|
16
|
+
--button-hover: #6aa8d6;
|
17
|
+
--button-pane-bg: #e0f0ff;
|
18
|
+
--button-pane-hover-bg: #cce6ff;
|
19
|
+
--button-header-bg: #a8d8ff;
|
20
|
+
--button-header-hover-bg: #95c4eb;
|
21
|
+
--logout-button-bg: #ffb3d9; /* Pastel Pink */
|
22
|
+
--logout-button-hover: #ff99cc;
|
23
|
+
--logo-color: #89c4f4;
|
24
|
+
--transition-duration: 0.3s;
|
25
|
+
}
|
26
|
+
|
27
|
+
[data-theme-dark="true"] {
|
28
|
+
/* Dark Mode */
|
29
|
+
--bg-primary: #1a1f2b; /* Night Blue */
|
30
|
+
--bg-container: #252d3d;
|
31
|
+
--bg-message-user: #3a4b5f; /* Dusky Blue */
|
32
|
+
--bg-message-assistant: #2d3d2d; /* Forest Night */
|
33
|
+
--bg-message-tool: #3d2d2d; /* Maroon Night */
|
34
|
+
--bg-message-other: #2d2d3d; /* Twilight */
|
35
|
+
--bg-blueprint: #1f2833;
|
36
|
+
--bg-debug: #1a212b;
|
37
|
+
--text-primary: #e0f2fe; /* Moonlight */
|
38
|
+
--text-secondary: #b3cde0;
|
39
|
+
--border-color: #3d4b5f;
|
40
|
+
--button-primary: #6d9ceb; /* Twilight Blue */
|
41
|
+
--button-hover: #5b87c9;
|
42
|
+
--logout-button-bg: #eb6d9c; /* Dusky Pink */
|
43
|
+
--logout-button-hover: #d95b8a;
|
44
|
+
--logo-color: #6d9ceb;
|
45
|
+
}
|
46
|
+
|
47
|
+
/* Enhanced Message Styling */
|
48
|
+
.message {
|
49
|
+
border-radius: 18px;
|
50
|
+
padding: 12px 18px;
|
51
|
+
margin-bottom: 12px;
|
52
|
+
max-width: 75%;
|
53
|
+
box-shadow: 0 2px 4px rgba(0,0,0,0.05);
|
54
|
+
border: 1px solid var(--border-color);
|
55
|
+
}
|
56
|
+
|
57
|
+
.message.user {
|
58
|
+
background-color: var(--bg-message-user);
|
59
|
+
align-self: flex-end;
|
60
|
+
}
|
61
|
+
|
62
|
+
.message.assistant {
|
63
|
+
background-color: var(--bg-message-assistant);
|
64
|
+
align-self: flex-start;
|
65
|
+
}
|
66
|
+
|
67
|
+
/* Updated Pinned Messages */
|
68
|
+
.pinned-message {
|
69
|
+
background-color: var(--bg-container);
|
70
|
+
border: 1px dashed var(--border-color);
|
71
|
+
box-shadow: 0 2px 6px rgba(0,0,0,0.1);
|
72
|
+
}
|
73
|
+
|
74
|
+
.pinned-message .remove-pinned-button {
|
75
|
+
color: #ff6b6b; /* Pastel Red */
|
76
|
+
}
|
77
|
+
|
78
|
+
.pinned-message .remove-pinned-button:hover {
|
79
|
+
color: #ff5252;
|
80
|
+
}
|
81
|
+
|
@@ -0,0 +1,82 @@
|
|
1
|
+
/* tropical.css - Revised Tropical Color Theme */
|
2
|
+
:root {
|
3
|
+
/* Light Mode */
|
4
|
+
--bg-primary: #fff7ed; /* Coconut Cream */
|
5
|
+
--bg-container: #ffe4c4; /* Sandy Beach */
|
6
|
+
--bg-message-user: #ffd8a8; /* Papaya Whip */
|
7
|
+
--bg-message-assistant: #d4f1dd; /* Sea Foam */
|
8
|
+
--bg-message-tool: #ffe0f0; /* Hibiscus Pink */
|
9
|
+
--bg-message-other: #f0fff0; /* Palm Frond */
|
10
|
+
--bg-blueprint: #fffaf0; /* White Sand */
|
11
|
+
--bg-debug: #fff5ee; /* Seashell */
|
12
|
+
--text-primary: #2d4738; /* Jungle Green */
|
13
|
+
--text-secondary: #5a6d5a;
|
14
|
+
--border-color: #c8a27a; /* Driftwood */
|
15
|
+
--button-primary: #38a89d; /* Tropical Teal */
|
16
|
+
--button-hover: #2e897f;
|
17
|
+
--button-pane-bg: #ffe8d6;
|
18
|
+
--button-pane-hover-bg: #ffd8b3;
|
19
|
+
--button-header-bg: #ff9f4b; /* Mango */
|
20
|
+
--button-header-hover-bg: #ff8c31;
|
21
|
+
--logout-button-bg: #ff6b6b; /* Coral */
|
22
|
+
--logout-button-hover: #ff5252;
|
23
|
+
--logo-color: #38a89d;
|
24
|
+
--transition-duration: 0.3s;
|
25
|
+
}
|
26
|
+
|
27
|
+
[data-theme-dark="true"] {
|
28
|
+
/* Night Mode */
|
29
|
+
--bg-primary: #0a1a2a; /* Midnight Ocean */
|
30
|
+
--bg-container: #1a2b3a;
|
31
|
+
--bg-message-user: #2a3b4a; /* Moonlit Wave */
|
32
|
+
--bg-message-assistant: #1a3a2a; /* Palm Shadow */
|
33
|
+
--bg-message-tool: #3a1a2a; /* Volcanic Soil */
|
34
|
+
--bg-message-other: #2a2a3a; /* Twilight Lagoon */
|
35
|
+
--bg-blueprint: #142a3a;
|
36
|
+
--bg-debug: #0a1a1a;
|
37
|
+
--text-primary: #e0f0ff; /* Moonlight */
|
38
|
+
--text-secondary: #b0c4de;
|
39
|
+
--border-color: #3a4b5a;
|
40
|
+
--button-primary: #4ac6b5; /* Bioluminescent Teal */
|
41
|
+
--button-hover: #38a89d;
|
42
|
+
--logout-button-bg: #ff8c6b; /* Lava Glow */
|
43
|
+
--logout-button-hover: #ff7a52;
|
44
|
+
--logo-color: #4ac6b5;
|
45
|
+
}
|
46
|
+
|
47
|
+
/* Tropical Message Styling */
|
48
|
+
.message {
|
49
|
+
border-radius: 20px;
|
50
|
+
padding: 12px 18px;
|
51
|
+
margin-bottom: 15px;
|
52
|
+
max-width: 75%;
|
53
|
+
box-shadow: 0 3px 6px rgba(0,0,0,0.1);
|
54
|
+
border: 2px solid var(--border-color);
|
55
|
+
}
|
56
|
+
|
57
|
+
.message.user {
|
58
|
+
background-color: var(--bg-message-user);
|
59
|
+
align-self: flex-end;
|
60
|
+
}
|
61
|
+
|
62
|
+
.message.assistant {
|
63
|
+
background-color: var(--bg-message-assistant);
|
64
|
+
align-self: flex-start;
|
65
|
+
}
|
66
|
+
|
67
|
+
/* Island-inspired Pinned Messages */
|
68
|
+
.pinned-message {
|
69
|
+
background-color: var(--bg-container);
|
70
|
+
border: 2px dashed var(--border-color);
|
71
|
+
border-radius: 20px;
|
72
|
+
box-shadow: 0 4px 8px rgba(0,0,0,0.15);
|
73
|
+
}
|
74
|
+
|
75
|
+
.pinned-message .remove-pinned-button {
|
76
|
+
color: #ff4757; /* Tropical Red */
|
77
|
+
}
|
78
|
+
|
79
|
+
.pinned-message .remove-pinned-button:hover {
|
80
|
+
color: #ff2d42;
|
81
|
+
}
|
82
|
+
|
@@ -0,0 +1,142 @@
|
|
1
|
+
/* General Utility Classes */
|
2
|
+
.hidden {
|
3
|
+
display: none !important; /* Fully removes from layout and ensures priority */
|
4
|
+
visibility: hidden;
|
5
|
+
pointer-events: none; /* Prevent interaction when hidden */
|
6
|
+
}
|
7
|
+
|
8
|
+
.visible {
|
9
|
+
display: block !important; /* Forces visibility when needed */
|
10
|
+
}
|
11
|
+
|
12
|
+
/* Flex Utilities */
|
13
|
+
.flex {
|
14
|
+
display: flex;
|
15
|
+
}
|
16
|
+
|
17
|
+
.flex-row {
|
18
|
+
flex-direction: row;
|
19
|
+
}
|
20
|
+
|
21
|
+
.flex-column {
|
22
|
+
flex-direction: column;
|
23
|
+
}
|
24
|
+
|
25
|
+
.justify-start {
|
26
|
+
justify-content: flex-start;
|
27
|
+
}
|
28
|
+
|
29
|
+
.justify-center {
|
30
|
+
justify-content: center;
|
31
|
+
}
|
32
|
+
|
33
|
+
.justify-end {
|
34
|
+
justify-content: flex-end;
|
35
|
+
}
|
36
|
+
|
37
|
+
.align-start {
|
38
|
+
align-items: flex-start;
|
39
|
+
}
|
40
|
+
|
41
|
+
.align-center {
|
42
|
+
align-items: center;
|
43
|
+
}
|
44
|
+
|
45
|
+
.align-end {
|
46
|
+
align-items: flex-end;
|
47
|
+
}
|
48
|
+
|
49
|
+
/* Text Utilities */
|
50
|
+
.text-center {
|
51
|
+
text-align: center;
|
52
|
+
}
|
53
|
+
|
54
|
+
.text-bold {
|
55
|
+
font-weight: bold;
|
56
|
+
}
|
57
|
+
|
58
|
+
.text-italic {
|
59
|
+
font-style: italic;
|
60
|
+
}
|
61
|
+
|
62
|
+
/* Margin and Padding Utilities */
|
63
|
+
.margin-auto {
|
64
|
+
margin: auto;
|
65
|
+
}
|
66
|
+
|
67
|
+
.padding-sm {
|
68
|
+
padding: 5px;
|
69
|
+
}
|
70
|
+
|
71
|
+
.padding-md {
|
72
|
+
padding: 10px;
|
73
|
+
}
|
74
|
+
|
75
|
+
.padding-lg {
|
76
|
+
padding: 20px;
|
77
|
+
}
|
78
|
+
|
79
|
+
/* Border and Background */
|
80
|
+
.border-rounded {
|
81
|
+
border-radius: 8px;
|
82
|
+
}
|
83
|
+
|
84
|
+
.border-solid {
|
85
|
+
border: 1px solid var(--border-color, #ccc);
|
86
|
+
}
|
87
|
+
|
88
|
+
.bg-primary {
|
89
|
+
background-color: var(--bg-primary, #f5f5f5);
|
90
|
+
}
|
91
|
+
|
92
|
+
.bg-secondary {
|
93
|
+
background-color: var(--bg-secondary, #e0e0e0);
|
94
|
+
}
|
95
|
+
|
96
|
+
.bg-dark {
|
97
|
+
background-color: var(--bg-dark, #333333);
|
98
|
+
}
|
99
|
+
|
100
|
+
.bg-light {
|
101
|
+
background-color: var(--bg-light, #ffffff);
|
102
|
+
}
|
103
|
+
|
104
|
+
/* Transition Effects */
|
105
|
+
.transition {
|
106
|
+
transition: all 0.3s ease;
|
107
|
+
}
|
108
|
+
|
109
|
+
.transition-opacity {
|
110
|
+
transition: opacity 0.3s ease;
|
111
|
+
}
|
112
|
+
|
113
|
+
.transition-transform {
|
114
|
+
transition: transform 0.3s ease;
|
115
|
+
}
|
116
|
+
|
117
|
+
/* Scrollbars */
|
118
|
+
.scroll-y {
|
119
|
+
overflow-y: auto;
|
120
|
+
}
|
121
|
+
|
122
|
+
.scroll-x {
|
123
|
+
overflow-x: auto;
|
124
|
+
}
|
125
|
+
|
126
|
+
.no-scroll {
|
127
|
+
overflow: hidden;
|
128
|
+
}
|
129
|
+
|
130
|
+
/* Fullscreen Overlay */
|
131
|
+
.fullscreen-overlay {
|
132
|
+
position: fixed;
|
133
|
+
top: 0;
|
134
|
+
left: 0;
|
135
|
+
width: 100vw;
|
136
|
+
height: 100vh;
|
137
|
+
background-color: rgba(0, 0, 0, 0.5);
|
138
|
+
z-index: 9999;
|
139
|
+
display: flex;
|
140
|
+
align-items: center;
|
141
|
+
justify-content: center;
|
142
|
+
}
|
@@ -0,0 +1,167 @@
|
|
1
|
+
.chat-history-pane {
|
2
|
+
flex: 0 0 33%;
|
3
|
+
background-color: var(--bg-chat-history-pane);
|
4
|
+
padding: 15px;
|
5
|
+
overflow-y: auto;
|
6
|
+
}
|
7
|
+
|
8
|
+
.main-pane {
|
9
|
+
flex: 1;
|
10
|
+
background-color: var(--bg-primary);
|
11
|
+
padding: 20px;
|
12
|
+
overflow: hidden;
|
13
|
+
}
|
14
|
+
|
15
|
+
/* Top Bar Styling */
|
16
|
+
.top-bar {
|
17
|
+
position: fixed;
|
18
|
+
top: 0;
|
19
|
+
left: 0;
|
20
|
+
width: 100%;
|
21
|
+
height: 80%;
|
22
|
+
background-color: var(--bg-container);
|
23
|
+
border-bottom: 1px solid var(--border-color);
|
24
|
+
align-items: center;
|
25
|
+
padding: 0 10px;
|
26
|
+
z-index: 1000;
|
27
|
+
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
|
28
|
+
visibility: hidden;
|
29
|
+
}
|
30
|
+
|
31
|
+
/* Left Section: Logo and Buttons */
|
32
|
+
.top-bar-left {
|
33
|
+
display: flex;
|
34
|
+
align-items: center;
|
35
|
+
gap: 10px;
|
36
|
+
}
|
37
|
+
|
38
|
+
/* Blueprint Metadata Centered */
|
39
|
+
.blueprint-metadata {
|
40
|
+
flex: 1;
|
41
|
+
text-align: center;
|
42
|
+
font-size: 0.85rem;
|
43
|
+
}
|
44
|
+
|
45
|
+
/* Right Section: Settings Button */
|
46
|
+
.top-bar-right {
|
47
|
+
margin-left: auto;
|
48
|
+
display: flex;
|
49
|
+
align-items: center;
|
50
|
+
}
|
51
|
+
|
52
|
+
/* Buttons in the Top Bar */
|
53
|
+
.top-bar-btn {
|
54
|
+
background: none;
|
55
|
+
border: none;
|
56
|
+
display: flex;
|
57
|
+
align-items: center;
|
58
|
+
gap: 5px;
|
59
|
+
padding: 5px 10px;
|
60
|
+
font-size: 0.85rem;
|
61
|
+
cursor: pointer;
|
62
|
+
color: var(--text-color);
|
63
|
+
text-decoration: none;
|
64
|
+
white-space: nowrap;
|
65
|
+
flex-shrink: 0;
|
66
|
+
transition: background-color 0.2s ease, color 0.2s ease;
|
67
|
+
}
|
68
|
+
|
69
|
+
.top-bar-btn img {
|
70
|
+
width: 24px;
|
71
|
+
height: 24px;
|
72
|
+
flex-shrink: 0;
|
73
|
+
}
|
74
|
+
|
75
|
+
.top-bar-btn:hover {
|
76
|
+
background-color: var(--button-hover-bg);
|
77
|
+
}
|
78
|
+
|
79
|
+
.top-bar-btn .btn-label {
|
80
|
+
display: inline-block;
|
81
|
+
white-space: nowrap;
|
82
|
+
visibility: visible;
|
83
|
+
}
|
84
|
+
|
85
|
+
/* Main Chat Pane */
|
86
|
+
.main-pane {
|
87
|
+
flex: 1;
|
88
|
+
display: flex;
|
89
|
+
flex-direction: column;
|
90
|
+
overflow: hidden;
|
91
|
+
box-sizing: border-box;
|
92
|
+
}
|
93
|
+
|
94
|
+
/* Message Input Area */
|
95
|
+
.message-input-container {
|
96
|
+
display: flex;
|
97
|
+
align-items: center;
|
98
|
+
gap: 10px;
|
99
|
+
background-color: var(--bg-secondary);
|
100
|
+
border-top: 1px solid var(--border-color);
|
101
|
+
position: absolute;
|
102
|
+
bottom: 0;
|
103
|
+
width: 100%;
|
104
|
+
}
|
105
|
+
|
106
|
+
/* Vertical Divider for Resizing */
|
107
|
+
.vertical-divider {
|
108
|
+
width: 10px;
|
109
|
+
cursor: col-resize;
|
110
|
+
background-color: var(--border-color);
|
111
|
+
opacity: 0;
|
112
|
+
transition: opacity 0.2s ease, background-color 0.2s ease;
|
113
|
+
}
|
114
|
+
|
115
|
+
.vertical-divider:hover {
|
116
|
+
opacity: 1;
|
117
|
+
background-color: var(--button-hover-bg);
|
118
|
+
}
|
119
|
+
|
120
|
+
/* Sidebar Reveal Buttons */
|
121
|
+
.sidebar-reveal-btn {
|
122
|
+
position: absolute;
|
123
|
+
top: 10px; /* Adjusted to be higher */
|
124
|
+
z-index: 1000;
|
125
|
+
background-color: var(--button-primary);
|
126
|
+
color: #fff;
|
127
|
+
border: none;
|
128
|
+
border-radius: 50%;
|
129
|
+
width: 40px;
|
130
|
+
height: 40px;
|
131
|
+
cursor: pointer;
|
132
|
+
transition: background-color var(--transition-duration) ease;
|
133
|
+
font-size: 1em;
|
134
|
+
display: flex;
|
135
|
+
align-items: center;
|
136
|
+
justify-content: center;
|
137
|
+
opacity: 0.6; /* Dimmed */
|
138
|
+
}
|
139
|
+
|
140
|
+
.sidebar-reveal-btn:hover {
|
141
|
+
opacity: 1; /* Fully visible on hover */
|
142
|
+
}
|
143
|
+
|
144
|
+
.sidebar-reveal-btn + .sidebar-reveal-btn {
|
145
|
+
top: 60px; /* Reduced gap */
|
146
|
+
opacity: 0.6;
|
147
|
+
}
|
148
|
+
|
149
|
+
.sidebar-reveal-btn:hover + .sidebar-reveal-btn {
|
150
|
+
opacity: 1;
|
151
|
+
}
|
152
|
+
|
153
|
+
/* Responsive Adjustments */
|
154
|
+
@media (max-width: 768px) {
|
155
|
+
.message-input-container {
|
156
|
+
flex-direction: column;
|
157
|
+
gap: 5px;
|
158
|
+
}
|
159
|
+
}
|
160
|
+
|
161
|
+
.hidden {
|
162
|
+
display: none !important;
|
163
|
+
}
|
164
|
+
|
165
|
+
.visible {
|
166
|
+
display: block;
|
167
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
/* Updated messenger-layout.css */
|
2
|
+
|
3
|
+
/* Chat Pane */
|
4
|
+
.chat-pane {
|
5
|
+
flex: 1;
|
6
|
+
display: flex;
|
7
|
+
flex-direction: row; /* Ensure horizontal layout */
|
8
|
+
/* border: 2px dashed orange; */
|
9
|
+
}
|
10
|
+
|
11
|
+
/* Form Container */
|
12
|
+
.form-container {
|
13
|
+
display: flex;
|
14
|
+
align-items: center;
|
15
|
+
/* border-top: 2px dashed magenta; */
|
16
|
+
}
|
17
|
+
|
@@ -0,0 +1,57 @@
|
|
1
|
+
/* minimalist-layout.css - Minimalist layout-specific styles */
|
2
|
+
|
3
|
+
/* General minimalist layout adjustments */
|
4
|
+
.message.assistant {
|
5
|
+
background: none; /* No box */
|
6
|
+
color: var(--text-primary);
|
7
|
+
align-self: flex-start;
|
8
|
+
width: 100%;
|
9
|
+
/* padding: 5px 10px; */
|
10
|
+
font-size: 1em;
|
11
|
+
}
|
12
|
+
|
13
|
+
.message.user {
|
14
|
+
background-color: var(--bg-message-user);
|
15
|
+
align-self: flex-end;
|
16
|
+
padding: 10px 15px;
|
17
|
+
border-radius: 8px;
|
18
|
+
max-width: 60%;
|
19
|
+
}
|
20
|
+
|
21
|
+
/* Markdown Support */
|
22
|
+
.message.assistant {
|
23
|
+
white-space: pre-wrap;
|
24
|
+
word-wrap: break-word;
|
25
|
+
}
|
26
|
+
|
27
|
+
.message.assistant strong {
|
28
|
+
font-weight: bold;
|
29
|
+
}
|
30
|
+
|
31
|
+
.message.assistant em {
|
32
|
+
font-style: italic;
|
33
|
+
}
|
34
|
+
|
35
|
+
.message.assistant code {
|
36
|
+
background-color: #f5f5f5;
|
37
|
+
padding: 2px 4px;
|
38
|
+
border-radius: 4px;
|
39
|
+
}
|
40
|
+
|
41
|
+
.message.assistant pre {
|
42
|
+
background-color: #f5f5f5;
|
43
|
+
padding: 10px;
|
44
|
+
border-radius: 8px;
|
45
|
+
overflow: auto;
|
46
|
+
}
|
47
|
+
|
48
|
+
/* Hide attach and voice buttons */
|
49
|
+
[data-theme-layout="minimalist-layout"] .form-container #uploadButton,
|
50
|
+
[data-theme-layout="minimalist-layout"] .form-container #voiceRecordButton {
|
51
|
+
display: none !important;
|
52
|
+
}
|
53
|
+
|
54
|
+
/* Expand input field to fill the gap */
|
55
|
+
[data-theme-layout="minimalist-layout"] .form-container #userInput {
|
56
|
+
width: calc(100% - 60px) !important;
|
57
|
+
}
|
@@ -0,0 +1,84 @@
|
|
1
|
+
.message-container {
|
2
|
+
display: flex;
|
3
|
+
flex-direction: column;
|
4
|
+
gap: 15px;
|
5
|
+
min-height: 0;
|
6
|
+
overflow-y: auto;
|
7
|
+
margin-bottom: 10px;
|
8
|
+
padding: 10px;
|
9
|
+
}
|
10
|
+
|
11
|
+
/* Persistent Message */
|
12
|
+
.persistent-message {
|
13
|
+
background-color: var(--bg-message-assistant);
|
14
|
+
/* border: 2px dashed var(--border-color); */
|
15
|
+
border-radius: 8px;
|
16
|
+
padding: 15px;
|
17
|
+
margin-bottom: 15px;
|
18
|
+
color: var(--text-primary);
|
19
|
+
}
|
20
|
+
|
21
|
+
/* Message Styling */
|
22
|
+
.message {
|
23
|
+
min-height: 0;
|
24
|
+
overflow: auto;
|
25
|
+
flex-shrink: 0;
|
26
|
+
background-color: var(--bg-message-user);
|
27
|
+
border-radius: 8px;
|
28
|
+
padding: 10px;
|
29
|
+
position: relative;
|
30
|
+
display: block;
|
31
|
+
}
|
32
|
+
|
33
|
+
/* Assistant Message */
|
34
|
+
.message.assistant {
|
35
|
+
background-color: var(--bg-message-assistant);
|
36
|
+
}
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
/* Toolbar Button */
|
41
|
+
.toolbar-btn {
|
42
|
+
background: none;
|
43
|
+
border: none;
|
44
|
+
cursor: pointer;
|
45
|
+
transition: transform 0.3s ease, opacity 0.3s ease;
|
46
|
+
opacity: 0.7;
|
47
|
+
}
|
48
|
+
|
49
|
+
.toolbar-btn:hover {
|
50
|
+
transform: scale(1.1);
|
51
|
+
opacity: 1;
|
52
|
+
}
|
53
|
+
|
54
|
+
.icon-svg {
|
55
|
+
width: 24px;
|
56
|
+
height: 24px;
|
57
|
+
fill: var(--text-secondary);
|
58
|
+
transition: fill 0.3s ease;
|
59
|
+
}
|
60
|
+
|
61
|
+
.toolbar-btn:hover .icon-svg {
|
62
|
+
fill: var(--button-hover);
|
63
|
+
}
|
64
|
+
.user-message {
|
65
|
+
background: #DCF8C6;
|
66
|
+
padding: 10px;
|
67
|
+
margin: 5px 0;
|
68
|
+
border-radius: 5px;
|
69
|
+
align-self: flex-end;
|
70
|
+
}
|
71
|
+
.assistant-message {
|
72
|
+
background: #E6E6E6;
|
73
|
+
padding: 10px;
|
74
|
+
margin: 5px 0;
|
75
|
+
border-radius: 5px;
|
76
|
+
align-self: flex-start;
|
77
|
+
}
|
78
|
+
.error-message {
|
79
|
+
background: #F8D7DA;
|
80
|
+
color: #721C24;
|
81
|
+
padding: 10px;
|
82
|
+
margin: 5px 0;
|
83
|
+
border-radius: 5px;
|
84
|
+
}
|