2025-09-27 01:04:28 +03:00
|
|
|
import "./Footer.css";
|
2025-09-27 22:36:26 +03:00
|
|
|
import Icon from "./Icon.js";
|
2025-09-27 13:37:31 +03:00
|
|
|
import githubIcon from "../assets/boxicons/bx-github.svg?raw";
|
|
|
|
|
import githubDiscussionsIcon from "../assets/boxicons/bx-discussion.svg?raw";
|
|
|
|
|
import matrixIcon from "../assets/boxicons/bx-message-dots.svg?raw";
|
|
|
|
|
import redditIcon from "../assets/boxicons/bx-reddit.svg?raw";
|
2025-09-27 22:36:26 +03:00
|
|
|
import { Link } from "./Button.js";
|
2025-10-11 22:45:37 +03:00
|
|
|
import { t } from "../i18n";
|
2025-09-27 01:04:28 +03:00
|
|
|
|
2025-09-26 23:24:28 +03:00
|
|
|
export default function Footer() {
|
|
|
|
|
return (
|
|
|
|
|
<footer>
|
|
|
|
|
<div class="content-wrapper">
|
2025-09-27 13:37:31 +03:00
|
|
|
<div class="footer-text">
|
2025-10-11 22:45:37 +03:00
|
|
|
© 2024-2025 <Link href="https://github.com/eliandoran" openExternally>Elian Doran</Link>{t("footer.copyright_and_the")}<Link href="https://github.com/TriliumNext/Trilium/graphs/contributors" openExternally>{t("footer.copyright_community")}</Link>.<br />
|
2025-09-27 14:02:49 +03:00
|
|
|
© 2017-2024 <Link href="https://github.com/zadam" openExternally>zadam</Link>.
|
2025-09-27 13:37:31 +03:00
|
|
|
</div>
|
|
|
|
|
|
2025-09-27 17:37:01 +03:00
|
|
|
<SocialButtons />
|
|
|
|
|
</div>
|
|
|
|
|
</footer>
|
|
|
|
|
)
|
|
|
|
|
}
|
2025-09-27 13:37:31 +03:00
|
|
|
|
2025-09-27 17:37:01 +03:00
|
|
|
export function SocialButtons({ className, withText }: { className?: string, withText?: boolean }) {
|
|
|
|
|
return (
|
|
|
|
|
<div className={`social-buttons ${className}`}>
|
|
|
|
|
<SocialButton
|
2025-10-11 22:45:37 +03:00
|
|
|
name={t("social_buttons.github")}
|
2025-09-27 17:37:01 +03:00
|
|
|
iconSvg={githubIcon}
|
|
|
|
|
url="https://github.com/TriliumNext/Trilium"
|
|
|
|
|
withText={withText}
|
|
|
|
|
/>
|
2025-09-27 13:37:31 +03:00
|
|
|
|
2025-09-27 17:37:01 +03:00
|
|
|
<SocialButton
|
2025-10-11 22:45:37 +03:00
|
|
|
name={t("social_buttons.github_discussions")}
|
2025-09-27 17:37:01 +03:00
|
|
|
iconSvg={githubDiscussionsIcon}
|
|
|
|
|
url="https://github.com/orgs/TriliumNext/discussions"
|
|
|
|
|
withText={withText}
|
|
|
|
|
/>
|
2025-09-27 13:37:31 +03:00
|
|
|
|
2025-09-27 17:37:01 +03:00
|
|
|
<SocialButton
|
2025-10-11 22:45:37 +03:00
|
|
|
name={t("social_buttons.matrix")}
|
2025-09-27 17:37:01 +03:00
|
|
|
iconSvg={matrixIcon}
|
|
|
|
|
url="https://matrix.to/#/#triliumnext:matrix.org"
|
|
|
|
|
withText={withText}
|
|
|
|
|
/>
|
|
|
|
|
|
|
|
|
|
<SocialButton
|
2025-10-11 22:45:37 +03:00
|
|
|
name={t("social_buttons.reddit")}
|
2025-09-27 17:37:01 +03:00
|
|
|
iconSvg={redditIcon}
|
|
|
|
|
url="https://www.reddit.com/r/Trilium/"
|
|
|
|
|
withText={withText}
|
|
|
|
|
/>
|
|
|
|
|
</div>
|
2025-09-26 23:24:28 +03:00
|
|
|
)
|
|
|
|
|
}
|
2025-09-27 13:37:31 +03:00
|
|
|
|
2025-10-03 19:09:23 +03:00
|
|
|
export function SocialButton({ name, iconSvg, url, withText, counter }: { name: string, iconSvg: string, url: string, withText?: boolean, counter?: string | undefined }) {
|
2025-09-27 13:37:31 +03:00
|
|
|
return (
|
2025-09-27 17:37:01 +03:00
|
|
|
<Link
|
|
|
|
|
className="social-button"
|
|
|
|
|
href={url} openExternally
|
|
|
|
|
title={!withText ? name : undefined}
|
|
|
|
|
>
|
2025-09-27 13:37:31 +03:00
|
|
|
<Icon svg={iconSvg} />
|
2025-10-11 22:45:37 +03:00
|
|
|
{counter && <span class="counter">{counter}</span>}
|
2025-09-27 17:37:01 +03:00
|
|
|
{withText && name}
|
2025-09-27 14:02:49 +03:00
|
|
|
</Link>
|
2025-09-27 13:37:31 +03:00
|
|
|
)
|
|
|
|
|
}
|
2025-10-03 19:09:23 +03:00
|
|
|
|