mirror of
https://github.com/docmost/docmost.git
synced 2026-08-28 17:27:06 +08:00
* feat: support i18n * feat: wip support i18n * feat: complete space translation * feat: complete page translation * feat: update space translation * feat: update workspace translation * feat: update group translation * feat: update workspace translation * feat: update page translation * feat: update user translation * chore: update pnpm-lock * feat: add query translation * refactor: merge to single file * chore: remove necessary code * feat: save language to BE * fix: only load current language * feat: save language to locale column * fix: cleanups * add language menu to preferences page * new translations * translate editor * Translate editor placeholders * translate space selection component --------- Co-authored-by: Philip Okugbe <phil@docmost.com> Co-authored-by: Philip Okugbe <16838612+Philipinho@users.noreply.github.com>
31 lines
862 B
TypeScript
31 lines
862 B
TypeScript
import SettingsTitle from "@/components/settings/settings-title.tsx";
|
|
import SpaceList from "@/features/space/components/space-list.tsx";
|
|
import useUserRole from "@/hooks/use-user-role.tsx";
|
|
import { Group } from "@mantine/core";
|
|
import CreateSpaceModal from "@/features/space/components/create-space-modal.tsx";
|
|
import { Helmet } from "react-helmet-async";
|
|
import { getAppName } from "@/lib/config.ts";
|
|
import { useTranslation } from "react-i18next";
|
|
|
|
export default function Spaces() {
|
|
const { t } = useTranslation();
|
|
const { isAdmin } = useUserRole();
|
|
|
|
return (
|
|
<>
|
|
<Helmet>
|
|
<title>
|
|
{t("Spaces")} - {getAppName()}
|
|
</title>
|
|
</Helmet>
|
|
<SettingsTitle title={t("Spaces")} />
|
|
|
|
<Group my="md" justify="flex-end">
|
|
{isAdmin && <CreateSpaceModal />}
|
|
</Group>
|
|
|
|
<SpaceList />
|
|
</>
|
|
);
|
|
}
|