@vibe-forge/client 0.11.0 → 0.11.2

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.
Files changed (97) hide show
  1. package/cli.cjs +6 -1
  2. package/dist/assets/{arc-M4HYfcHs.js → arc-De_WjPJ3.js} +1 -1
  3. package/dist/assets/{blockDiagram-c4efeb88-CUrDjrxj.js → blockDiagram-c4efeb88-C4aR2zTE.js} +1 -1
  4. package/dist/assets/{c4Diagram-c83219d4-BMEtqlFp.js → c4Diagram-c83219d4-BZH3rq_m.js} +1 -1
  5. package/dist/assets/channel-BvERb8WU.js +1 -0
  6. package/dist/assets/{classDiagram-beda092f-BOmDJ0Ml.js → classDiagram-beda092f-BzJgBrIK.js} +1 -1
  7. package/dist/assets/{classDiagram-v2-2358418a-BODzX2MB.js → classDiagram-v2-2358418a-5ZtXcnT3.js} +1 -1
  8. package/dist/assets/clone-B9_0v-6Y.js +1 -0
  9. package/dist/assets/{createText-1719965b-B9Dd8zcR.js → createText-1719965b-DUVvEtmR.js} +1 -1
  10. package/dist/assets/{cssMode-DLxG92Ot.js → cssMode-GoTNjuXX.js} +1 -1
  11. package/dist/assets/{edges-96097737-CuZFd43m.js → edges-96097737-Dd7m4Cvs.js} +1 -1
  12. package/dist/assets/{erDiagram-0228fc6a-8g9lu2-Z.js → erDiagram-0228fc6a-DxqFlG_f.js} +1 -1
  13. package/dist/assets/{flowDb-c6c81e3f-BlBS1tdN.js → flowDb-c6c81e3f-DU0C5kCI.js} +1 -1
  14. package/dist/assets/{flowDiagram-50d868cf-u6mWflpF.js → flowDiagram-50d868cf-Di1uDa_X.js} +1 -1
  15. package/dist/assets/flowDiagram-v2-4f6560a1-LpS8Kb00.js +1 -0
  16. package/dist/assets/{flowchart-elk-definition-6af322e1-BDqI2NFr.js → flowchart-elk-definition-6af322e1-CwG8aty5.js} +1 -1
  17. package/dist/assets/{freemarker2-tVtpTMPu.js → freemarker2-j39cqTlI.js} +1 -1
  18. package/dist/assets/{ganttDiagram-a2739b55-CDQjx9Wu.js → ganttDiagram-a2739b55-baO_lzL-.js} +1 -1
  19. package/dist/assets/{gitGraphDiagram-82fe8481-DUHFKRVA.js → gitGraphDiagram-82fe8481-COoHjYMf.js} +1 -1
  20. package/dist/assets/{graph-2HKPi5B_.js → graph-KxESr4M5.js} +1 -1
  21. package/dist/assets/{handlebars-D00tgNd8.js → handlebars-BgjdZO8G.js} +1 -1
  22. package/dist/assets/{html-B-TDzBiR.js → html-Ba7tYObe.js} +1 -1
  23. package/dist/assets/{htmlMode-ClycqSTM.js → htmlMode-Bztvbig1.js} +1 -1
  24. package/dist/assets/{index-5325376f-DPrJpRQ-.js → index-5325376f-BMTAx2mL.js} +1 -1
  25. package/dist/assets/index-C1oh0w9H.css +32 -0
  26. package/dist/assets/{index-CAHZZEoo.js → index-Pm_kLJvG.js} +330 -326
  27. package/dist/assets/{infoDiagram-8eee0895-Co5tS1I5.js → infoDiagram-8eee0895-CC74qbHY.js} +1 -1
  28. package/dist/assets/{javascript-zbkwarmb.js → javascript-C1e1cllX.js} +1 -1
  29. package/dist/assets/{journeyDiagram-c64418c1-k_qioHgy.js → journeyDiagram-c64418c1-C4MyOdE6.js} +1 -1
  30. package/dist/assets/{jsonMode-C3CSpzBF.js → jsonMode-BC98AlvF.js} +1 -1
  31. package/dist/assets/{layout-CjOXKxvs.js → layout-CxAyTlr7.js} +1 -1
  32. package/dist/assets/{line-C-XnQrKR.js → line-DhaUfI71.js} +1 -1
  33. package/dist/assets/{linear-C7MMERzS.js → linear-MYukzldK.js} +1 -1
  34. package/dist/assets/{liquid-5G37EU6K.js → liquid-DahfJEYl.js} +1 -1
  35. package/dist/assets/{lspLanguageFeatures-zaDMuhCE.js → lspLanguageFeatures-BWDJcswW.js} +1 -1
  36. package/dist/assets/{mdx-Bc-LY0gi.js → mdx-BELlF_FD.js} +1 -1
  37. package/dist/assets/{mermaid.core-CechbHof.js → mermaid.core-BrQnSGSY.js} +4 -4
  38. package/dist/assets/{mindmap-definition-8da855dc-ejftCDGb.js → mindmap-definition-8da855dc-B0FoxTiy.js} +1 -1
  39. package/dist/assets/{pieDiagram-a8764435-DY__X3Qj.js → pieDiagram-a8764435-Ddr2cjSL.js} +1 -1
  40. package/dist/assets/{python-vK2Ff2J5.js → python--C9if_AD.js} +1 -1
  41. package/dist/assets/{quadrantDiagram-1e28029f-azIZCv_2.js → quadrantDiagram-1e28029f-BlEs7Mrl.js} +1 -1
  42. package/dist/assets/{razor-BipjBJKu.js → razor-B9U9JxKn.js} +1 -1
  43. package/dist/assets/{requirementDiagram-08caed73-C4EB0Xs2.js → requirementDiagram-08caed73-kEFOAu2v.js} +1 -1
  44. package/dist/assets/{sankeyDiagram-a04cb91d-PNhR6YWu.js → sankeyDiagram-a04cb91d-BBghez8I.js} +1 -1
  45. package/dist/assets/{sequenceDiagram-c5b8d532-4c-qV-Ri.js → sequenceDiagram-c5b8d532-CJqgzdUE.js} +1 -1
  46. package/dist/assets/{stateDiagram-1ecb1508-CnURumPE.js → stateDiagram-1ecb1508-BER4XEI6.js} +1 -1
  47. package/dist/assets/{stateDiagram-v2-c2b004d7-DR2qHTPg.js → stateDiagram-v2-c2b004d7-EBV2vSks.js} +1 -1
  48. package/dist/assets/{styles-b4e223ce-B2PWXT_i.js → styles-b4e223ce-k0eswZsE.js} +1 -1
  49. package/dist/assets/{styles-ca3715f6-DEhgVF5H.js → styles-ca3715f6-Ckr7GA-0.js} +1 -1
  50. package/dist/assets/{styles-d45a18b0-DyzccA5F.js → styles-d45a18b0-C1bpSwV3.js} +1 -1
  51. package/dist/assets/{svgDrawCommon-b86b1483-C_1tMhxp.js → svgDrawCommon-b86b1483-CDtKpGvy.js} +1 -1
  52. package/dist/assets/{timeline-definition-faaaa080-FdaC0dQH.js → timeline-definition-faaaa080-BeGR-vua.js} +1 -1
  53. package/dist/assets/{tsMode-CrMC5T3_.js → tsMode-D_gJXIy3.js} +1 -1
  54. package/dist/assets/{typescript-CRfPu8v7.js → typescript-BoKcNXkN.js} +1 -1
  55. package/dist/assets/{xml-jlRvQfFI.js → xml-DZvURlJ-.js} +1 -1
  56. package/dist/assets/{xychartDiagram-f5964ef8-sxjv75h9.js → xychartDiagram-f5964ef8-DxfeLuYV.js} +1 -1
  57. package/dist/assets/{yaml-B47_IHOH.js → yaml-CTC8PAGY.js} +1 -1
  58. package/dist/index.html +2 -2
  59. package/package.json +9 -9
  60. package/src/api/git.ts +78 -0
  61. package/src/api.ts +24 -0
  62. package/src/components/chat/ChatHeader.tsx +4 -0
  63. package/src/components/chat/git-controls/BranchSwitcherDropdown.tsx +157 -0
  64. package/src/components/chat/git-controls/ChatGitControls.scss +616 -0
  65. package/src/components/chat/git-controls/ChatGitControls.tsx +151 -0
  66. package/src/components/chat/git-controls/GitCommitModal.tsx +199 -0
  67. package/src/components/chat/git-controls/GitCommitModalParts.tsx +151 -0
  68. package/src/components/chat/git-controls/GitOperationsDropdown.tsx +123 -0
  69. package/src/components/chat/git-controls/GitPushModal.tsx +106 -0
  70. package/src/components/chat/git-controls/GitWorktreeDropdown.tsx +68 -0
  71. package/src/components/chat/git-controls/git-branch-utils.ts +88 -0
  72. package/src/components/chat/git-controls/git-commit-utils.ts +79 -0
  73. package/src/components/chat/git-controls/git-mutation-utils.ts +69 -0
  74. package/src/components/chat/git-controls/git-operation-utils.ts +98 -0
  75. package/src/components/chat/git-controls/git-worktree-utils.ts +49 -0
  76. package/src/components/chat/git-controls/use-chat-git-commit.ts +185 -0
  77. package/src/components/chat/git-controls/use-chat-git-controls.ts +200 -0
  78. package/src/components/chat/git-controls/use-chat-git-push-state.ts +19 -0
  79. package/src/components/chat/git-controls/use-chat-git-worktrees.ts +39 -0
  80. package/src/components/chat/tools/DefaultTool.tsx +40 -31
  81. package/src/components/chat/tools/adapter-claude/GenericClaudeTool.tsx +1 -15
  82. package/src/components/chat/tools/adapter-claude/claude-tool-edit-builders.ts +8 -1
  83. package/src/components/chat/tools/adapter-claude/claude-tool-field-sections.tsx +10 -95
  84. package/src/components/chat/tools/core/ToolCallBox.scss +18 -0
  85. package/src/components/chat/tools/core/generic-tool-presentation.ts +661 -0
  86. package/src/components/chat/tools/core/tool-display.ts +12 -1
  87. package/src/components/chat/tools/core/tool-field-sections.tsx +132 -0
  88. package/src/components/chat/tools/core/tool-summary.ts +18 -6
  89. package/src/components/chat/tools/plugin-chrome-devtools/ChromeDevtoolsTool.tsx +0 -7
  90. package/src/hooks/chat/session-view-cache.ts +80 -0
  91. package/src/hooks/chat/use-chat-session-messages.ts +124 -30
  92. package/src/resources/locales/en.json +72 -4
  93. package/src/resources/locales/zh.json +72 -4
  94. package/dist/assets/channel-Cj3Cp2OJ.js +0 -1
  95. package/dist/assets/clone-B7Q9B1dS.js +0 -1
  96. package/dist/assets/flowDiagram-v2-4f6560a1-G3v545eF.js +0 -1
  97. package/dist/assets/index-Di7lePfb.css +0 -32
