vg-coder-cli 2.0.8 → 2.0.10
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/README.md +19 -0
- package/SYSTEM_PROMPT.md +157 -0
- package/coverage/base.css +224 -0
- package/coverage/block-navigation.js +87 -0
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +206 -0
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +87 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +206 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +210 -0
- package/coverage/lcov-report/src/detectors/index.html +116 -0
- package/coverage/lcov-report/src/detectors/project-detector.js.html +1084 -0
- package/coverage/lcov-report/src/exporter/html-exporter.js.html +2839 -0
- package/coverage/lcov-report/src/exporter/index.html +116 -0
- package/coverage/lcov-report/src/ignore/ignore-manager.js.html +979 -0
- package/coverage/lcov-report/src/ignore/index.html +116 -0
- package/coverage/lcov-report/src/index.html +116 -0
- package/coverage/lcov-report/src/index.js.html +928 -0
- package/coverage/lcov-report/src/scanner/file-scanner.js.html +1903 -0
- package/coverage/lcov-report/src/scanner/index.html +116 -0
- package/coverage/lcov-report/src/tokenizer/index.html +116 -0
- package/coverage/lcov-report/src/tokenizer/token-manager.js.html +1252 -0
- package/coverage/lcov-report/src/utils/helpers.js.html +469 -0
- package/coverage/lcov-report/src/utils/index.html +116 -0
- package/coverage/lcov.info +1396 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +2 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +210 -0
- package/coverage/src/detectors/index.html +116 -0
- package/coverage/src/detectors/project-detector.js.html +1084 -0
- package/coverage/src/exporter/html-exporter.js.html +2839 -0
- package/coverage/src/exporter/index.html +116 -0
- package/coverage/src/ignore/ignore-manager.js.html +979 -0
- package/coverage/src/ignore/index.html +116 -0
- package/coverage/src/index.html +116 -0
- package/coverage/src/index.js.html +928 -0
- package/coverage/src/scanner/file-scanner.js.html +1903 -0
- package/coverage/src/scanner/index.html +116 -0
- package/coverage/src/tokenizer/index.html +116 -0
- package/coverage/src/tokenizer/token-manager.js.html +1252 -0
- package/coverage/src/utils/helpers.js.html +469 -0
- package/coverage/src/utils/index.html +116 -0
- package/jest.config.js +16 -0
- package/package.json +5 -3
- package/scripts/build.js +40 -0
- package/src/scanner/file-scanner.js +3 -104
- package/src/server/api-server.js +74 -18
- package/src/server/views/css/structure.css +148 -0
- package/src/server/views/dashboard.css +176 -312
- package/src/server/views/dashboard.html +153 -85
- package/src/server/views/js/api.js +19 -2
- package/src/server/views/js/features/structure.js +221 -0
- package/src/server/views/js/handlers.js +38 -70
- package/src/server/views/js/main.js +60 -0
- package/src/server/views/js/utils.js +10 -0
- package/src/server/views/vg-coder/assets/icon128.png +0 -0
- package/src/server/views/vg-coder/assets/icon16.png +0 -0
- package/src/server/views/vg-coder/assets/icon48.png +0 -0
- package/src/server/views/vg-coder/background.js +2 -0
- package/src/server/views/vg-coder/background.js.LICENSE.txt +118 -0
- package/src/server/views/vg-coder/controller.js +1 -0
- package/src/server/views/vg-coder/manifest.json +58 -0
- package/src/server/views/vg-coder/options.css +164 -0
- package/src/server/views/vg-coder/options.html +48 -0
- package/src/server/views/vg-coder/options.js +1 -0
- package/src/server/views/vg-coder/rules.json +23 -0
- package/src/tokenizer/token-manager.js +52 -2
- package/vg-coder-cli-2.0.10.tgz +0 -0
- package/vg-coder.zip +0 -0
- package/vg-coder-cli-2.0.8.tgz +0 -0
|
@@ -36,325 +36,254 @@
|
|
|
36
36
|
margin: 0;
|
|
37
37
|
padding: 0;
|
|
38
38
|
box-sizing: border-box;
|
|
39
|
-
-webkit-tap-highlight-color: transparent;
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
body {
|
|
43
|
-
font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto,
|
|
42
|
+
font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif;
|
|
44
43
|
background-color: var(--ios-bg);
|
|
45
44
|
color: var(--text-primary);
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
45
|
+
height: 100vh;
|
|
46
|
+
/* Full viewport height */
|
|
47
|
+
overflow: hidden;
|
|
48
|
+
/* Disable body scroll */
|
|
49
|
+
font-size: 13px;
|
|
51
50
|
}
|
|
52
51
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
52
|
+
/* --- SPLIT LAYOUT STYLES --- */
|
|
53
|
+
.split-layout {
|
|
54
|
+
display: flex;
|
|
55
|
+
height: 100vh;
|
|
56
|
+
width: 100vw;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/* Left Panel: VG Coder Tool */
|
|
60
|
+
.left-panel {
|
|
61
|
+
flex: 0 0 450px;
|
|
62
|
+
/* Fixed width: 450px */
|
|
63
|
+
max-width: 50vw;
|
|
64
|
+
/* Max 50% on small screens */
|
|
65
|
+
height: 100%;
|
|
66
|
+
overflow-y: auto;
|
|
67
|
+
/* Scrollable independently */
|
|
68
|
+
background: var(--ios-bg);
|
|
69
|
+
border-right: 1px solid var(--ios-separator);
|
|
58
70
|
position: relative;
|
|
71
|
+
z-index: 10;
|
|
59
72
|
}
|
|
60
73
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
margin
|
|
65
|
-
padding: 0 4px;
|
|
66
|
-
display: flex;
|
|
67
|
-
justify-content: space-between;
|
|
68
|
-
align-items: flex-start;
|
|
74
|
+
.container {
|
|
75
|
+
padding: 15px;
|
|
76
|
+
padding-top: 15px;
|
|
77
|
+
/* Removed max-width/margin centering since it's inside panel */
|
|
69
78
|
}
|
|
70
79
|
|
|
71
|
-
|
|
80
|
+
/* Right Panel: ChatGPT Iframe */
|
|
81
|
+
.right-panel {
|
|
72
82
|
flex: 1;
|
|
83
|
+
/* Take remaining space */
|
|
84
|
+
height: 100%;
|
|
85
|
+
background: #fff;
|
|
86
|
+
position: relative;
|
|
73
87
|
}
|
|
74
88
|
|
|
75
|
-
.
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
89
|
+
.right-panel iframe {
|
|
90
|
+
width: 100%;
|
|
91
|
+
height: 100%;
|
|
92
|
+
border: none;
|
|
93
|
+
position: relative;
|
|
94
|
+
z-index: 2;
|
|
95
|
+
/* Sit above placeholder */
|
|
81
96
|
}
|
|
82
97
|
|
|
83
|
-
|
|
98
|
+
/* Placeholder underneath iframe (visible if iframe fails to load) */
|
|
99
|
+
.iframe-placeholder {
|
|
100
|
+
position: absolute;
|
|
101
|
+
top: 50%;
|
|
102
|
+
left: 50%;
|
|
103
|
+
transform: translate(-50%, -50%);
|
|
104
|
+
text-align: center;
|
|
84
105
|
color: var(--text-secondary);
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
106
|
+
z-index: 1;
|
|
107
|
+
width: 100%;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
.link-fallback {
|
|
111
|
+
color: var(--ios-blue);
|
|
112
|
+
text-decoration: none;
|
|
113
|
+
margin-top: 10px;
|
|
114
|
+
display: inline-block;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/* --- EXISTING COMPACT STYLES (Preserved & Adjusted) --- */
|
|
118
|
+
|
|
119
|
+
.header {
|
|
120
|
+
display: flex;
|
|
121
|
+
justify-content: space-between;
|
|
122
|
+
margin-bottom: 15px;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.header h1 {
|
|
126
|
+
font-size: 20px;
|
|
127
|
+
font-weight: 700;
|
|
128
|
+
margin: 0;
|
|
88
129
|
}
|
|
89
130
|
|
|
90
131
|
.status {
|
|
91
|
-
|
|
92
|
-
align-items: center;
|
|
93
|
-
padding: 6px 12px;
|
|
94
|
-
background: rgba(52, 199, 89, 0.15);
|
|
132
|
+
font-size: 11px;
|
|
95
133
|
color: var(--ios-green);
|
|
96
|
-
border-radius: 20px;
|
|
97
|
-
font-size: 13px;
|
|
98
|
-
font-weight: 600;
|
|
99
|
-
margin-top: 5px;
|
|
100
134
|
}
|
|
101
135
|
|
|
102
|
-
/* Theme Toggle Button */
|
|
103
136
|
.theme-toggle {
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
width: 40px;
|
|
107
|
-
height: 40px;
|
|
137
|
+
width: 28px;
|
|
138
|
+
height: 28px;
|
|
108
139
|
border-radius: 50%;
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
justify-content: center;
|
|
112
|
-
font-size: 20px;
|
|
140
|
+
border: none;
|
|
141
|
+
background: var(--ios-card);
|
|
113
142
|
cursor: pointer;
|
|
114
|
-
box-shadow: 0 2px
|
|
115
|
-
color: var(--text-primary);
|
|
116
|
-
transition: transform 0.2s, background-color 0.3s;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
.theme-toggle:active {
|
|
120
|
-
transform: scale(0.9);
|
|
143
|
+
box-shadow: 0 2px 5px var(--shadow-color);
|
|
121
144
|
}
|
|
122
145
|
|
|
123
|
-
/* Card Style (Inset Grouped) */
|
|
124
146
|
.system-prompt-card,
|
|
125
147
|
.endpoint-card {
|
|
126
148
|
background: var(--ios-card);
|
|
127
|
-
border-radius:
|
|
128
|
-
padding:
|
|
129
|
-
margin-bottom:
|
|
130
|
-
box-shadow: 0
|
|
131
|
-
overflow: hidden;
|
|
132
|
-
position: relative;
|
|
133
|
-
transition: background-color 0.3s ease;
|
|
149
|
+
border-radius: 10px;
|
|
150
|
+
padding: 12px;
|
|
151
|
+
margin-bottom: 12px;
|
|
152
|
+
box-shadow: 0 1px 3px var(--shadow-color);
|
|
134
153
|
}
|
|
135
154
|
|
|
136
|
-
/* System Prompt */
|
|
137
155
|
.system-prompt-header {
|
|
138
156
|
display: flex;
|
|
139
157
|
justify-content: space-between;
|
|
140
|
-
align-items: center;
|
|
141
158
|
cursor: pointer;
|
|
142
|
-
padding: 4px 0;
|
|
143
159
|
}
|
|
144
160
|
|
|
145
|
-
/* Container for Icon Button + Title */
|
|
146
161
|
.header-title-group {
|
|
147
162
|
display: flex;
|
|
148
163
|
align-items: center;
|
|
149
|
-
gap:
|
|
164
|
+
gap: 8px;
|
|
150
165
|
}
|
|
151
166
|
|
|
152
167
|
.system-prompt-header h2 {
|
|
153
|
-
|
|
154
|
-
font-size: 20px;
|
|
155
|
-
font-weight: 600;
|
|
168
|
+
font-size: 14px;
|
|
156
169
|
margin: 0;
|
|
157
170
|
}
|
|
158
171
|
|
|
159
|
-
/* Icon Buttons in Headers */
|
|
160
172
|
.btn-icon-head {
|
|
173
|
+
width: 24px;
|
|
174
|
+
height: 24px;
|
|
161
175
|
background: rgba(0, 0, 0, 0.05);
|
|
162
176
|
border: none;
|
|
177
|
+
border-radius: 6px;
|
|
163
178
|
cursor: pointer;
|
|
164
|
-
font-size: 18px;
|
|
165
|
-
padding: 6px;
|
|
166
|
-
width: 36px;
|
|
167
|
-
height: 36px;
|
|
168
|
-
border-radius: 8px;
|
|
169
|
-
display: flex;
|
|
170
|
-
align-items: center;
|
|
171
|
-
justify-content: center;
|
|
172
|
-
transition: background 0.2s, transform 0.1s;
|
|
173
|
-
color: var(--text-primary);
|
|
174
|
-
}
|
|
175
|
-
[data-theme="dark"] .btn-icon-head {
|
|
176
|
-
background: rgba(255, 255, 255, 0.1);
|
|
177
|
-
}
|
|
178
|
-
.btn-icon-head:hover {
|
|
179
|
-
background: rgba(0, 122, 255, 0.15);
|
|
180
|
-
}
|
|
181
|
-
.btn-icon-head:active {
|
|
182
|
-
transform: scale(0.95);
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
.toggle-icon {
|
|
186
|
-
color: var(--text-secondary);
|
|
187
|
-
font-size: 14px;
|
|
188
|
-
transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
.toggle-icon.open {
|
|
192
|
-
transform: rotate(180deg);
|
|
193
179
|
}
|
|
194
180
|
|
|
195
181
|
.system-prompt-content {
|
|
196
182
|
max-height: 0;
|
|
197
183
|
overflow: hidden;
|
|
198
|
-
transition: max-height 0.
|
|
199
|
-
opacity: 0;
|
|
184
|
+
transition: max-height 0.3s;
|
|
200
185
|
}
|
|
201
186
|
|
|
202
187
|
.system-prompt-content.open {
|
|
203
|
-
max-height:
|
|
204
|
-
|
|
205
|
-
margin-top: 16px;
|
|
188
|
+
max-height: 500px;
|
|
189
|
+
margin-top: 10px;
|
|
206
190
|
}
|
|
207
191
|
|
|
208
192
|
.prompt-text {
|
|
209
193
|
background: var(--ios-input-bg);
|
|
210
|
-
|
|
211
|
-
border-radius:
|
|
212
|
-
|
|
213
|
-
font-family:
|
|
214
|
-
|
|
215
|
-
line-height: 1.5;
|
|
216
|
-
white-space: pre-wrap;
|
|
217
|
-
max-height: 300px;
|
|
194
|
+
padding: 8px;
|
|
195
|
+
border-radius: 6px;
|
|
196
|
+
font-size: 11px;
|
|
197
|
+
font-family: monospace;
|
|
198
|
+
max-height: 150px;
|
|
218
199
|
overflow-y: auto;
|
|
219
|
-
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
/* Extension Steps */
|
|
203
|
+
.extension-steps {
|
|
204
|
+
padding: 10px;
|
|
205
|
+
font-size: 12px;
|
|
220
206
|
color: var(--text-primary);
|
|
221
|
-
-webkit-overflow-scrolling: touch;
|
|
222
|
-
transition: background-color 0.3s;
|
|
223
207
|
}
|
|
224
208
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
padding-bottom: 12px;
|
|
209
|
+
.extension-steps ol {
|
|
210
|
+
padding-left: 20px;
|
|
211
|
+
margin-bottom: 10px;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.extension-steps li {
|
|
215
|
+
margin-bottom: 5px;
|
|
233
216
|
}
|
|
234
217
|
|
|
235
|
-
|
|
236
|
-
.endpoint-title-group {
|
|
218
|
+
.endpoint-header {
|
|
237
219
|
display: flex;
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
220
|
+
justify-content: space-between;
|
|
221
|
+
margin-bottom: 8px;
|
|
222
|
+
padding-bottom: 5px;
|
|
223
|
+
border-bottom: 1px solid var(--ios-separator);
|
|
241
224
|
}
|
|
242
225
|
|
|
243
|
-
.
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
font-weight: 700;
|
|
226
|
+
.endpoint-path {
|
|
227
|
+
font-family: monospace;
|
|
228
|
+
font-weight: 600;
|
|
247
229
|
font-size: 12px;
|
|
248
|
-
text-transform: uppercase;
|
|
249
|
-
letter-spacing: 0.5px;
|
|
250
230
|
}
|
|
251
231
|
|
|
252
|
-
.method
|
|
253
|
-
|
|
232
|
+
.method {
|
|
233
|
+
font-size: 10px;
|
|
234
|
+
padding: 2px 5px;
|
|
235
|
+
border-radius: 4px;
|
|
254
236
|
color: white;
|
|
237
|
+
margin-right: 5px;
|
|
255
238
|
}
|
|
256
239
|
|
|
257
|
-
.
|
|
258
|
-
|
|
259
|
-
color: var(--text-primary);
|
|
260
|
-
font-size: 16px;
|
|
261
|
-
font-weight: 600;
|
|
262
|
-
word-break: break-all;
|
|
240
|
+
.method.post {
|
|
241
|
+
background: var(--ios-green);
|
|
263
242
|
}
|
|
264
243
|
|
|
265
|
-
.
|
|
266
|
-
|
|
267
|
-
margin-bottom: 20px;
|
|
268
|
-
font-size: 15px;
|
|
269
|
-
line-height: 1.4;
|
|
244
|
+
.method.get {
|
|
245
|
+
background: var(--ios-blue);
|
|
270
246
|
}
|
|
271
247
|
|
|
272
|
-
/* Forms */
|
|
273
248
|
.form-group {
|
|
274
|
-
margin-bottom:
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
.form-group label {
|
|
278
|
-
display: block;
|
|
279
|
-
margin-bottom: 8px;
|
|
280
|
-
color: var(--text-primary);
|
|
281
|
-
font-weight: 500;
|
|
282
|
-
font-size: 14px;
|
|
283
|
-
text-transform: uppercase;
|
|
284
|
-
letter-spacing: 0.3px;
|
|
285
|
-
opacity: 0.6;
|
|
249
|
+
margin-bottom: 10px;
|
|
286
250
|
}
|
|
287
251
|
|
|
288
252
|
.form-group input,
|
|
289
253
|
.form-group textarea {
|
|
290
254
|
width: 100%;
|
|
291
|
-
padding:
|
|
292
|
-
background: var(--ios-input-bg);
|
|
293
|
-
border: 1px solid transparent;
|
|
294
|
-
border-radius: 12px;
|
|
295
|
-
font-size: 17px;
|
|
296
|
-
font-family: 'SF Mono', 'Menlo', monospace;
|
|
297
|
-
color: var(--text-primary);
|
|
298
|
-
transition: background 0.2s, border-color 0.2s;
|
|
299
|
-
appearance: none;
|
|
300
|
-
-webkit-appearance: none;
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
.form-group input:focus,
|
|
304
|
-
.form-group textarea:focus {
|
|
305
|
-
outline: none;
|
|
306
|
-
border-color: var(--ios-blue);
|
|
255
|
+
padding: 6px 10px;
|
|
307
256
|
background: var(--ios-input-bg);
|
|
257
|
+
border: none;
|
|
258
|
+
border-radius: 6px;
|
|
259
|
+
font-family: monospace;
|
|
260
|
+
font-size: 12px;
|
|
308
261
|
}
|
|
309
262
|
|
|
310
263
|
.form-group textarea {
|
|
311
|
-
min-height:
|
|
312
|
-
resize:
|
|
264
|
+
min-height: 60px;
|
|
265
|
+
resize: vertical;
|
|
313
266
|
}
|
|
314
267
|
|
|
315
|
-
/* Buttons */
|
|
316
268
|
.btn-group {
|
|
317
269
|
display: flex;
|
|
318
|
-
gap:
|
|
319
|
-
margin-top:
|
|
320
|
-
flex-direction: column;
|
|
321
|
-
}
|
|
322
|
-
|
|
323
|
-
@media (min-width: 640px) {
|
|
324
|
-
.btn-group {
|
|
325
|
-
flex-direction: row;
|
|
326
|
-
}
|
|
270
|
+
gap: 8px;
|
|
271
|
+
margin-top: 10px;
|
|
327
272
|
}
|
|
328
273
|
|
|
329
274
|
.btn {
|
|
275
|
+
flex: 1;
|
|
276
|
+
padding: 6px 12px;
|
|
277
|
+
border: none;
|
|
278
|
+
border-radius: 6px;
|
|
330
279
|
background: var(--ios-blue);
|
|
331
280
|
color: white;
|
|
332
|
-
|
|
333
|
-
padding: 14px 20px;
|
|
334
|
-
border-radius: 12px;
|
|
281
|
+
font-size: 12px;
|
|
335
282
|
cursor: pointer;
|
|
336
|
-
font-size: 17px;
|
|
337
|
-
font-weight: 600;
|
|
338
|
-
transition: transform 0.1s, opacity 0.2s;
|
|
339
283
|
display: flex;
|
|
340
284
|
align-items: center;
|
|
341
285
|
justify-content: center;
|
|
342
|
-
gap:
|
|
343
|
-
width: 100%;
|
|
344
|
-
position: relative;
|
|
345
|
-
overflow: hidden;
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
.btn:active {
|
|
349
|
-
transform: scale(0.98);
|
|
350
|
-
opacity: 0.9;
|
|
351
|
-
}
|
|
352
|
-
|
|
353
|
-
.btn:disabled {
|
|
354
|
-
background: var(--ios-gray-light);
|
|
355
|
-
color: var(--ios-gray);
|
|
356
|
-
cursor: not-allowed;
|
|
357
|
-
transform: none;
|
|
286
|
+
gap: 5px;
|
|
358
287
|
}
|
|
359
288
|
|
|
360
289
|
.btn-copy {
|
|
@@ -362,127 +291,62 @@ body {
|
|
|
362
291
|
color: var(--ios-blue);
|
|
363
292
|
}
|
|
364
293
|
|
|
365
|
-
.system-prompt-content .btn-copy {
|
|
366
|
-
margin-top: 8px;
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
.btn-copy:active {
|
|
370
|
-
background: rgba(0, 122, 255, 0.2);
|
|
371
|
-
}
|
|
372
|
-
|
|
373
|
-
.btn-copy.copied {
|
|
374
|
-
background: var(--ios-green);
|
|
375
|
-
color: white;
|
|
376
|
-
}
|
|
377
|
-
|
|
378
|
-
/* Response Area */
|
|
379
294
|
.response {
|
|
380
|
-
margin-top:
|
|
381
|
-
padding:
|
|
382
|
-
border-radius: 12px;
|
|
295
|
+
margin-top: 10px;
|
|
296
|
+
padding: 8px;
|
|
383
297
|
background: var(--code-bg);
|
|
384
|
-
color:
|
|
298
|
+
color: white;
|
|
299
|
+
border-radius: 6px;
|
|
300
|
+
font-size: 11px;
|
|
385
301
|
display: none;
|
|
386
|
-
|
|
387
|
-
overflow-
|
|
388
|
-
border-left: none;
|
|
302
|
+
max-height: 200px;
|
|
303
|
+
overflow-y: auto;
|
|
389
304
|
}
|
|
390
305
|
|
|
391
306
|
.response.show {
|
|
392
307
|
display: block;
|
|
393
|
-
animation: fadeIn 0.3s ease;
|
|
394
|
-
}
|
|
395
|
-
|
|
396
|
-
.response.success {
|
|
397
|
-
border: 1px solid rgba(52, 199, 89, 0.3);
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
.response.error {
|
|
401
|
-
border: 1px solid rgba(255, 59, 48, 0.3);
|
|
402
|
-
background: #2C1515;
|
|
403
308
|
}
|
|
404
309
|
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
white-space: pre-wrap;
|
|
409
|
-
word-wrap: break-word;
|
|
410
|
-
}
|
|
411
|
-
|
|
412
|
-
@keyframes fadeIn {
|
|
413
|
-
from {
|
|
414
|
-
opacity: 0;
|
|
415
|
-
transform: translateY(5px);
|
|
416
|
-
}
|
|
417
|
-
|
|
418
|
-
to {
|
|
419
|
-
opacity: 1;
|
|
420
|
-
transform: translateY(0);
|
|
421
|
-
}
|
|
310
|
+
/* Tree specific compact override */
|
|
311
|
+
.tree-container {
|
|
312
|
+
margin-top: 10px;
|
|
422
313
|
}
|
|
423
314
|
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
display: inline-block;
|
|
427
|
-
width: 18px;
|
|
428
|
-
height: 18px;
|
|
429
|
-
border: 2px solid rgba(255, 255, 255, 0.3);
|
|
430
|
-
border-radius: 50%;
|
|
431
|
-
border-top-color: currentColor;
|
|
432
|
-
animation: spin 0.8s linear infinite;
|
|
433
|
-
}
|
|
434
|
-
|
|
435
|
-
@keyframes spin {
|
|
436
|
-
to {
|
|
437
|
-
transform: rotate(360deg);
|
|
438
|
-
}
|
|
315
|
+
.tree-content {
|
|
316
|
+
max-height: 300px;
|
|
439
317
|
}
|
|
440
318
|
|
|
441
319
|
/* Toast */
|
|
442
320
|
.toast {
|
|
443
321
|
position: fixed;
|
|
444
|
-
|
|
445
|
-
left:
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
color: #000;
|
|
450
|
-
background: rgba(255, 255, 255, 0.95);
|
|
451
|
-
backdrop-filter: blur(20px);
|
|
452
|
-
-webkit-backdrop-filter: blur(20px);
|
|
453
|
-
font-weight: 500;
|
|
454
|
-
font-size: 15px;
|
|
455
|
-
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
|
|
456
|
-
transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.3s;
|
|
457
|
-
z-index: 2000;
|
|
458
|
-
display: flex;
|
|
459
|
-
align-items: center;
|
|
460
|
-
gap: 10px;
|
|
461
|
-
width: auto;
|
|
462
|
-
max-width: 90%;
|
|
463
|
-
white-space: nowrap;
|
|
464
|
-
opacity: 0;
|
|
465
|
-
pointer-events: none;
|
|
322
|
+
bottom: 20px;
|
|
323
|
+
left: 20px;
|
|
324
|
+
/* Move toast to bottom left */
|
|
325
|
+
transform: translateY(100px);
|
|
326
|
+
/* Adjust animation */
|
|
466
327
|
}
|
|
467
328
|
|
|
468
329
|
.toast.show {
|
|
469
|
-
transform:
|
|
470
|
-
opacity: 1;
|
|
330
|
+
transform: translateY(0);
|
|
471
331
|
}
|
|
472
332
|
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
border-radius: 50%;
|
|
479
|
-
flex-shrink: 0;
|
|
480
|
-
}
|
|
333
|
+
/* Mobile Responsiveness */
|
|
334
|
+
@media (max-width: 768px) {
|
|
335
|
+
.split-layout {
|
|
336
|
+
flex-direction: column;
|
|
337
|
+
}
|
|
481
338
|
|
|
482
|
-
.
|
|
483
|
-
|
|
484
|
-
|
|
339
|
+
.left-panel {
|
|
340
|
+
flex: none;
|
|
341
|
+
width: 100%;
|
|
342
|
+
max-width: 100%;
|
|
343
|
+
height: 50vh;
|
|
344
|
+
border-right: none;
|
|
345
|
+
border-bottom: 1px solid var(--ios-separator);
|
|
346
|
+
}
|
|
485
347
|
|
|
486
|
-
.
|
|
487
|
-
|
|
348
|
+
.right-panel {
|
|
349
|
+
flex: 1;
|
|
350
|
+
height: 50vh;
|
|
351
|
+
}
|
|
488
352
|
}
|