|
42 | 42 | let claudeCodeSessionId = $state<string | undefined>(
|
43 | 43 | initialFilterValues.claudeCodeSessionId ?? undefined
|
44 | 44 | );
|
45 |
| - let claudeResumeCommand = $derived( |
| 45 | + const claudeResumeCommand = $derived( |
46 | 46 | claudeCodeSessionId ? `claude --resume ${claudeCodeSessionId}` : undefined
|
47 | 47 | );
|
48 | 48 |
|
|
295 | 295 | {#if ruleFilterTypes.includes('claudeCodeSessionId')}
|
296 | 296 | {@render ruleFilterRow('claudeCodeSessionId')}
|
297 | 297 | {#if claudeResumeCommand}
|
298 |
| - <div class="text-12 text-body">Resume command</div> |
299 |
| - <div class="claude-command-copy-box m-top-12"> |
300 |
| - <p>{claudeResumeCommand}</p> |
301 |
| - <button |
302 |
| - type="button" |
303 |
| - class="claude-command--copy-icon" |
304 |
| - onclick={() => copyToClipboard(claudeResumeCommand)} |
305 |
| - > |
| 298 | + <button |
| 299 | + class="claude-command-copy" |
| 300 | + type="button" |
| 301 | + onclick={() => copyToClipboard(claudeResumeCommand)} |
| 302 | + > |
| 303 | + <p class="text-12 clr-text-3">Resume session command:</p> |
| 304 | + <code class="claude-command-copy__code">{claudeResumeCommand}</code> |
| 305 | + |
| 306 | + <i class="claude-command-copy__icon"> |
306 | 307 | <Icon name="copy" />
|
307 |
| - </button> |
308 |
| - </div> |
| 308 | + </i> |
| 309 | + </button> |
309 | 310 | {/if}
|
310 | 311 | {/if}
|
311 | 312 |
|
|
319 | 320 | />
|
320 | 321 |
|
321 | 322 | <style lang="postcss">
|
322 |
| - .claude-command-copy-box { |
| 323 | + .claude-command-copy { |
323 | 324 | display: flex;
|
324 |
| - padding: 8px 10px; |
325 |
| - gap: 10px; |
| 325 | + position: relative; |
| 326 | + flex-direction: column; |
| 327 | + margin-top: 10px; |
| 328 | + padding: 12px; |
| 329 | + gap: 6px; |
326 | 330 | border: 1px solid var(--clr-border-3);
|
327 | 331 | border-radius: var(--radius-m);
|
328 | 332 | background-color: var(--clr-bg-1-muted);
|
329 |
| - color: var(--clr-text-1); |
330 |
| - font-size: 12px; |
331 |
| - font-family: var(--fontfamily-mono); |
332 |
| - word-break: break-all; |
333 |
| - user-select: text; |
| 333 | + text-align: left; |
| 334 | +
|
| 335 | + &:hover { |
| 336 | + & .claude-command-copy__icon { |
| 337 | + color: var(--clr-text-2); |
| 338 | + } |
| 339 | + & .claude-command-copy__code { |
| 340 | + opacity: 0.8; |
| 341 | + } |
| 342 | + } |
334 | 343 | }
|
335 | 344 |
|
336 |
| - .claude-command--copy-icon { |
| 345 | + .claude-command-copy__icon { |
337 | 346 | display: flex;
|
| 347 | + position: absolute; |
| 348 | + top: 8px; |
| 349 | + right: 8px; |
338 | 350 | color: var(--clr-text-3);
|
339 | 351 | transition: color var(--transition-fast);
|
| 352 | + } |
340 | 353 |
|
341 |
| - &:hover { |
342 |
| - color: var(--clr-text-2); |
343 |
| - } |
| 354 | + .claude-command-copy__code { |
| 355 | + font-size: 12px; |
| 356 | + line-height: 1.5; |
| 357 | + font-family: var(--fontfamily-mono); |
| 358 | + word-break: break-all; |
| 359 | + opacity: 0.6; |
| 360 | + transition: opacity var(--transition-fast); |
| 361 | + user-select: text; |
344 | 362 | }
|
345 | 363 |
|
346 | 364 | .rule-filter-row {
|
|
0 commit comments