Commit 82edb61a authored by Grant's avatar Grant
Browse files

feat: FAQ

parent 8f134c4e
Loading
Loading
Loading
Loading
Loading
+28 −34
Original line number Diff line number Diff line
import { faUserGroup } from "@fortawesome/free-solid-svg-icons";
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import { Link } from "@heroui/react";
import { InfoSection } from "./components/InfoSection";

export const InfoCommunity = () => {
  return (
    <div className="flex flex-col gap-2">
      <header className="flex items-center gap-1">
        <FontAwesomeIcon icon={faUserGroup} className="pt-0.5" />
        <h2 className="text-large font-semibold">Community Links</h2>
      </header>
      <section>
    <InfoSection icon={faUserGroup} title="Community Links">
      <ul className="list-disc text-default-800 ml-10 flex flex-col gap-1 *:*:not-last:mr-1">
        <li>
          <Link href="https://canvasstats.com" target="_blank">
@@ -35,7 +30,6 @@ export const InfoCommunity = () => {
          </Link>
        </li>
      </ul>
      </section>
    </div>
    </InfoSection>
  );
};
+18 −0
Original line number Diff line number Diff line
import { faQuestionCircle } from "@fortawesome/free-solid-svg-icons";
import { InfoSection } from "./components/InfoSection";

export const InfoFAQ = () => {
  return (
    <InfoSection icon={faQuestionCircle} title="FAQ">
      <ul className="list-disc text-default-800 ml-10 flex flex-col gap-1">
        <li>
          <p>Why are my pixels misaligned?</p>
          <p className="text-default-600">
            This is due to browser zoom. The typical keybind to reset this is
            ctrl/cmd + zero
          </p>
        </li>
      </ul>
    </InfoSection>
  );
};
+12 −21
Original line number Diff line number Diff line
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import { faShieldHalved } from "@fortawesome/free-solid-svg-icons";
import { Link } from "@heroui/react";
import { InfoSection } from "./components/InfoSection";

export const InfoPrivacy = () => {
  return (
    <div className="flex flex-col gap-2">
      <header className="flex items-center gap-1">
        <FontAwesomeIcon icon={faShieldHalved} className="pt-0.5" />
        <h2 className="text-large font-semibold">Privacy</h2>
      </header>
      <section>
    <InfoSection icon={faShieldHalved} title="Privacy">
      <ul className="list-disc text-default-800 ml-10 flex flex-col gap-1">
        <li>
            <Link
              href="https://www.npmjs.com/package/altcha-lib"
              target="_blank"
            >
          <Link href="https://www.npmjs.com/package/altcha-lib" target="_blank">
            altcha-lib
          </Link>{" "}
          is used for proof-of-work captcha verification
        </li>
        <li>Usernames should not be assumed to be private</li>
      </ul>
      </section>
    </div>
    </InfoSection>
  );
};
+5 −9
Original line number Diff line number Diff line
import { faGavel } from "@fortawesome/free-solid-svg-icons";
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import { type IRule } from "./InfoText";
import useSWR from "swr";
import { InfoSection } from "./components/InfoSection";

export const InfoRules = () => {
  const {
@@ -11,15 +11,11 @@ export const InfoRules = () => {
  } = useSWR<{ rules: IRule[] }>("/api/info");

  return (
    <div className="flex flex-col gap-2">
      <header className="flex items-center gap-1">
        <FontAwesomeIcon icon={faGavel} className="pt-0.5" />
        <h2 className="text-xl font-semibold">Rules</h2>
      </header>
    <InfoSection icon={faGavel} title="Rules">
      {isLoading
        ? "Loading"
        : error || (
            <section>
            <>
              <ol className="list-decimal text-default-800 ml-10 flex flex-col gap-1">
                {meta?.rules.map((rule) => (
                  <li key={rule.id}>
@@ -37,8 +33,8 @@ export const InfoRules = () => {
                have complete discretion on the rules. If you have any
                questions, ask in the Matrix space or the Discord
              </p>
            </section>
            </>
          )}
    </div>
    </InfoSection>
  );
};
+2 −0
Original line number Diff line number Diff line
import { EventDatesCard } from "../EventInfo";
import { InfoCommunity } from "./InfoCommunity";
import { InfoFAQ } from "./InfoFAQ";
import { InfoPrivacy } from "./InfoPrivacy";
import { InfoRules } from "./InfoRules";
import { InfoWelcome } from "./InfoWelcome";
@@ -17,6 +18,7 @@ export const InfoText = () => {
      <EventDatesCard />
      <InfoWelcome />
      <InfoRules />
      <InfoFAQ />
      <InfoPrivacy />
      <InfoCommunity />
    </div>
Loading