rel="me" links & easy linting

This commit is contained in:
Taevas 2024-11-03 16:42:51 +01:00
parent 36fab09613
commit 386c0850a9
5 changed files with 8 additions and 21 deletions

View file

@ -58,7 +58,7 @@ export default function Wanikani() {
};
useEffect(() => {
getWanikani().catch((e) => {
getWanikani().catch(() => {
setError(true);
});
}, []);
@ -71,14 +71,14 @@ export default function Wanikani() {
let level = <></>;
const unlockedLevels = wanikani.progression.data.filter(d => typeof d.data.unlocked_at === "string");
if (unlockedLevels.length) {
let arr = unlockedLevels.sort((a, b) => new Date(b.data.unlocked_at!).getTime() - new Date(a.data.unlocked_at!).getTime());
const arr = unlockedLevels.sort((a, b) => new Date(b.data.unlocked_at!).getTime() - new Date(a.data.unlocked_at!).getTime());
level = <p className="mb-4"><b>Level {arr[0].data.level}</b> reached!<br/>
<b>{new Date(arr[0].data.unlocked_at!).toISOString().substring(0, 10)}</b></p>;
}
let resets = <></>;
if (wanikani.resets.length) {
let allResets: React.JSX.Element[] = [];
const allResets: React.JSX.Element[] = [];
for (const dataWrapper of wanikani.resets) {
const data = dataWrapper.data;
allResets.push(<p><b>{`${new Date(data.created_at).toISOString().substring(0, 10)}`}</b>{`: Reset my progress from level ${data.original_level} to level ${data.target_level}`}</p>);

View file

@ -16,7 +16,7 @@ export default function SocialButton({
padding?: string;
}) {
return (
<a draggable="false" href={link} target="_blank" rel="noreferrer">
<a draggable="false" href={link} rel="me">
<button title={title} className={`
m-1 h-12 w-12 bg-white text-black tracking-[-.2em]
rounded-full border-solid hover:border-dashed active:brightness-95 border-4 hover:border-8 ${border}

View file

@ -33,8 +33,8 @@ export default function Support({
/>
</p>
<Translatable
en={<ButtonLink link="https://ko-fi.com/V7V4J78L0" text="Support me on Ko-fi!" />}
fr={<ButtonLink link="https://ko-fi.com/V7V4J78L0" text="Soutenez-moi sur Ko-fi !"/>}
en={<ButtonLink link="https://ko-fi.com/taevas" text="Support me on Ko-fi!" />}
fr={<ButtonLink link="https://ko-fi.com/taevas" text="Soutenez-moi sur Ko-fi !"/>}
/>
</div>
)];

View file

@ -24,7 +24,7 @@ export default function Website({
return (
<div className="hover:font-bold active:font-bold overflow-hidden">
<a href={link} target="_blank" rel="noreferrer" draggable="false">
<a href={link} rel="me" draggable="false">
<h2 className="pr-1 py-1 rounded-tr-[10px] bg-white uppercase text-right font-bold text-indigo-500 transition-all
hover:brightness-110 hover:pr-4 hover:text-blue-600">
{name}

View file

@ -4,26 +4,13 @@ import Tabs from "./MainContent/Tabs.js";
import {type TabDetails, LanguageContext, TabContext} from "../contexts.js";
export default function MainContent() {
const storedTabs = localStorage.getItem("tabs")?.split(",")
.filter((t) => t.length)
.map((t) => {
const details = t.split("_");
return ({
id: details[0],
priority: details[1],
} satisfies TabDetails);
});
const [lang, setLang] = useState<string>(localStorage.getItem("lang") ?? "en");
const [tabs, setTabs] = useState<TabDetails[]>([]); //(storedTabs?.length ? storedTabs : []);
const [tabs, setTabs] = useState<TabDetails[]>([]);
useEffect(() => {
localStorage.setItem("lang", lang);
}, [lang]);
useEffect(() => {
localStorage.setItem("tabs", tabs.map((t) => `${t.id}_${t.priority}`).toString());
}, [tabs]);
return (
<div className="h-screen w-screen max-w-[1632px] m-auto lg:pl-[50px] lg:pr-[413px] lg:py-12">
<LanguageContext.Provider value={lang}>