1
0
mirror of https://github.com/XFox111/TabsAsideExtension.git synced 2026-04-22 07:58:01 +03:00

Major 3.0 (#118)

Co-authored-by: Maison da Silva <maisonmdsgreen@hotmail.com>
This commit is contained in:
2025-07-30 15:02:26 +03:00
committed by GitHub
parent d6996031b6
commit 2bd9337e63
200 changed files with 19452 additions and 3339 deletions
+47
View File
@@ -0,0 +1,47 @@
import App from "@/App.tsx";
import "@/assets/global.css";
import { Tab, TabList } from "@fluentui/react-components";
import ReactDOM from "react-dom/client";
import { useOptionsStyles } from "./hooks/useOptionsStyles.ts";
import AboutSection from "./layouts/AboutSection.tsx";
import ActionsSection from "./layouts/ActionsSection.tsx";
import GeneralSection from "./layouts/GeneralSection.tsx";
import StorageSection from "./layouts/StorageSection.tsx";
ReactDOM.createRoot(document.getElementById("root")!).render(
<App>
<OptionsPage />
</App>
);
analytics.page("options_page");
function OptionsPage(): React.ReactElement
{
const [selection, setSelection] = useState<SelectionType>("general");
const cls = useOptionsStyles();
return (
<main className={ cls.main }>
<TabList
className={ cls.tabList }
selectedValue={ selection }
onTabSelect={ (_, data) => setSelection(data.value as SelectionType) }
>
<Tab value="general">{ i18n.t("options_page.general.title") }</Tab>
<Tab value="actions">{ i18n.t("options_page.actions.title") }</Tab>
<Tab value="storage">{ i18n.t("options_page.storage.title") }</Tab>
<Tab value="about">{ i18n.t("options_page.about.title") }</Tab>
</TabList>
<article className={ cls.article }>
{ selection === "general" && <GeneralSection /> }
{ selection === "actions" && <ActionsSection /> }
{ selection === "storage" && <StorageSection /> }
{ selection === "about" && <AboutSection /> }
</article>
</main>
);
}
type SelectionType = "general" | "actions" | "storage" | "about";