@@ -0,0 +1,616 @@
1
+ .chat-header-git {
2
+ display: flex;
3
+ align-items: center;
4
+ gap: 4px;
5
+ }
6
+
7
+ .chat-header-git__split {
8
+ min-width: 0;
9
+ display: inline-flex;
10
+ align-items: center;
11
+ }
12
+
13
+ .chat-header-git__split-main.ant-btn.ant-btn-text,
14
+ .chat-header-git__split-toggle.ant-btn.ant-btn-text,
15
+ .chat-header-git__trigger.ant-btn.ant-btn-text {
16
+ height: 24px;
17
+ margin: 0;
18
+ border: 0;
19
+ border-radius: 6px;
20
+ background: transparent;
21
+ color: var(--sub-text-color, #6b7280);
22
+ box-shadow: none;
23
+ transition: background-color .2s ease, color .2s ease;
24
+
25
+ .material-symbols-rounded {
26
+ font-size: 14px;
27
+ line-height: 1;
28
+ }
29
+
30
+ &:hover {
31
+ background-color: var(--nav-hover-bg, #f3f4f6);
32
+ color: var(--text-color, #111827);
33
+ }
34
+
35
+ &:disabled {
36
+ background: transparent;
37
+ color: var(--sub-text-color, #6b7280);
38
+ }
39
+ }
40
+
41
+ .chat-header-git__split-main.ant-btn.ant-btn-text,
42
+ .chat-header-git__trigger.ant-btn.ant-btn-text {
43
+ min-width: 0;
44
+ padding: 0 8px;
45
+ display: inline-flex;
46
+ align-items: center;
47
+ }
48
+
49
+ .chat-header-git__split-main.ant-btn.ant-btn-text {
50
+ gap: 6px;
51
+ border-top-right-radius: 0;
52
+ border-bottom-right-radius: 0;
53
+ }
54
+
55
+ .chat-header-git__split-toggle.ant-btn.ant-btn-text {
56
+ width: 24px;
57
+ padding: 0;
58
+ justify-content: center;
59
+ border-top-left-radius: 0;
60
+ border-bottom-left-radius: 0;
61
+ }
62
+
63
+ .chat-header-git__split.is-open {
64
+ .chat-header-git__split-main.ant-btn.ant-btn-text,
65
+ .chat-header-git__split-toggle.ant-btn.ant-btn-text {
66
+ background-color: var(--nav-active-bg, #eff6ff);
67
+ color: var(--nav-active-text, #2563eb);
68
+ }
69
+ }
70
+
71
+ .chat-header-git__split-divider {
72
+ width: 1px;
73
+ height: 12px;
74
+ background: var(--border-color);
75
+ flex-shrink: 0;
76
+ }
77
+
78
+ .chat-header-git__trigger.ant-btn.ant-btn-text {
79
+ gap: 8px;
80
+ padding-right: 6px;
81
+ justify-content: space-between;
82
+
83
+ &.is-open {
84
+ background-color: var(--nav-active-bg, #eff6ff);
85
+ color: var(--nav-active-text, #2563eb);
86
+ }
87
+
88
+ &.is-disabled {
89
+ opacity: .7;
90
+ }
91
+ }
92
+
93
+ .chat-header-git__trigger-main {
94
+ min-width: 0;
95
+ display: inline-flex;
96
+ align-items: center;
97
+ gap: 6px;
98
+ }
99
+
100
+ .chat-header-git__trigger-chevron.material-symbols-rounded {
101
+ font-size: 16px;
102
+ flex-shrink: 0;
103
+ }
104
+
105
+ .chat-header-git__trigger-label {
106
+ min-width: 0;
107
+ max-width: 132px;
108
+ overflow: hidden;
109
+ text-overflow: ellipsis;
110
+ white-space: nowrap;
111
+ font-size: 11px;
112
+ font-weight: 500;
113
+ }
114
+
115
+ .chat-header-git__separator {
116
+ width: 1px;
117
+ height: 12px;
118
+ margin-inline: 8px;
119
+ background: var(--border-color);
120
+ flex-shrink: 0;
121
+ }
122
+
123
+ .chat-header-git__dirty-dot {
124
+ width: 5px;
125
+ height: 5px;
126
+ border-radius: 999px;
127
+ background: #d97706;
128
+ flex-shrink: 0;
129
+ }
130
+
131
+ .chat-header-git__overlay {
132
+ width: 244px;
133
+ padding: 5px;
134
+ border: 1px solid var(--border-color);
135
+ border-radius: 12px;
136
+ background: var(--bg-color);
137
+ box-shadow: 0 18px 44px rgba(15, 23, 42, .18);
138
+ display: flex;
139
+ flex-direction: column;
140
+ gap: 3px;
141
+ }
142
+
143
+ .chat-header-git__overlay--operations {
144
+ width: 208px;
145
+ }
146
+
147
+ .chat-header-git__overlay--branches {
148
+ width: 236px;
149
+ }
150
+
151
+ .chat-header-git__overlay--worktrees {
152
+ width: 228px;
153
+ }
154
+
155
+ .chat-header-git__overlay-meta {
156
+ font-size: 10px;
157
+ line-height: 1.45;
158
+ color: var(--sub-text-color);
159
+ }
160
+
161
+ .chat-header-git__search.ant-input-affix-wrapper {
162
+ min-height: 30px;
163
+ border-radius: 9px;
164
+ padding-inline: 8px;
165
+
166
+ .ant-input {
167
+ font-size: 10px;
168
+ }
169
+ }
170
+
171
+ .chat-header-git__sections {
172
+ display: flex;
173
+ flex-direction: column;
174
+ gap: 5px;
175
+ max-height: 260px;
176
+ overflow-y: auto;
177
+ scrollbar-gutter: stable;
178
+ }
179
+
180
+ .chat-header-git__section {
181
+ display: flex;
182
+ flex-direction: column;
183
+ gap: 2px;
184
+ }
185
+
186
+ .chat-header-git__section + .chat-header-git__section {
187
+ padding-top: 5px;
188
+ border-top: 1px solid
189
+ color-mix(in srgb, var(--border-color) 72%, transparent);
190
+ }
191
+
192
+ .chat-header-git__section-label {
193
+ font-size: 9px;
194
+ font-weight: 700;
195
+ letter-spacing: .08em;
196
+ text-transform: uppercase;
197
+ color: var(--sub-text-color);
198
+ }
199
+
200
+ .chat-header-git__branch-row,
201
+ .chat-header-git__operation-row,
202
+ .chat-header-git__create-row {
203
+ width: 100%;
204
+ border: 0;
205
+ border-radius: 8px;
206
+ background: transparent;
207
+ padding: 5px 8px;
208
+ display: flex;
209
+ align-items: center;
210
+ justify-content: space-between;
211
+ gap: 7px;
212
+ cursor: pointer;
213
+ text-align: left;
214
+ color: var(--text-color);
215
+ transition: background-color .2s ease, color .2s ease;
216
+
217
+ &:hover:not(:disabled) {
218
+ background: var(--sub-bg-color, rgba(15, 23, 42, .05));
219
+ }
220
+
221
+ &:disabled {
222
+ cursor: not-allowed;
223
+ opacity: .55;
224
+ }
225
+ }
226
+
227
+ .chat-header-git__worktree-list {
228
+ display: flex;
229
+ flex-direction: column;
230
+ gap: 2px;
231
+ }
232
+
233
+ .chat-header-git__worktree-row {
234
+ width: 100%;
235
+ padding: 5px 8px;
236
+ border-radius: 8px;
237
+ display: flex;
238
+ align-items: center;
239
+ justify-content: space-between;
240
+ gap: 7px;
241
+ color: var(--text-color);
242
+ }
243
+
244
+ .chat-header-git__branch-row-main,
245
+ .chat-header-git__operation-row-main,
246
+ .chat-header-git__worktree-row-main {
247
+ min-width: 0;
248
+ display: flex;
249
+ align-items: center;
250
+ gap: 5px;
251
+ }
252
+
253
+ .chat-header-git__row-copy {
254
+ min-width: 0;
255
+ display: flex;
256
+ flex-direction: column;
257
+ gap: 2px;
258
+ }
259
+
260
+ .chat-header-git__row-title {
261
+ min-width: 0;
262
+ font-size: 10px;
263
+ font-weight: 600;
264
+ overflow: hidden;
265
+ text-overflow: ellipsis;
266
+ white-space: nowrap;
267
+ }
268
+
269
+ .chat-header-git__row-subtitle {
270
+ min-width: 0;
271
+ font-size: 9px;
272
+ line-height: 1.35;
273
+ color: var(--sub-text-color);
274
+ overflow: hidden;
275
+ text-overflow: ellipsis;
276
+ white-space: nowrap;
277
+ }
278
+
279
+ .chat-header-git__row-icon.material-symbols-rounded,
280
+ .chat-header-git__row-state.material-symbols-rounded {
281
+ font-size: 15px;
282
+ flex-shrink: 0;
283
+ }
284
+
285
+ .chat-header-git__row-state.material-symbols-rounded {
286
+ color: var(--primary-color, #2563eb);
287
+ }
288
+
289
+ .chat-header-git__create-row {
290
+ border: 1px dashed
291
+ color-mix(
292
+ in srgb,
293
+ var(--primary-color, #2563eb) 28%,
294
+ var(--border-color)
295
+ );
296
+ background: color-mix(
297
+ in srgb,
298
+ var(--primary-color, #2563eb) 6%,
299
+ var(--bg-color)
300
+ );
301
+ }
302
+
303
+ .chat-header-git__empty {
304
+ padding: 8px 0 2px;
305
+ }
306
+
307
+ .chat-header-git__loading {
308
+ padding: 8px 0;
309
+ display: flex;
310
+ justify-content: center;
311
+ }
312
+
313
+ .chat-header-git__divider {
314
+ height: 1px;
315
+ background: var(--border-color);
316
+ }
317
+
318
+ .chat-header-git__commit-modal {
319
+ .ant-modal-content {
320
+ padding: 14px;
321
+ border-radius: 20px;
322
+ background:
323
+ radial-gradient(
324
+ circle at top right,
325
+ rgba(255, 255, 255, .03),
326
+ transparent 34%
327
+ ),
328
+ var(--bg-color);
329
+ border: 1px solid color-mix(in srgb, var(--border-color) 78%, transparent);
330
+ }
331
+
332
+ .ant-modal-close {
333
+ inset-inline-end: 10px;
334
+ top: 10px;
335
+ color: var(--sub-text-color);
336
+
337
+ &:hover {
338
+ color: var(--text-color);
339
+ }
340
+ }
341
+ }
342
+
343
+ .chat-header-git__commit-sheet {
344
+ display: flex;
345
+ flex-direction: column;
346
+ gap: 12px;
347
+ }
348
+
349
+ .chat-header-git__commit-icon {
350
+ width: 34px;
351
+ height: 34px;
352
+ border-radius: 11px;
353
+ display: inline-flex;
354
+ align-items: center;
355
+ justify-content: center;
356
+ background: color-mix(
357
+ in srgb,
358
+ var(--sub-bg-color, rgba(15, 23, 42, .08)) 92%,
359
+ transparent
360
+ );
361
+
362
+ .material-symbols-rounded {
363
+ font-size: 18px;
364
+ }
365
+ }
366
+
367
+ .chat-header-git__commit-title {
368
+ margin-top: -4px;
369
+ font-size: 17px;
370
+ font-weight: 700;
371
+ color: var(--text-color);
372
+ }
373
+
374
+ .chat-header-git__commit-summary-grid {
375
+ display: grid;
376
+ grid-template-columns: 60px minmax(0, 1fr);
377
+ gap: 8px 14px;
378
+ }
379
+
380
+ .chat-header-git__commit-summary-label {
381
+ font-size: 11px;
382
+ font-weight: 600;
383
+ color: var(--sub-text-color);
384
+ }
385
+
386
+ .chat-header-git__commit-summary-value {
387
+ min-width: 0;
388
+ display: flex;
389
+ align-items: center;
390
+ gap: 6px;
391
+ font-size: 12px;
392
+ font-weight: 600;
393
+ color: var(--text-color);
394
+ }
395
+
396
+ .chat-header-git__commit-summary-value--branch {
397
+ .material-symbols-rounded {
398
+ font-size: 14px;
399
+ }
400
+
401
+ span:last-child {
402
+ min-width: 0;
403
+ overflow: hidden;
404
+ text-overflow: ellipsis;
405
+ white-space: nowrap;
406
+ }
407
+ }
408
+
409
+ .chat-header-git__commit-summary-value--stats {
410
+ gap: 8px;
411
+ flex-wrap: wrap;
412
+ color: var(--sub-text-color);
413
+ }
414
+
415
+ .chat-header-git__commit-summary-delta {
416
+ font-weight: 700;
417
+
418
+ &.is-positive {
419
+ color: #22c55e;
420
+ }
421
+
422
+ &.is-negative {
423
+ color: #ef4444;
424
+ }
425
+ }
426
+
427
+ .chat-header-git__commit-toggles {
428
+ display: flex;
429
+ flex-direction: column;
430
+ gap: 8px;
431
+ }
432
+
433
+ .chat-header-git__commit-sub-options {
434
+ display: flex;
435
+ flex-direction: column;
436
+ gap: 6px;
437
+ }
438
+
439
+ .chat-header-git__commit-toggle-row {
440
+ display: grid;
441
+ grid-template-columns: 60px minmax(0, 1fr);
442
+ align-items: flex-start;
443
+ column-gap: 14px;
444
+ padding: 0;
445
+
446
+ &.is-disabled {
447
+ opacity: .6;
448
+ }
449
+ }
450
+
451
+ .chat-header-git__commit-toggle-checkbox {
452
+ width: 14px;
453
+ height: 14px;
454
+ margin: 2px 0 0;
455
+ justify-self: start;
456
+ accent-color: var(--primary-color, #2563eb);
457
+ }
458
+
459
+ .chat-header-git__commit-toggle-copy {
460
+ min-width: 0;
461
+ display: flex;
462
+ flex-direction: column;
463
+ gap: 1px;
464
+ }
465
+
466
+ .chat-header-git__commit-toggle-title,
467
+ .chat-header-git__commit-section-header {
468
+ font-size: 12px;
469
+ font-weight: 600;
470
+ color: var(--text-color);
471
+ }
472
+
473
+ .chat-header-git__commit-toggle-description {
474
+ font-size: 10px;
475
+ line-height: 1.35;
476
+ color: var(--sub-text-color);
477
+ display: -webkit-box;
478
+ overflow: hidden;
479
+ -webkit-box-orient: vertical;
480
+ -webkit-line-clamp: 2;
481
+ }
482
+
483
+ .chat-header-git__commit-section-header {
484
+ display: flex;
485
+ align-items: center;
486
+ justify-content: space-between;
487
+ gap: 8px;
488
+ }
489
+
490
+ .chat-header-git__commit-input.ant-input {
491
+ border-radius: 14px;
492
+ padding: 10px 12px;
493
+ font-size: 12px;
494
+ line-height: 1.5;
495
+ resize: none;
496
+ }
497
+
498
+ .chat-header-git__commit-error {
499
+ margin-top: -6px;
500
+ font-size: 10px;
501
+ color: var(--error-text-color, #ef4444);
502
+ }
503
+
504
+ .chat-header-git__commit-next-steps {
505
+ display: flex;
506
+ flex-direction: column;
507
+ gap: 0;
508
+ border: 1px solid color-mix(in srgb, var(--border-color) 74%, transparent);
509
+ border-radius: 14px;
510
+ overflow: hidden;
511
+ background: transparent;
512
+ }
513
+
514
+ .chat-header-git__commit-next-step {
515
+ width: 100%;
516
+ border: 0;
517
+ border-bottom: 1px solid
518
+ color-mix(in srgb, var(--border-color) 72%, transparent);
519
+ background: transparent;
520
+ padding: 9px 12px;
521
+ display: flex;
522
+ align-items: center;
523
+ justify-content: space-between;
524
+ gap: 10px;
525
+ color: var(--text-color);
526
+ cursor: pointer;
527
+ text-align: left;
528
+ transition: background-color .2s ease, color .2s ease;
529
+
530
+ &:last-child {
531
+ border-bottom: 0;
532
+ }
533
+
534
+ &:hover:not(:disabled) {
535
+ background: color-mix(
536
+ in srgb,
537
+ var(--text-color) 5%,
538
+ transparent
539
+ );
540
+ }
541
+
542
+ &:disabled {
543
+ cursor: not-allowed;
544
+ opacity: .48;
545
+ }
546
+
547
+ &.is-selected {
548
+ background: color-mix(
549
+ in srgb,
550
+ var(--text-color) 8%,
551
+ transparent
552
+ );
553
+ box-shadow: inset 0 0 0 1px
554
+ color-mix(in srgb, var(--text-color) 8%, transparent);
555
+ }
556
+ }
557
+
558
+ .chat-header-git__commit-next-step-main {
559
+ min-width: 0;
560
+ display: inline-flex;
561
+ align-items: center;
562
+ gap: 7px;
563
+ font-size: 12px;
564
+ font-weight: 600;
565
+ }
566
+
567
+ .chat-header-git__commit-footer {
568
+ display: flex;
569
+ justify-content: flex-end;
570
+ }
571
+
572
+ .chat-header-git__commit-submit.ant-btn.ant-btn-primary {
573
+ min-width: 180px;
574
+ height: 36px;
575
+ border-radius: 999px;
576
+ font-size: 13px;
577
+ font-weight: 600;
578
+ box-shadow: none;
579
+ border: 0;
580
+ background: var(--text-color);
581
+ color: var(--bg-color);
582
+
583
+ &:hover:not(:disabled),
584
+ &:focus-visible:not(:disabled) {
585
+ background: color-mix(in srgb, var(--text-color) 90%, transparent);
586
+ color: var(--bg-color);
587
+ }
588
+
589
+ &:disabled {
590
+ background: color-mix(in srgb, var(--text-color) 16%, transparent);
591
+ color: color-mix(in srgb, var(--bg-color) 72%, transparent);
592
+ }
593
+ }
594
+
595
+ html.dark {
596
+ .chat-header-git {
597
+ --nav-hover-bg: #1a1a1a;
598
+ --nav-active-bg: #111b26;
599
+ --nav-active-text: #3b82f6;
600
+ }
601
+
602
+ .chat-header-git__split,
603
+ .chat-header-git__trigger.ant-btn.ant-btn-text {
604
+ color: var(--sub-text-color);
605
+ }
606
+
607
+ .chat-header-git__overlay {
608
+ box-shadow: 0 20px 44px rgba(0, 0, 0, .42);
609
+ }
610
+
611
+ .chat-header-git__commit-modal {
612
+ .ant-modal-content {
613
+ box-shadow: 0 24px 60px rgba(0, 0, 0, .5);
614
+ }
615
+ }
616
+ }