@pheem49/mint 1.6.3 → 1.7.0
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.
- package/Cargo.lock +3 -3
- package/Cargo.toml +1 -1
- package/README.md +82 -21
- package/assets/Mint_CLI.png +0 -0
- package/assets/Mint_Desktop.png +0 -0
- package/assets/Mint_Web.png +0 -0
- package/assets/Mint_WorkSpace.png +0 -0
- package/assets/Setting.png +0 -0
- package/assets/bridges.svg +4 -0
- package/assets/chat.svg +3 -0
- package/assets/code.svg +4 -0
- package/assets/features.svg +3 -0
- package/assets/imagegen.svg +5 -0
- package/assets/live2d.svg +6 -0
- package/assets/memory.svg +5 -0
- package/assets/screencapture.svg +4 -0
- package/assets/setup.svg +3 -0
- package/assets/tools.svg +4 -0
- package/bin/mint +0 -0
- package/crates/mint-cli/src/agent.rs +47 -15
- package/crates/mint-cli/src/main.rs +534 -7
- package/crates/mint-cli/src/onboard.rs +134 -1
- package/crates/mint-cli/src/setup.rs +173 -32
- package/crates/mint-core/src/api_server.rs +147 -3
- package/crates/mint-core/src/config.rs +22 -3
- package/crates/mint-core/src/image_gen.rs +895 -0
- package/crates/mint-core/src/lib.rs +4 -0
- package/crates/mint-core/src/memory.rs +27 -1
- package/crates/mint-core/src/orchestration.rs +1 -1
- package/crates/mint-core/src/plugins.rs +32 -0
- package/crates/mint-core/tests/memory_persistence.rs +28 -0
- package/package.json +1 -1
- package/src/bin/index.js +0 -0
- package/src/renderer/src/agentProgress.ts +39 -0
- package/src/renderer/src/components/ChatPanel.tsx +547 -47
- package/src/renderer/src/components/DashboardSidebar.tsx +12 -4
- package/src/renderer/src/components/ImageStudioPanel.tsx +638 -0
- package/src/renderer/src/components/MintDashboard.tsx +84 -31
- package/src/renderer/src/components/ModelPanel.tsx +2 -2
- package/src/renderer/src/components/PicturesLibrary.tsx +5 -1
- package/src/renderer/src/components/SettingsWindow.tsx +29 -20
- package/src/renderer/src/components/SpotlightWindow.tsx +8 -8
- package/src/renderer/src/components/WorkspacePanel.tsx +1 -1
- package/src/renderer/src/css/image-studio.css +722 -0
- package/src/renderer/src/css/settings.css +13 -3
- package/src/renderer/src/css/styles.css +245 -43
- package/src/renderer/src/index.css +152 -0
- package/src/renderer/src/tauri.ts +148 -0
- package/src/renderer/src-web/App.tsx +16 -1
- package/src/renderer/src-web/agentProgress.ts +39 -0
- package/src/renderer/src-web/components/ChatPanel.tsx +568 -46
- package/src/renderer/src-web/components/DashboardSidebar.tsx +10 -2
- package/src/renderer/src-web/components/ImageStudioPanel.tsx +638 -0
- package/src/renderer/src-web/components/MintDashboard.tsx +65 -19
- package/src/renderer/src-web/components/PicturesLibrary.tsx +5 -1
- package/src/renderer/src-web/components/SettingsWindow.tsx +29 -20
- package/src/renderer/src-web/css/image-studio.css +722 -0
- package/src/renderer/src-web/css/settings.css +14 -4
- package/src/renderer/src-web/css/styles.css +292 -44
- package/src/renderer/src-web/index.css +152 -0
- package/src/renderer/src-web/tauri.ts +149 -0
- package/src-tauri/src/lib.rs +65 -5
- package/src-tauri/tauri.conf.json +1 -1
|
@@ -269,7 +269,7 @@ h1 {
|
|
|
269
269
|
flex-direction: column;
|
|
270
270
|
gap: 18px;
|
|
271
271
|
width: 100%;
|
|
272
|
-
max-width:
|
|
272
|
+
max-width: 1000px;
|
|
273
273
|
margin: 0 auto;
|
|
274
274
|
animation: fadeTab 0.18s ease;
|
|
275
275
|
}
|
|
@@ -341,7 +341,7 @@ h1 {
|
|
|
341
341
|
|
|
342
342
|
.form-grid.single {
|
|
343
343
|
grid-template-columns: minmax(0, 1fr);
|
|
344
|
-
max-width:
|
|
344
|
+
max-width: 100%;
|
|
345
345
|
}
|
|
346
346
|
|
|
347
347
|
.setting-row {
|
|
@@ -595,7 +595,7 @@ input:checked + .toggle-slider::before {
|
|
|
595
595
|
.slider-stack {
|
|
596
596
|
display: grid;
|
|
597
597
|
gap: 16px;
|
|
598
|
-
max-width:
|
|
598
|
+
max-width: 100%;
|
|
599
599
|
}
|
|
600
600
|
|
|
601
601
|
.slider-group {
|
|
@@ -1055,3 +1055,13 @@ kbd {
|
|
|
1055
1055
|
grid-template-columns: minmax(0, 1fr);
|
|
1056
1056
|
}
|
|
1057
1057
|
}
|
|
1058
|
+
|
|
1059
|
+
.memory-field-container {
|
|
1060
|
+
display: flex;
|
|
1061
|
+
flex-direction: column;
|
|
1062
|
+
gap: 8px;
|
|
1063
|
+
width: 100%;
|
|
1064
|
+
align-items: flex-start;
|
|
1065
|
+
}
|
|
1066
|
+
|
|
1067
|
+
|
|
@@ -18,6 +18,16 @@
|
|
|
18
18
|
--border-light: rgba(255, 255, 255, 0.11);
|
|
19
19
|
--shadow: none;
|
|
20
20
|
--glass-blur: none;
|
|
21
|
+
--status-listening: #7dd3fc;
|
|
22
|
+
--status-thinking: var(--accent);
|
|
23
|
+
--status-speaking: #22c55e;
|
|
24
|
+
--status-error: #ef4444;
|
|
25
|
+
--hover-delete: #fca5a5;
|
|
26
|
+
--hover-delete-bg: rgba(248, 113, 113, 0.12);
|
|
27
|
+
--hover-edit: #c7d2fe;
|
|
28
|
+
--hover-edit-bg: rgba(99, 102, 241, 0.12);
|
|
29
|
+
--close-btn-hover-bg: #3a2020;
|
|
30
|
+
--close-btn-hover-color: #ff8a8a;
|
|
21
31
|
}
|
|
22
32
|
|
|
23
33
|
[data-theme="light"] {
|
|
@@ -37,6 +47,16 @@
|
|
|
37
47
|
--border: rgba(0, 0, 0, 0.06);
|
|
38
48
|
--border-light: rgba(255, 255, 255, 0.6);
|
|
39
49
|
--shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
|
|
50
|
+
--status-listening: #0284c7;
|
|
51
|
+
--status-thinking: var(--accent);
|
|
52
|
+
--status-speaking: #16a34a;
|
|
53
|
+
--status-error: #dc2626;
|
|
54
|
+
--hover-delete: #dc2626;
|
|
55
|
+
--hover-delete-bg: rgba(220, 38, 38, 0.08);
|
|
56
|
+
--hover-edit: #4f46e5;
|
|
57
|
+
--hover-edit-bg: rgba(79, 70, 229, 0.08);
|
|
58
|
+
--close-btn-hover-bg: #fee2e2;
|
|
59
|
+
--close-btn-hover-color: #dc2626;
|
|
40
60
|
}
|
|
41
61
|
|
|
42
62
|
[data-theme="midnight"] {
|
|
@@ -56,6 +76,16 @@
|
|
|
56
76
|
--border: rgba(99, 102, 241, 0.16);
|
|
57
77
|
--border-light: rgba(99, 102, 241, 0.26);
|
|
58
78
|
--shadow: none;
|
|
79
|
+
--status-listening: #7dd3fc;
|
|
80
|
+
--status-thinking: var(--accent);
|
|
81
|
+
--status-speaking: #22c55e;
|
|
82
|
+
--status-error: #fca5a5;
|
|
83
|
+
--hover-delete: #fca5a5;
|
|
84
|
+
--hover-delete-bg: rgba(248, 113, 113, 0.12);
|
|
85
|
+
--hover-edit: #c7d2fe;
|
|
86
|
+
--hover-edit-bg: rgba(99, 102, 241, 0.12);
|
|
87
|
+
--close-btn-hover-bg: #3a2020;
|
|
88
|
+
--close-btn-hover-color: #ff8a8a;
|
|
59
89
|
}
|
|
60
90
|
|
|
61
91
|
* {
|
|
@@ -107,7 +137,6 @@ body {
|
|
|
107
137
|
|
|
108
138
|
/* Header - Drag Region */
|
|
109
139
|
.drag-region {
|
|
110
|
-
app-region: no-drag;
|
|
111
140
|
-webkit-app-region: no-drag;
|
|
112
141
|
min-height: 34px;
|
|
113
142
|
padding: 0 8px;
|
|
@@ -124,7 +153,6 @@ body {
|
|
|
124
153
|
}
|
|
125
154
|
|
|
126
155
|
.header-content {
|
|
127
|
-
app-region: drag;
|
|
128
156
|
-webkit-app-region: drag;
|
|
129
157
|
display: flex;
|
|
130
158
|
align-items: center;
|
|
@@ -134,7 +162,6 @@ body {
|
|
|
134
162
|
}
|
|
135
163
|
|
|
136
164
|
.titlebar-drag-space {
|
|
137
|
-
app-region: drag;
|
|
138
165
|
-webkit-app-region: drag;
|
|
139
166
|
align-self: stretch;
|
|
140
167
|
min-width: 0;
|
|
@@ -165,7 +192,6 @@ h1 {
|
|
|
165
192
|
.header-actions,
|
|
166
193
|
.header-utility,
|
|
167
194
|
.window-controls {
|
|
168
|
-
app-region: no-drag;
|
|
169
195
|
-webkit-app-region: no-drag;
|
|
170
196
|
display: flex;
|
|
171
197
|
align-items: center;
|
|
@@ -197,7 +223,6 @@ h1 {
|
|
|
197
223
|
.clear-btn,
|
|
198
224
|
.settings-btn {
|
|
199
225
|
-webkit-app-region: no-drag;
|
|
200
|
-
app-region: no-drag;
|
|
201
226
|
min-width: 0;
|
|
202
227
|
height: 28px;
|
|
203
228
|
border: 1px solid transparent;
|
|
@@ -231,7 +256,6 @@ h1 {
|
|
|
231
256
|
.maximize-btn,
|
|
232
257
|
.minimize-btn {
|
|
233
258
|
-webkit-app-region: no-drag;
|
|
234
|
-
app-region: no-drag;
|
|
235
259
|
background: transparent;
|
|
236
260
|
border: none;
|
|
237
261
|
color: var(--text-muted);
|
|
@@ -373,6 +397,30 @@ h1 {
|
|
|
373
397
|
opacity: 1;
|
|
374
398
|
}
|
|
375
399
|
|
|
400
|
+
/* pictures header actions */
|
|
401
|
+
|
|
402
|
+
.picture-refresh-btn {
|
|
403
|
+
-webkit-app-region: no-drag;
|
|
404
|
+
height: 28px;
|
|
405
|
+
min-width: 0;
|
|
406
|
+
padding: 0 8px;
|
|
407
|
+
display: inline-flex;
|
|
408
|
+
align-items: center;
|
|
409
|
+
justify-content: center;
|
|
410
|
+
gap: 8px;
|
|
411
|
+
border-radius: 6px;
|
|
412
|
+
background: transparent;
|
|
413
|
+
color: var(--text-muted);
|
|
414
|
+
border: 1px solid transparent;
|
|
415
|
+
cursor: pointer;
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
.picture-refresh-btn:hover {
|
|
419
|
+
background: color-mix(in srgb, var(--accent) 10%, transparent);
|
|
420
|
+
border-color: color-mix(in srgb, var(--accent) 16%, transparent);
|
|
421
|
+
color: var(--accent);
|
|
422
|
+
}
|
|
423
|
+
|
|
376
424
|
.interaction-guide-btn:hover {
|
|
377
425
|
background: rgba(34, 211, 238, 0.14);
|
|
378
426
|
border-color: rgba(34, 211, 238, 0.2);
|
|
@@ -805,8 +853,9 @@ h1 {
|
|
|
805
853
|
}
|
|
806
854
|
|
|
807
855
|
.conversation-panel {
|
|
808
|
-
|
|
809
|
-
|
|
856
|
+
/* Make conversation panel wider by default */
|
|
857
|
+
flex: 0 1 720px;
|
|
858
|
+
min-width: 600px;
|
|
810
859
|
display: flex;
|
|
811
860
|
flex-direction: column;
|
|
812
861
|
min-height: 0;
|
|
@@ -853,7 +902,7 @@ h1 {
|
|
|
853
902
|
|
|
854
903
|
.message {
|
|
855
904
|
display: flex;
|
|
856
|
-
max-width:
|
|
905
|
+
max-width: 95%;
|
|
857
906
|
animation: messagePopIn 0.5s cubic-bezier(0.2, 0.9, 0.3, 1.2) forwards;
|
|
858
907
|
opacity: 0;
|
|
859
908
|
transform: translateY(15px) scale(0.95);
|
|
@@ -1042,24 +1091,26 @@ h1 {
|
|
|
1042
1091
|
}
|
|
1043
1092
|
|
|
1044
1093
|
.ai-message .message-bubble {
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
border
|
|
1050
|
-
border-
|
|
1051
|
-
|
|
1052
|
-
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
|
|
1094
|
+
/* Render AI replies without a framed bubble — plain inline text */
|
|
1095
|
+
background: transparent;
|
|
1096
|
+
backdrop-filter: none;
|
|
1097
|
+
-webkit-backdrop-filter: none;
|
|
1098
|
+
border: none;
|
|
1099
|
+
border-radius: 0;
|
|
1100
|
+
box-shadow: none;
|
|
1053
1101
|
color: var(--text-main);
|
|
1102
|
+
padding: 0; /* keep spacing handled by wrapper */
|
|
1054
1103
|
}
|
|
1055
1104
|
|
|
1056
1105
|
.message.ai-message.thinking-message .message-bubble {
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1106
|
+
/* Keep thinking state unframed too */
|
|
1107
|
+
background: transparent !important;
|
|
1108
|
+
border: none !important;
|
|
1109
|
+
box-shadow: none !important;
|
|
1060
1110
|
color: var(--text-muted) !important;
|
|
1061
1111
|
backdrop-filter: none !important;
|
|
1062
1112
|
-webkit-backdrop-filter: none !important;
|
|
1113
|
+
padding: 0 !important;
|
|
1063
1114
|
}
|
|
1064
1115
|
|
|
1065
1116
|
|
|
@@ -1270,8 +1321,8 @@ h1 {
|
|
|
1270
1321
|
.approval-card {
|
|
1271
1322
|
align-items: stretch;
|
|
1272
1323
|
flex-direction: column;
|
|
1273
|
-
background:
|
|
1274
|
-
border-color:
|
|
1324
|
+
background: transparent;
|
|
1325
|
+
border-color: transparent;
|
|
1275
1326
|
}
|
|
1276
1327
|
|
|
1277
1328
|
.approval-card[data-tier="dangerous"] {
|
|
@@ -1678,6 +1729,146 @@ h1 {
|
|
|
1678
1729
|
line-height: 1;
|
|
1679
1730
|
}
|
|
1680
1731
|
|
|
1732
|
+
/* ── Thinking Block ─────────────────────────────────────── */
|
|
1733
|
+
.thinking-block {
|
|
1734
|
+
margin-bottom: 6px;
|
|
1735
|
+
border-radius: 8px;
|
|
1736
|
+
border: 1px solid rgba(148, 163, 184, 0.18);
|
|
1737
|
+
background: rgba(148, 163, 184, 0.04);
|
|
1738
|
+
overflow: hidden;
|
|
1739
|
+
animation: agent-activity-slide-up-fade 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
|
|
1740
|
+
}
|
|
1741
|
+
|
|
1742
|
+
.thinking-block-header {
|
|
1743
|
+
display: flex;
|
|
1744
|
+
align-items: center;
|
|
1745
|
+
gap: 7px;
|
|
1746
|
+
width: 100%;
|
|
1747
|
+
padding: 6px 10px;
|
|
1748
|
+
background: transparent;
|
|
1749
|
+
border: 0;
|
|
1750
|
+
color: #94a3b8;
|
|
1751
|
+
font-size: 0.76rem;
|
|
1752
|
+
font-weight: 500;
|
|
1753
|
+
cursor: pointer;
|
|
1754
|
+
text-align: left;
|
|
1755
|
+
transition: background 0.15s ease, color 0.15s ease;
|
|
1756
|
+
user-select: none;
|
|
1757
|
+
}
|
|
1758
|
+
|
|
1759
|
+
.thinking-block-header:hover {
|
|
1760
|
+
background: rgba(148, 163, 184, 0.08);
|
|
1761
|
+
color: #cbd5e1;
|
|
1762
|
+
}
|
|
1763
|
+
|
|
1764
|
+
.thinking-block-label {
|
|
1765
|
+
flex: 1;
|
|
1766
|
+
min-width: 0;
|
|
1767
|
+
}
|
|
1768
|
+
|
|
1769
|
+
.thinking-block-live-dot {
|
|
1770
|
+
width: 6px;
|
|
1771
|
+
height: 6px;
|
|
1772
|
+
border-radius: 50%;
|
|
1773
|
+
background: #94a3b8;
|
|
1774
|
+
flex-shrink: 0;
|
|
1775
|
+
animation: thinkingDotPulse 1.4s ease-in-out infinite;
|
|
1776
|
+
}
|
|
1777
|
+
|
|
1778
|
+
@keyframes thinkingDotPulse {
|
|
1779
|
+
0%, 100% {
|
|
1780
|
+
opacity: 0.4;
|
|
1781
|
+
transform: scale(0.85);
|
|
1782
|
+
}
|
|
1783
|
+
50% {
|
|
1784
|
+
opacity: 1;
|
|
1785
|
+
transform: scale(1.1);
|
|
1786
|
+
}
|
|
1787
|
+
}
|
|
1788
|
+
|
|
1789
|
+
.thinking-block-chevron {
|
|
1790
|
+
color: rgba(148, 163, 184, 0.6);
|
|
1791
|
+
flex-shrink: 0;
|
|
1792
|
+
display: inline-flex;
|
|
1793
|
+
align-items: center;
|
|
1794
|
+
transition: transform 0.2s ease;
|
|
1795
|
+
}
|
|
1796
|
+
|
|
1797
|
+
.thinking-block-chevron.is-open {
|
|
1798
|
+
transform: rotate(90deg);
|
|
1799
|
+
}
|
|
1800
|
+
|
|
1801
|
+
.thinking-block-body {
|
|
1802
|
+
border-top: 1px solid rgba(148, 163, 184, 0.12);
|
|
1803
|
+
animation: thinkingBodyIn 0.18s ease;
|
|
1804
|
+
}
|
|
1805
|
+
|
|
1806
|
+
@keyframes thinkingBodyIn {
|
|
1807
|
+
from {
|
|
1808
|
+
opacity: 0;
|
|
1809
|
+
transform: translateY(-4px);
|
|
1810
|
+
}
|
|
1811
|
+
to {
|
|
1812
|
+
opacity: 1;
|
|
1813
|
+
transform: translateY(0);
|
|
1814
|
+
}
|
|
1815
|
+
}
|
|
1816
|
+
|
|
1817
|
+
.thinking-block-content {
|
|
1818
|
+
padding: 8px 12px 10px;
|
|
1819
|
+
font-size: 0.76rem;
|
|
1820
|
+
line-height: 1.6;
|
|
1821
|
+
color: #64748b;
|
|
1822
|
+
white-space: pre-wrap;
|
|
1823
|
+
max-height: 260px;
|
|
1824
|
+
overflow-y: auto;
|
|
1825
|
+
user-select: text;
|
|
1826
|
+
}
|
|
1827
|
+
|
|
1828
|
+
.thinking-block-step + .thinking-block-step {
|
|
1829
|
+
margin-top: 10px;
|
|
1830
|
+
padding-top: 10px;
|
|
1831
|
+
border-top: 1px dashed rgba(148, 163, 184, 0.16);
|
|
1832
|
+
}
|
|
1833
|
+
|
|
1834
|
+
.thinking-block-step-label {
|
|
1835
|
+
font-size: 0.68rem;
|
|
1836
|
+
font-weight: 600;
|
|
1837
|
+
letter-spacing: 0.02em;
|
|
1838
|
+
color: #94a3b8;
|
|
1839
|
+
margin-bottom: 4px;
|
|
1840
|
+
font-style: normal;
|
|
1841
|
+
}
|
|
1842
|
+
|
|
1843
|
+
.thinking-block-step-body {
|
|
1844
|
+
font-style: italic;
|
|
1845
|
+
}
|
|
1846
|
+
|
|
1847
|
+
.thinking-block-empty-state {
|
|
1848
|
+
padding: 6px 10px;
|
|
1849
|
+
}
|
|
1850
|
+
|
|
1851
|
+
.thinking-block-empty {
|
|
1852
|
+
display: block;
|
|
1853
|
+
font-size: 0.74rem;
|
|
1854
|
+
line-height: 1.5;
|
|
1855
|
+
color: #64748b;
|
|
1856
|
+
font-style: italic;
|
|
1857
|
+
}
|
|
1858
|
+
|
|
1859
|
+
.thinking-block-content::-webkit-scrollbar {
|
|
1860
|
+
width: 3px;
|
|
1861
|
+
}
|
|
1862
|
+
|
|
1863
|
+
.thinking-block-content::-webkit-scrollbar-track {
|
|
1864
|
+
background: transparent;
|
|
1865
|
+
}
|
|
1866
|
+
|
|
1867
|
+
.thinking-block-content::-webkit-scrollbar-thumb {
|
|
1868
|
+
background: rgba(148, 163, 184, 0.22);
|
|
1869
|
+
border-radius: 2px;
|
|
1870
|
+
}
|
|
1871
|
+
|
|
1681
1872
|
/* Smart Context Toggle */
|
|
1682
1873
|
.smart-context-bar {
|
|
1683
1874
|
display: flex;
|
|
@@ -2172,13 +2363,13 @@ input:checked + .slider:before {
|
|
|
2172
2363
|
}
|
|
2173
2364
|
|
|
2174
2365
|
.sidebar-chat-delete:hover {
|
|
2175
|
-
color:
|
|
2176
|
-
background:
|
|
2366
|
+
color: var(--hover-delete);
|
|
2367
|
+
background: var(--hover-delete-bg);
|
|
2177
2368
|
}
|
|
2178
2369
|
|
|
2179
2370
|
.sidebar-chat-edit:hover {
|
|
2180
|
-
color:
|
|
2181
|
-
background:
|
|
2371
|
+
color: var(--hover-edit);
|
|
2372
|
+
background: var(--hover-edit-bg);
|
|
2182
2373
|
}
|
|
2183
2374
|
|
|
2184
2375
|
.sidebar-chat-rename-input {
|
|
@@ -2270,49 +2461,49 @@ input:checked + .slider:before {
|
|
|
2270
2461
|
|
|
2271
2462
|
.mint-status-pill[data-state="listening"],
|
|
2272
2463
|
.model-activity-badge[data-state="listening"] {
|
|
2273
|
-
color:
|
|
2464
|
+
color: var(--status-listening);
|
|
2274
2465
|
}
|
|
2275
2466
|
|
|
2276
2467
|
.mint-status-pill[data-state="listening"] .mint-status-dot,
|
|
2277
2468
|
.model-activity-badge[data-state="listening"] .mint-status-dot {
|
|
2278
|
-
background:
|
|
2279
|
-
box-shadow: 0 0 0 3px
|
|
2469
|
+
background: var(--status-listening);
|
|
2470
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--status-listening) 16%, transparent);
|
|
2280
2471
|
animation: mintStatusPulse 1.2s ease-in-out infinite;
|
|
2281
2472
|
}
|
|
2282
2473
|
|
|
2283
2474
|
.mint-status-pill[data-state="thinking"],
|
|
2284
2475
|
.model-activity-badge[data-state="thinking"] {
|
|
2285
|
-
color:
|
|
2476
|
+
color: var(--status-thinking);
|
|
2286
2477
|
}
|
|
2287
2478
|
|
|
2288
2479
|
.mint-status-pill[data-state="thinking"] .mint-status-dot,
|
|
2289
2480
|
.model-activity-badge[data-state="thinking"] .mint-status-dot {
|
|
2290
|
-
background: var(--
|
|
2291
|
-
box-shadow: 0 0 0 3px color-mix(in srgb, var(--
|
|
2481
|
+
background: var(--status-thinking);
|
|
2482
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--status-thinking) 20%, transparent);
|
|
2292
2483
|
animation: mintStatusPulse 1s ease-in-out infinite;
|
|
2293
2484
|
}
|
|
2294
2485
|
|
|
2295
2486
|
.mint-status-pill[data-state="speaking"],
|
|
2296
2487
|
.model-activity-badge[data-state="speaking"] {
|
|
2297
|
-
color:
|
|
2488
|
+
color: var(--status-speaking);
|
|
2298
2489
|
}
|
|
2299
2490
|
|
|
2300
2491
|
.mint-status-pill[data-state="speaking"] .mint-status-dot,
|
|
2301
2492
|
.model-activity-badge[data-state="speaking"] .mint-status-dot {
|
|
2302
|
-
background:
|
|
2303
|
-
box-shadow: 0 0 0 3px
|
|
2493
|
+
background: var(--status-speaking);
|
|
2494
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--status-speaking) 16%, transparent);
|
|
2304
2495
|
animation: mintStatusPulse 0.9s ease-in-out infinite;
|
|
2305
2496
|
}
|
|
2306
2497
|
|
|
2307
2498
|
.mint-status-pill[data-state="error"],
|
|
2308
2499
|
.model-activity-badge[data-state="error"] {
|
|
2309
|
-
color:
|
|
2500
|
+
color: var(--status-error);
|
|
2310
2501
|
}
|
|
2311
2502
|
|
|
2312
2503
|
.mint-status-pill[data-state="error"] .mint-status-dot,
|
|
2313
2504
|
.model-activity-badge[data-state="error"] .mint-status-dot {
|
|
2314
|
-
background:
|
|
2315
|
-
box-shadow: 0 0 0 3px
|
|
2505
|
+
background: var(--status-error);
|
|
2506
|
+
box-shadow: 0 0 0 3px color-mix(in srgb, var(--status-error) 16%, transparent);
|
|
2316
2507
|
}
|
|
2317
2508
|
|
|
2318
2509
|
@keyframes mintStatusPulse {
|
|
@@ -3131,13 +3322,15 @@ input:checked + .slider:before {
|
|
|
3131
3322
|
|
|
3132
3323
|
.ai-message .message-bubble,
|
|
3133
3324
|
.typing-indicator {
|
|
3134
|
-
|
|
3135
|
-
|
|
3136
|
-
border
|
|
3325
|
+
/* Keep AI messages unframed here as well */
|
|
3326
|
+
background: transparent;
|
|
3327
|
+
border: none;
|
|
3328
|
+
border-radius: 0;
|
|
3137
3329
|
color: var(--text-main);
|
|
3138
3330
|
backdrop-filter: none;
|
|
3139
3331
|
-webkit-backdrop-filter: none;
|
|
3140
3332
|
box-shadow: none;
|
|
3333
|
+
padding: 0; /* spacing handled by wrapper */
|
|
3141
3334
|
}
|
|
3142
3335
|
|
|
3143
3336
|
.user-message .message-bubble {
|
|
@@ -3152,6 +3345,15 @@ input:checked + .slider:before {
|
|
|
3152
3345
|
color: var(--accent-hover);
|
|
3153
3346
|
}
|
|
3154
3347
|
|
|
3348
|
+
/* Force AI replies to render as plain inline text (no bubble/frame). */
|
|
3349
|
+
.message.ai-message .message-bubble {
|
|
3350
|
+
background: transparent !important;
|
|
3351
|
+
border: none !important;
|
|
3352
|
+
box-shadow: none !important;
|
|
3353
|
+
border-radius: 0 !important;
|
|
3354
|
+
padding: 0 !important;
|
|
3355
|
+
}
|
|
3356
|
+
|
|
3155
3357
|
.input-area {
|
|
3156
3358
|
flex: 0 0 auto;
|
|
3157
3359
|
padding: 0;
|
|
@@ -3609,8 +3811,8 @@ input:checked + .slider:before {
|
|
|
3609
3811
|
}
|
|
3610
3812
|
|
|
3611
3813
|
.close-btn:hover {
|
|
3612
|
-
background:
|
|
3613
|
-
color:
|
|
3814
|
+
background: var(--close-btn-hover-bg);
|
|
3815
|
+
color: var(--close-btn-hover-color);
|
|
3614
3816
|
}
|
|
3615
3817
|
|
|
3616
3818
|
.assistant-workspace.layout-horizontal {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
@import './css/settings.css';
|
|
3
3
|
@import './css/spotlight.css';
|
|
4
4
|
@import './css/widget.css';
|
|
5
|
+
@import './css/image-studio.css';
|
|
5
6
|
|
|
6
7
|
* {
|
|
7
8
|
box-sizing: border-box;
|
|
@@ -377,3 +378,154 @@ button {
|
|
|
377
378
|
text-align: center;
|
|
378
379
|
}
|
|
379
380
|
}
|
|
381
|
+
|
|
382
|
+
/* Premium Markdown Styles for Chat Messages */
|
|
383
|
+
.chat-inline-code {
|
|
384
|
+
background: rgba(16, 185, 129, 0.15);
|
|
385
|
+
border: 1px solid rgba(16, 185, 129, 0.25);
|
|
386
|
+
color: #34d399;
|
|
387
|
+
padding: 2px 6px;
|
|
388
|
+
border-radius: 6px;
|
|
389
|
+
font-family: 'Fira Code', 'Courier New', Courier, monospace;
|
|
390
|
+
font-size: 0.88em;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
.chat-code-block-container {
|
|
394
|
+
display: flex;
|
|
395
|
+
flex-direction: column;
|
|
396
|
+
background: var(--input-bg, #0f172a);
|
|
397
|
+
border: 1px solid var(--border);
|
|
398
|
+
border-radius: 8px;
|
|
399
|
+
margin: 12px 0;
|
|
400
|
+
overflow: hidden;
|
|
401
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
.chat-code-block-header {
|
|
405
|
+
display: flex;
|
|
406
|
+
align-items: center;
|
|
407
|
+
justify-content: space-between;
|
|
408
|
+
background: var(--surface-bg, #1e293b);
|
|
409
|
+
padding: 8px 14px;
|
|
410
|
+
border-bottom: 1px solid var(--border);
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
.chat-code-block-lang {
|
|
414
|
+
color: var(--accent);
|
|
415
|
+
font-size: 0.78rem;
|
|
416
|
+
font-weight: 650;
|
|
417
|
+
text-transform: capitalize;
|
|
418
|
+
font-family: ui-sans-serif, system-ui, sans-serif;
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
.chat-code-block-actions {
|
|
422
|
+
display: flex;
|
|
423
|
+
gap: 10px;
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
.chat-code-action-btn {
|
|
427
|
+
background: transparent;
|
|
428
|
+
border: none;
|
|
429
|
+
color: var(--text-soft, #94a3b8);
|
|
430
|
+
cursor: pointer;
|
|
431
|
+
padding: 4px;
|
|
432
|
+
border-radius: 4px;
|
|
433
|
+
display: flex;
|
|
434
|
+
align-items: center;
|
|
435
|
+
justify-content: center;
|
|
436
|
+
transition: all 0.2s ease;
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
.chat-code-action-btn:hover {
|
|
440
|
+
background: rgba(255, 255, 255, 0.05);
|
|
441
|
+
color: var(--accent-hover, #34d399);
|
|
442
|
+
}
|
|
443
|
+
|
|
444
|
+
.chat-code-block-body {
|
|
445
|
+
margin: 0;
|
|
446
|
+
padding: 14px;
|
|
447
|
+
overflow-x: auto;
|
|
448
|
+
background: var(--input-bg, #0f172a);
|
|
449
|
+
}
|
|
450
|
+
|
|
451
|
+
.chat-code-block-body code {
|
|
452
|
+
font-family: 'Fira Code', 'Courier New', Courier, monospace;
|
|
453
|
+
font-size: 0.88rem;
|
|
454
|
+
color: var(--text-main, #e2e8f0);
|
|
455
|
+
line-height: 1.5;
|
|
456
|
+
white-space: pre;
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
.chat-ordered-list,
|
|
460
|
+
.chat-unordered-list {
|
|
461
|
+
margin: 8px 0;
|
|
462
|
+
padding-left: 24px;
|
|
463
|
+
}
|
|
464
|
+
|
|
465
|
+
.chat-ordered-list {
|
|
466
|
+
list-style-type: decimal;
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
.chat-unordered-list {
|
|
470
|
+
list-style-type: disc;
|
|
471
|
+
}
|
|
472
|
+
|
|
473
|
+
.chat-bold-highlight {
|
|
474
|
+
color: var(--accent) !important;
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
.chat-inline-code {
|
|
478
|
+
background: color-mix(in srgb, var(--accent) 12%, transparent);
|
|
479
|
+
border: 1px solid color-mix(in srgb, var(--accent) 24%, transparent);
|
|
480
|
+
color: var(--accent);
|
|
481
|
+
padding: 2px 6px;
|
|
482
|
+
border-radius: 4px;
|
|
483
|
+
font-family: 'Fira Code', 'Courier New', Courier, monospace;
|
|
484
|
+
font-size: 0.9em;
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
/* Premium Table Styles for Chat Panel */
|
|
488
|
+
.chat-table-container {
|
|
489
|
+
overflow-x: auto;
|
|
490
|
+
margin: 14px 0;
|
|
491
|
+
width: 100%;
|
|
492
|
+
border-radius: 8px;
|
|
493
|
+
border: 1px solid rgba(255, 255, 255, 0.12);
|
|
494
|
+
background: rgba(30, 41, 59, 0.35);
|
|
495
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
.chat-table {
|
|
499
|
+
width: 100%;
|
|
500
|
+
border-collapse: collapse;
|
|
501
|
+
font-size: 0.86rem;
|
|
502
|
+
text-align: left;
|
|
503
|
+
line-height: 1.5;
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
.chat-table th {
|
|
507
|
+
padding: 12px 16px;
|
|
508
|
+
font-weight: 700;
|
|
509
|
+
color: var(--accent);
|
|
510
|
+
background: rgba(255, 255, 255, 0.04);
|
|
511
|
+
border-bottom: 2px solid rgba(255, 255, 255, 0.15);
|
|
512
|
+
font-family: ui-sans-serif, system-ui, sans-serif;
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
.chat-table td {
|
|
516
|
+
padding: 12px 16px;
|
|
517
|
+
color: var(--text-main, #e2e8f0);
|
|
518
|
+
border-bottom: 1px solid rgba(255, 255, 255, 0.08);
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
.chat-table tbody tr {
|
|
522
|
+
transition: background 0.15s ease;
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
.chat-table tbody tr:hover {
|
|
526
|
+
background: rgba(255, 255, 255, 0.03);
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
.chat-table tbody tr:last-child td {
|
|
530
|
+
border-bottom: none;
|
|
531
|
+
}
|