+26
-4
src/App.tsx
+26
-4
src/App.tsx
···
472
472
<div>
473
473
<label for={"record" + index()} class="flex flex-col">
474
474
<Show when={record.handle.length}>
475
-
<span>@{record.handle}</span>
475
+
<span class="flex items-center gap-x-1">
476
+
@{record.handle}
477
+
<a
478
+
href={`https://bsky.app/profile/${record.did}`}
479
+
target="_blank"
480
+
class="flex items-center text-blue-500 hover:underline dark:text-blue-400"
481
+
>
482
+
<button class="i-tabler-external-link text-sm" />
483
+
</a>
484
+
</span>
476
485
</Show>
477
-
<span>{record.did}</span>
486
+
<span class="flex items-center gap-x-1">
487
+
{record.did}
488
+
<a
489
+
href={
490
+
record.did.startsWith("did:plc:") ?
491
+
`https://web.plc.directory/did/${record.did}`
492
+
: `https://${record.did.replace("did:web:", "")}/.well-known/did.json`
493
+
}
494
+
target="_blank"
495
+
class="flex items-center text-blue-500 hover:underline dark:text-blue-400"
496
+
>
497
+
<button class="i-tabler-external-link text-sm" />
498
+
</a>
499
+
</span>
478
500
<span>{record.status_label}</span>
479
501
</label>
480
502
</div>
···
527
549
href="https://bsky.app/profile/did:plc:b3pn34agqqchkaf75v7h43dk"
528
550
target="_blank"
529
551
>
530
-
<div class="i-fa6-brands-bluesky text-xl" />
552
+
<button class="i-fa6-brands-bluesky text-xl" />
531
553
</a>
532
554
<a
533
555
title="GitHub"
534
556
href="https://github.com/notjuliet/cleanfollow-bsky"
535
557
target="_blank"
536
558
>
537
-
<div class="i-bi-github text-xl" />
559
+
<button class="i-bi-github text-xl" />
538
560
</a>
539
561
</div>
540
562
</div>
+12
src/icons.css
+12
src/icons.css
···
45
45
width: 1.2em;
46
46
height: 1.2em;
47
47
}
48
+
49
+
.i-tabler-external-link {
50
+
--un-icon: url("data:image/svg+xml;utf8,%3Csvg viewBox='0 0 24 24' width='1.2em' height='1.2em' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 6H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-6m-7 1l9-9m-5 0h5v5'/%3E%3C/svg%3E");
51
+
-webkit-mask: var(--un-icon) no-repeat;
52
+
mask: var(--un-icon) no-repeat;
53
+
-webkit-mask-size: 100% 100%;
54
+
mask-size: 100% 100%;
55
+
background-color: currentColor;
56
+
color: inherit;
57
+
width: 1.2em;
58
+
height: 1.2em;
59
+
}