atproto explorer pdsls.dev
atproto tool

adjust rounding

juli.ee 9b74179b edf3a926

verified
Changed files
+33 -37
src
+1 -1
src/components/login.tsx
···
/>
<button
onclick={() => login(loginInput())}
-
class="flex items-center rounded-lg p-1 hover:bg-neutral-100 active:bg-neutral-200 dark:hover:bg-neutral-600 dark:active:bg-neutral-500"
>
<span class="iconify lucide--log-in"></span>
</button>
···
/>
<button
onclick={() => login(loginInput())}
+
class="flex items-center rounded-md p-1 hover:bg-neutral-100 active:bg-neutral-200 dark:hover:bg-neutral-600 dark:active:bg-neutral-500"
>
<span class="iconify lucide--log-in"></span>
</button>
+2 -2
src/components/search.tsx
···
<Show when={input()} fallback={ListUrlsTooltip()}>
<button
type="button"
-
class="flex items-center rounded-lg p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-600 dark:active:bg-neutral-500"
onClick={() => setInput(undefined)}
>
<span class="iconify lucide--x"></span>
···
</Modal>
<button
type="button"
-
class="flex items-center rounded-lg p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-600 dark:active:bg-neutral-500"
onClick={() => setOpenList(true)}
>
<span class="iconify lucide--help-circle"></span>
···
<Show when={input()} fallback={ListUrlsTooltip()}>
<button
type="button"
+
class="flex items-center rounded-md p-1 hover:bg-neutral-100 active:bg-neutral-200 dark:hover:bg-neutral-600 dark:active:bg-neutral-500"
onClick={() => setInput(undefined)}
>
<span class="iconify lucide--x"></span>
···
</Modal>
<button
type="button"
+
class="flex items-center rounded-md p-1 hover:bg-neutral-100 active:bg-neutral-200 dark:hover:bg-neutral-600 dark:active:bg-neutral-500"
onClick={() => setOpenList(true)}
>
<span class="iconify lucide--help-circle"></span>
+5 -5
src/views/collection.tsx
···
setLastSelected(undefined);
setBatchDelete(!batchDelete());
}}
-
class="flex items-center rounded-lg p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span
class={`iconify text-lg ${batchDelete() ? "lucide--circle-x" : "lucide--trash-2"} `}
···
children={
<button
onclick={() => selectAll()}
-
class="flex items-center rounded-lg p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--copy-check text-lg"></span>
</button>
···
setRecreate(true);
setOpenDelete(true);
}}
-
class="flex items-center rounded-lg p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--recycle text-lg text-green-500 dark:text-green-400"></span>
</button>
···
setRecreate(false);
setOpenDelete(true);
}}
-
class="flex items-center rounded-lg p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--trash-2 text-lg text-red-500 dark:text-red-400"></span>
</button>
···
<Tooltip text="Jetstream">
<A
href={`/jetstream?collections=${params.collection}&dids=${params.repo}`}
-
class="flex items-center rounded-lg p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--radio-tower text-lg"></span>
</A>
···
setLastSelected(undefined);
setBatchDelete(!batchDelete());
}}
+
class="flex items-center rounded-md p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span
class={`iconify text-lg ${batchDelete() ? "lucide--circle-x" : "lucide--trash-2"} `}
···
children={
<button
onclick={() => selectAll()}
+
class="flex items-center rounded-md p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--copy-check text-lg"></span>
</button>
···
setRecreate(true);
setOpenDelete(true);
}}
+
class="flex items-center rounded-md p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--recycle text-lg text-green-500 dark:text-green-400"></span>
</button>
···
setRecreate(false);
setOpenDelete(true);
}}
+
class="flex items-center rounded-md p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--trash-2 text-lg text-red-500 dark:text-red-400"></span>
</button>
···
<Tooltip text="Jetstream">
<A
href={`/jetstream?collections=${params.collection}&dids=${params.repo}`}
+
class="flex items-center rounded-md p-1 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--radio-tower text-lg"></span>
</A>
+14 -16
src/views/pds.tsx
···
<div class="flex items-center">
<A
href={`/at://${repo.did}`}
-
class="grow truncate rounded py-0.5 font-mono hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
{repo.did}
</A>
···
</Show>
<button
onclick={() => setOpenInfo(true)}
-
class="flex items-center rounded-lg p-1.5 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--info"></span>
</button>
···
};
const Tab = (props: { tab: "repos" | "info"; label: string }) => (
-
<div class="flex items-center gap-0.5">
-
<A
-
classList={{
-
"flex items-center gap-1 border-b-2": true,
-
"border-transparent hover:border-neutral-400 dark:hover:border-neutral-600":
-
(!!location.hash && location.hash !== `#${props.tab}`) ||
-
(!location.hash && props.tab !== "repos"),
-
}}
-
href={`/${params.pds}#${props.tab}`}
-
>
-
{props.label}
-
</A>
-
</div>
);
return (
<Show when={repos() || response()}>
<div class="flex w-full flex-col">
<div class="dark:shadow-dark-700 dark:bg-dark-300 mb-2 flex w-full justify-between rounded-lg border-[0.5px] border-neutral-300 bg-neutral-50 p-2 text-sm shadow-xs dark:border-neutral-700">
-
<div class="ml-1 flex gap-3">
<Tab tab="repos" label="Repositories" />
<Tab tab="info" label="Info" />
</div>
···
<div class="flex items-center">
<A
href={`/at://${repo.did}`}
+
class="grow truncate rounded-md p-0.5 font-mono hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
{repo.did}
</A>
···
</Show>
<button
onclick={() => setOpenInfo(true)}
+
class="flex items-center rounded-md p-1.5 hover:bg-neutral-200 active:bg-neutral-300 dark:hover:bg-neutral-700 dark:active:bg-neutral-600"
>
<span class="iconify lucide--info"></span>
</button>
···
};
const Tab = (props: { tab: "repos" | "info"; label: string }) => (
+
<A
+
classList={{
+
"border-b-2": true,
+
"border-transparent hover:border-neutral-400 dark:hover:border-neutral-600":
+
(!!location.hash && location.hash !== `#${props.tab}`) ||
+
(!location.hash && props.tab !== "repos"),
+
}}
+
href={`/${params.pds}#${props.tab}`}
+
>
+
{props.label}
+
</A>
);
return (
<Show when={repos() || response()}>
<div class="flex w-full flex-col">
<div class="dark:shadow-dark-700 dark:bg-dark-300 mb-2 flex w-full justify-between rounded-lg border-[0.5px] border-neutral-300 bg-neutral-50 p-2 text-sm shadow-xs dark:border-neutral-700">
+
<div class="ml-1 flex items-center gap-3">
<Tab tab="repos" label="Repositories" />
<Tab tab="info" label="Info" />
</div>
+2 -2
src/views/record.tsx
···
<div class="flex items-center gap-0.5">
<A
classList={{
-
"flex items-center gap-1 border-b-2": true,
"border-transparent hover:border-neutral-400 dark:hover:border-neutral-600":
!isActive(),
}}
···
<Show when={record()} keyed>
<div class="flex w-full flex-col items-center">
<div class="dark:shadow-dark-700 dark:bg-dark-300 mb-3 flex w-full justify-between rounded-lg border-[0.5px] border-neutral-300 bg-neutral-50 p-2 text-sm shadow-xs dark:border-neutral-700">
-
<div class="ml-1 flex gap-3">
<RecordTab tab="record" label="Record" />
<RecordTab tab="schema" label="Schema" />
<RecordTab tab="backlinks" label="Backlinks" />
···
<div class="flex items-center gap-0.5">
<A
classList={{
+
"border-b-2": true,
"border-transparent hover:border-neutral-400 dark:hover:border-neutral-600":
!isActive(),
}}
···
<Show when={record()} keyed>
<div class="flex w-full flex-col items-center">
<div class="dark:shadow-dark-700 dark:bg-dark-300 mb-3 flex w-full justify-between rounded-lg border-[0.5px] border-neutral-300 bg-neutral-50 p-2 text-sm shadow-xs dark:border-neutral-700">
+
<div class="ml-1 flex items-center gap-3">
<RecordTab tab="record" label="Record" />
<RecordTab tab="schema" label="Schema" />
<RecordTab tab="backlinks" label="Backlinks" />
+9 -11
src/views/repo.tsx
···
};
return (
-
<A class="flex items-center" href={`/at://${params.repo}#${props.tab}`}>
-
<span
-
classList={{
-
"flex items-center border-b-2": true,
-
"border-transparent hover:border-neutral-400 dark:hover:border-neutral-600":
-
!isActive(),
-
}}
-
>
-
{props.label}
-
</span>
</A>
);
};
···
<Show when={repo()}>
<div class="flex w-full flex-col gap-3 wrap-break-word">
<div class="dark:shadow-dark-700 dark:bg-dark-300 flex justify-between rounded-lg border-[0.5px] border-neutral-300 bg-neutral-50 p-2 text-sm shadow-xs dark:border-neutral-700">
-
<div class="ml-1 flex gap-2 text-xs sm:gap-4 sm:text-sm">
<Show when={!error()}>
<RepoTab tab="collections" label="Collections" />
</Show>
···
};
return (
+
<A
+
classList={{
+
"border-b-2": true,
+
"border-transparent hover:border-neutral-400 dark:hover:border-neutral-600": !isActive(),
+
}}
+
href={`/at://${params.repo}#${props.tab}`}
+
>
+
{props.label}
</A>
);
};
···
<Show when={repo()}>
<div class="flex w-full flex-col gap-3 wrap-break-word">
<div class="dark:shadow-dark-700 dark:bg-dark-300 flex justify-between rounded-lg border-[0.5px] border-neutral-300 bg-neutral-50 p-2 text-sm shadow-xs dark:border-neutral-700">
+
<div class="ml-1 flex items-center gap-2 text-xs sm:gap-4 sm:text-sm">
<Show when={!error()}>
<RepoTab tab="collections" label="Collections" />
</Show>