aboutsummaryrefslogtreecommitdiff
path: root/FrontEnd/src/views
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2023-07-11 01:07:57 +0800
committerGitHub <noreply@github.com>2023-07-11 01:07:57 +0800
commita702dff4b62090a4e5453a8b9236824288df0c4f (patch)
tree0deae7f40692345c8e4b1473cdddbd13e0e5586d /FrontEnd/src/views
parent4cb87464fea217e1d0969747d6a17e88973982e7 (diff)
parentd46b1aed549938c9f5e3e658b4098e71b5e2acf7 (diff)
downloadtimeline-a702dff4b62090a4e5453a8b9236824288df0c4f.tar.gz
timeline-a702dff4b62090a4e5453a8b9236824288df0c4f.tar.bz2
timeline-a702dff4b62090a4e5453a8b9236824288df0c4f.zip
Merge pull request #1381 from crupest/front-dev
Re-bootstrap front end.
Diffstat (limited to 'FrontEnd/src/views')
-rw-r--r--FrontEnd/src/views/about/index.tsx7
-rw-r--r--FrontEnd/src/views/admin/Admin.tsx1
-rw-r--r--FrontEnd/src/views/admin/AdminNav.tsx5
-rw-r--r--FrontEnd/src/views/admin/MoreAdmin.tsx2
-rw-r--r--FrontEnd/src/views/admin/UserAdmin.tsx3
-rw-r--r--FrontEnd/src/views/admin/index.tsx4
-rw-r--r--FrontEnd/src/views/center/CenterBoards.tsx2
-rw-r--r--FrontEnd/src/views/center/TimelineBoard.tsx2
-rw-r--r--FrontEnd/src/views/center/TimelineCreateDialog.tsx2
-rw-r--r--FrontEnd/src/views/center/index.tsx2
-rw-r--r--FrontEnd/src/views/common/AppBar.tsx4
-rw-r--r--FrontEnd/src/views/common/BlobImage.tsx2
-rw-r--r--FrontEnd/src/views/common/Card.tsx2
-rw-r--r--FrontEnd/src/views/common/ImageCropper.tsx2
-rw-r--r--FrontEnd/src/views/common/LoadFailReload.tsx2
-rw-r--r--FrontEnd/src/views/common/LoadingPage.tsx2
-rw-r--r--FrontEnd/src/views/common/SearchInput.tsx3
-rw-r--r--FrontEnd/src/views/common/Skeleton.tsx2
-rw-r--r--FrontEnd/src/views/common/Spinner.tsx2
-rw-r--r--FrontEnd/src/views/common/TimelineLogo.tsx3
-rw-r--r--FrontEnd/src/views/common/alert/AlertHost.tsx2
-rw-r--r--FrontEnd/src/views/common/button/Button.tsx2
-rw-r--r--FrontEnd/src/views/common/button/FlatButton.tsx2
-rw-r--r--FrontEnd/src/views/common/button/IconButton.tsx8
-rw-r--r--FrontEnd/src/views/common/button/LoadingButton.tsx18
-rw-r--r--FrontEnd/src/views/common/dailog/ConfirmDialog.tsx2
-rw-r--r--FrontEnd/src/views/common/dailog/Dialog.tsx2
-rw-r--r--FrontEnd/src/views/common/dailog/FullPageDialog.tsx2
-rw-r--r--FrontEnd/src/views/common/dailog/OperationDialog.tsx3
-rw-r--r--FrontEnd/src/views/common/input/InputPanel.tsx2
-rw-r--r--FrontEnd/src/views/common/menu/Menu.tsx2
-rw-r--r--FrontEnd/src/views/common/menu/PopupMenu.tsx2
-rw-r--r--FrontEnd/src/views/common/tab/TabPages.tsx2
-rw-r--r--FrontEnd/src/views/common/tab/Tabs.tsx2
-rw-r--r--FrontEnd/src/views/common/user/UserAvatar.tsx2
-rw-r--r--FrontEnd/src/views/home/TimelineListView.tsx2
-rw-r--r--FrontEnd/src/views/home/WebsiteIntroduction.tsx2
-rw-r--r--FrontEnd/src/views/home/index.tsx2
-rw-r--r--FrontEnd/src/views/login/index.tsx4
-rw-r--r--FrontEnd/src/views/register/index.tsx2
-rw-r--r--FrontEnd/src/views/search/index.tsx2
-rw-r--r--FrontEnd/src/views/settings/ChangeAvatarDialog.tsx3
-rw-r--r--FrontEnd/src/views/settings/ChangeNicknameDialog.tsx2
-rw-r--r--FrontEnd/src/views/settings/ChangePasswordDialog.tsx3
-rw-r--r--FrontEnd/src/views/settings/index.tsx9
-rw-r--r--FrontEnd/src/views/timeline/CollapseButton.tsx2
-rw-r--r--FrontEnd/src/views/timeline/ConnectionStatusBadge.tsx2
-rw-r--r--FrontEnd/src/views/timeline/MarkdownPostEdit.tsx2
-rw-r--r--FrontEnd/src/views/timeline/PostPropertyChangeDialog.tsx2
-rw-r--r--FrontEnd/src/views/timeline/Timeline.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelineCard.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelineDateLabel.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelineDeleteDialog.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelineEmptyItem.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelineLine.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelineLoading.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelineMember.tsx3
-rw-r--r--FrontEnd/src/views/timeline/TimelinePostContentView.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelinePostEdit.tsx8
-rw-r--r--FrontEnd/src/views/timeline/TimelinePostEditCard.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelinePostEditNoLogin.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelinePostListView.tsx3
-rw-r--r--FrontEnd/src/views/timeline/TimelinePostView.tsx2
-rw-r--r--FrontEnd/src/views/timeline/TimelinePropertyChangeDialog.tsx2
-rw-r--r--FrontEnd/src/views/timeline/index.tsx2
65 files changed, 95 insertions, 91 deletions
diff --git a/FrontEnd/src/views/about/index.tsx b/FrontEnd/src/views/about/index.tsx
index c7c225b8..093da894 100644
--- a/FrontEnd/src/views/about/index.tsx
+++ b/FrontEnd/src/views/about/index.tsx
@@ -1,4 +1,3 @@
-import React from "react";
import { useTranslation, Trans } from "react-i18next";
import authorAvatarUrl from "./author-avatar.png";
@@ -57,7 +56,7 @@ const backendCredits: {
},
];
-const AboutPage: React.FC = () => {
+export default function AboutPage() {
const { t } = useTranslation();
return (
@@ -141,6 +140,4 @@ const AboutPage: React.FC = () => {
</Card>
</div>
);
-};
-
-export default AboutPage;
+}
diff --git a/FrontEnd/src/views/admin/Admin.tsx b/FrontEnd/src/views/admin/Admin.tsx
index e8d86487..986c36b4 100644
--- a/FrontEnd/src/views/admin/Admin.tsx
+++ b/FrontEnd/src/views/admin/Admin.tsx
@@ -1,4 +1,3 @@
-import React from "react";
import { Route, Routes } from "react-router-dom";
import { useTranslation } from "react-i18next";
diff --git a/FrontEnd/src/views/admin/AdminNav.tsx b/FrontEnd/src/views/admin/AdminNav.tsx
index 49817cf8..b7385e5c 100644
--- a/FrontEnd/src/views/admin/AdminNav.tsx
+++ b/FrontEnd/src/views/admin/AdminNav.tsx
@@ -1,9 +1,8 @@
-import React from "react";
import { useLocation } from "react-router-dom";
import Tabs from "../common/tab/Tabs";
-const AdminNav: React.FC<{ className?: string }> = ({ className }) => {
+export function AdminNav({ className }: { className?: string }) {
const location = useLocation();
const name = location.pathname.split("/")[2] ?? "user";
@@ -25,6 +24,6 @@ const AdminNav: React.FC<{ className?: string }> = ({ className }) => {
]}
/>
);
-};
+}
export default AdminNav;
diff --git a/FrontEnd/src/views/admin/MoreAdmin.tsx b/FrontEnd/src/views/admin/MoreAdmin.tsx
index 218ac5fb..d49d211f 100644
--- a/FrontEnd/src/views/admin/MoreAdmin.tsx
+++ b/FrontEnd/src/views/admin/MoreAdmin.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
const MoreAdmin: React.FC = () => {
return <>More...</>;
diff --git a/FrontEnd/src/views/admin/UserAdmin.tsx b/FrontEnd/src/views/admin/UserAdmin.tsx
index fbcc28ba..f7337c81 100644
--- a/FrontEnd/src/views/admin/UserAdmin.tsx
+++ b/FrontEnd/src/views/admin/UserAdmin.tsx
@@ -1,4 +1,5 @@
-import React, { useState, useEffect } from "react";
+import { useState, useEffect } from "react";
+import * as React from "react";
import { Trans, useTranslation } from "react-i18next";
import classnames from "classnames";
diff --git a/FrontEnd/src/views/admin/index.tsx b/FrontEnd/src/views/admin/index.tsx
index 49da6586..0467711d 100644
--- a/FrontEnd/src/views/admin/index.tsx
+++ b/FrontEnd/src/views/admin/index.tsx
@@ -1,6 +1,6 @@
-import * as React from "react";
+import { lazy } from "react";
-const Admin = React.lazy(
+const Admin = lazy(
() => import(/* webpackChunkName: "admin" */ "./Admin")
);
diff --git a/FrontEnd/src/views/center/CenterBoards.tsx b/FrontEnd/src/views/center/CenterBoards.tsx
index e95f4cb8..a8be2c29 100644
--- a/FrontEnd/src/views/center/CenterBoards.tsx
+++ b/FrontEnd/src/views/center/CenterBoards.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { highlightTimelineUsername } from "@/common";
diff --git a/FrontEnd/src/views/center/TimelineBoard.tsx b/FrontEnd/src/views/center/TimelineBoard.tsx
index 68a887a4..b3ccdf8c 100644
--- a/FrontEnd/src/views/center/TimelineBoard.tsx
+++ b/FrontEnd/src/views/center/TimelineBoard.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { Link } from "react-router-dom";
diff --git a/FrontEnd/src/views/center/TimelineCreateDialog.tsx b/FrontEnd/src/views/center/TimelineCreateDialog.tsx
index 2afc7221..b0e2f59e 100644
--- a/FrontEnd/src/views/center/TimelineCreateDialog.tsx
+++ b/FrontEnd/src/views/center/TimelineCreateDialog.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useNavigate } from "react-router-dom";
import { validateTimelineName } from "@/services/timeline";
diff --git a/FrontEnd/src/views/center/index.tsx b/FrontEnd/src/views/center/index.tsx
index 283925b9..77af2c20 100644
--- a/FrontEnd/src/views/center/index.tsx
+++ b/FrontEnd/src/views/center/index.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useNavigate } from "react-router-dom";
import { useUserLoggedIn } from "@/services/user";
diff --git a/FrontEnd/src/views/common/AppBar.tsx b/FrontEnd/src/views/common/AppBar.tsx
index 208da3f7..278c70fd 100644
--- a/FrontEnd/src/views/common/AppBar.tsx
+++ b/FrontEnd/src/views/common/AppBar.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { useTranslation } from "react-i18next";
import { Link, NavLink } from "react-router-dom";
@@ -11,7 +11,7 @@ import UserAvatar from "./user/UserAvatar";
import "./AppBar.css";
-const AppBar: React.FC = (_) => {
+const AppBar: React.FC = () => {
const { t } = useTranslation();
const user = useUser();
diff --git a/FrontEnd/src/views/common/BlobImage.tsx b/FrontEnd/src/views/common/BlobImage.tsx
index 0dd25c52..5e050ebe 100644
--- a/FrontEnd/src/views/common/BlobImage.tsx
+++ b/FrontEnd/src/views/common/BlobImage.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
const BlobImage: React.FC<
Omit<React.ImgHTMLAttributes<HTMLImageElement>, "src"> & {
diff --git a/FrontEnd/src/views/common/Card.tsx b/FrontEnd/src/views/common/Card.tsx
index 7e2eb575..ebbce77e 100644
--- a/FrontEnd/src/views/common/Card.tsx
+++ b/FrontEnd/src/views/common/Card.tsx
@@ -1,5 +1,5 @@
import classNames from "classnames";
-import React from "react";
+import * as React from "react";
import "./Card.css";
diff --git a/FrontEnd/src/views/common/ImageCropper.tsx b/FrontEnd/src/views/common/ImageCropper.tsx
index 4262e18f..04e17415 100644
--- a/FrontEnd/src/views/common/ImageCropper.tsx
+++ b/FrontEnd/src/views/common/ImageCropper.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { UiLogicError } from "@/common";
diff --git a/FrontEnd/src/views/common/LoadFailReload.tsx b/FrontEnd/src/views/common/LoadFailReload.tsx
index a80e7b76..81ba1f67 100644
--- a/FrontEnd/src/views/common/LoadFailReload.tsx
+++ b/FrontEnd/src/views/common/LoadFailReload.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { Trans } from "react-i18next";
export interface LoadFailReloadProps {
diff --git a/FrontEnd/src/views/common/LoadingPage.tsx b/FrontEnd/src/views/common/LoadingPage.tsx
index 8c1e681a..35ee1aa8 100644
--- a/FrontEnd/src/views/common/LoadingPage.tsx
+++ b/FrontEnd/src/views/common/LoadingPage.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import Spinner from "./Spinner";
diff --git a/FrontEnd/src/views/common/SearchInput.tsx b/FrontEnd/src/views/common/SearchInput.tsx
index 0b1eb8e1..9d644ab7 100644
--- a/FrontEnd/src/views/common/SearchInput.tsx
+++ b/FrontEnd/src/views/common/SearchInput.tsx
@@ -1,4 +1,5 @@
-import React, { useCallback } from "react";
+import { useCallback } from "react";
+import * as React from "react";
import classnames from "classnames";
import { useTranslation } from "react-i18next";
diff --git a/FrontEnd/src/views/common/Skeleton.tsx b/FrontEnd/src/views/common/Skeleton.tsx
index 58d34215..3b149db9 100644
--- a/FrontEnd/src/views/common/Skeleton.tsx
+++ b/FrontEnd/src/views/common/Skeleton.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import range from "lodash/range";
diff --git a/FrontEnd/src/views/common/Spinner.tsx b/FrontEnd/src/views/common/Spinner.tsx
index 4c735fef..e99a9d1b 100644
--- a/FrontEnd/src/views/common/Spinner.tsx
+++ b/FrontEnd/src/views/common/Spinner.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { PaletteColorType } from "@/palette";
diff --git a/FrontEnd/src/views/common/TimelineLogo.tsx b/FrontEnd/src/views/common/TimelineLogo.tsx
index 27d188fc..e06ed0f5 100644
--- a/FrontEnd/src/views/common/TimelineLogo.tsx
+++ b/FrontEnd/src/views/common/TimelineLogo.tsx
@@ -1,4 +1,5 @@
-import React, { SVGAttributes } from "react";
+import { SVGAttributes } from "react";
+import * as React from "react";
export interface TimelineLogoProps extends SVGAttributes<SVGElement> {
color?: string;
diff --git a/FrontEnd/src/views/common/alert/AlertHost.tsx b/FrontEnd/src/views/common/alert/AlertHost.tsx
index 92db78fa..42074781 100644
--- a/FrontEnd/src/views/common/alert/AlertHost.tsx
+++ b/FrontEnd/src/views/common/alert/AlertHost.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import without from "lodash/without";
import { useTranslation } from "react-i18next";
import classNames from "classnames";
diff --git a/FrontEnd/src/views/common/button/Button.tsx b/FrontEnd/src/views/common/button/Button.tsx
index 1e4163ff..c5976909 100644
--- a/FrontEnd/src/views/common/button/Button.tsx
+++ b/FrontEnd/src/views/common/button/Button.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classNames from "classnames";
import { useTranslation } from "react-i18next";
diff --git a/FrontEnd/src/views/common/button/FlatButton.tsx b/FrontEnd/src/views/common/button/FlatButton.tsx
index a6377708..b42c5b3a 100644
--- a/FrontEnd/src/views/common/button/FlatButton.tsx
+++ b/FrontEnd/src/views/common/button/FlatButton.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import classNames from "classnames";
diff --git a/FrontEnd/src/views/common/button/IconButton.tsx b/FrontEnd/src/views/common/button/IconButton.tsx
index 74d7dd36..3ba56277 100644
--- a/FrontEnd/src/views/common/button/IconButton.tsx
+++ b/FrontEnd/src/views/common/button/IconButton.tsx
@@ -1,15 +1,15 @@
-import React from "react";
+import * as React from "react";
import classNames from "classnames";
import { PaletteColorType } from "@/palette";
import "./IconButton.css";
-export type IconButtonProps = {
+export interface IconButtonProps extends React.ComponentPropsWithRef<"i"> {
icon: string;
color?: PaletteColorType;
large?: boolean;
-} & React.ComponentPropsWithRef<"i">;
+}
export default function IconButton(props: IconButtonProps): JSX.Element {
const { icon, color, className, large, ...otherProps } = props;
@@ -21,7 +21,7 @@ export default function IconButton(props: IconButtonProps): JSX.Element {
large && "large",
"bi-" + icon,
color ? "cru-" + color : "cru-primary",
- className
+ className,
)}
{...otherProps}
/>
diff --git a/FrontEnd/src/views/common/button/LoadingButton.tsx b/FrontEnd/src/views/common/button/LoadingButton.tsx
index 2764f92e..fceaec27 100644
--- a/FrontEnd/src/views/common/button/LoadingButton.tsx
+++ b/FrontEnd/src/views/common/button/LoadingButton.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classNames from "classnames";
import { useTranslation } from "react-i18next";
@@ -7,13 +7,13 @@ import { PaletteColorType } from "@/palette";
import Spinner from "../Spinner";
-function LoadingButton(
- props: {
- color?: PaletteColorType;
- text?: I18nText;
- loading?: boolean;
- } & React.ComponentPropsWithoutRef<"button">
-): JSX.Element {
+interface LoadingButtonProps extends React.ComponentPropsWithoutRef<"button"> {
+ color?: PaletteColorType;
+ text?: I18nText;
+ loading?: boolean;
+}
+
+function LoadingButton(props: LoadingButtonProps): JSX.Element {
const { t } = useTranslation();
const { color, text, loading, className, children, ...otherProps } = props;
@@ -27,7 +27,7 @@ function LoadingButton(
className={classNames(
"cru-" + (color ?? "primary"),
"cru-button outline",
- className
+ className,
)}
{...otherProps}
>
diff --git a/FrontEnd/src/views/common/dailog/ConfirmDialog.tsx b/FrontEnd/src/views/common/dailog/ConfirmDialog.tsx
index 3817ce1e..8c2cea5a 100644
--- a/FrontEnd/src/views/common/dailog/ConfirmDialog.tsx
+++ b/FrontEnd/src/views/common/dailog/ConfirmDialog.tsx
@@ -1,5 +1,5 @@
import { convertI18nText, I18nText } from "@/common";
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import Button from "../button/Button";
diff --git a/FrontEnd/src/views/common/dailog/Dialog.tsx b/FrontEnd/src/views/common/dailog/Dialog.tsx
index ca733e3d..c755950d 100644
--- a/FrontEnd/src/views/common/dailog/Dialog.tsx
+++ b/FrontEnd/src/views/common/dailog/Dialog.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import ReactDOM from "react-dom";
import { CSSTransition } from "react-transition-group";
diff --git a/FrontEnd/src/views/common/dailog/FullPageDialog.tsx b/FrontEnd/src/views/common/dailog/FullPageDialog.tsx
index ef76f2f2..6368fc0a 100644
--- a/FrontEnd/src/views/common/dailog/FullPageDialog.tsx
+++ b/FrontEnd/src/views/common/dailog/FullPageDialog.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { createPortal } from "react-dom";
import classnames from "classnames";
import { CSSTransition } from "react-transition-group";
diff --git a/FrontEnd/src/views/common/dailog/OperationDialog.tsx b/FrontEnd/src/views/common/dailog/OperationDialog.tsx
index b0ffdac9..71be030a 100644
--- a/FrontEnd/src/views/common/dailog/OperationDialog.tsx
+++ b/FrontEnd/src/views/common/dailog/OperationDialog.tsx
@@ -1,4 +1,5 @@
-import React, { useState } from "react";
+import { useState } from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { TwitterPicker } from "react-color";
import classNames from "classnames";
diff --git a/FrontEnd/src/views/common/input/InputPanel.tsx b/FrontEnd/src/views/common/input/InputPanel.tsx
index c76b8d45..234ed267 100644
--- a/FrontEnd/src/views/common/input/InputPanel.tsx
+++ b/FrontEnd/src/views/common/input/InputPanel.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classNames from "classnames";
import { useTranslation } from "react-i18next";
import { TwitterPicker } from "react-color";
diff --git a/FrontEnd/src/views/common/menu/Menu.tsx b/FrontEnd/src/views/common/menu/Menu.tsx
index d2f65391..de3b1664 100644
--- a/FrontEnd/src/views/common/menu/Menu.tsx
+++ b/FrontEnd/src/views/common/menu/Menu.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { useTranslation } from "react-i18next";
diff --git a/FrontEnd/src/views/common/menu/PopupMenu.tsx b/FrontEnd/src/views/common/menu/PopupMenu.tsx
index b8f24978..74ca7aba 100644
--- a/FrontEnd/src/views/common/menu/PopupMenu.tsx
+++ b/FrontEnd/src/views/common/menu/PopupMenu.tsx
@@ -1,5 +1,5 @@
import classNames from "classnames";
-import React from "react";
+import * as React from "react";
import { createPortal } from "react-dom";
import { usePopper } from "react-popper";
diff --git a/FrontEnd/src/views/common/tab/TabPages.tsx b/FrontEnd/src/views/common/tab/TabPages.tsx
index 677f558a..cdb988e0 100644
--- a/FrontEnd/src/views/common/tab/TabPages.tsx
+++ b/FrontEnd/src/views/common/tab/TabPages.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { I18nText, UiLogicError } from "@/common";
diff --git a/FrontEnd/src/views/common/tab/Tabs.tsx b/FrontEnd/src/views/common/tab/Tabs.tsx
index 701b4073..3e3ef6fa 100644
--- a/FrontEnd/src/views/common/tab/Tabs.tsx
+++ b/FrontEnd/src/views/common/tab/Tabs.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { Link } from "react-router-dom";
import { useTranslation } from "react-i18next";
import classnames from "classnames";
diff --git a/FrontEnd/src/views/common/user/UserAvatar.tsx b/FrontEnd/src/views/common/user/UserAvatar.tsx
index 9e822528..fcff8c69 100644
--- a/FrontEnd/src/views/common/user/UserAvatar.tsx
+++ b/FrontEnd/src/views/common/user/UserAvatar.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { getHttpUserClient } from "@/http/user";
diff --git a/FrontEnd/src/views/home/TimelineListView.tsx b/FrontEnd/src/views/home/TimelineListView.tsx
index 7bffba76..fbcdc9b0 100644
--- a/FrontEnd/src/views/home/TimelineListView.tsx
+++ b/FrontEnd/src/views/home/TimelineListView.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { Link } from "react-router-dom";
diff --git a/FrontEnd/src/views/home/WebsiteIntroduction.tsx b/FrontEnd/src/views/home/WebsiteIntroduction.tsx
index aea7b4b2..e843c325 100644
--- a/FrontEnd/src/views/home/WebsiteIntroduction.tsx
+++ b/FrontEnd/src/views/home/WebsiteIntroduction.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { Link } from "react-router-dom";
diff --git a/FrontEnd/src/views/home/index.tsx b/FrontEnd/src/views/home/index.tsx
index d734b2b7..3c80fb0c 100644
--- a/FrontEnd/src/views/home/index.tsx
+++ b/FrontEnd/src/views/home/index.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useNavigate } from "react-router-dom";
import { highlightTimelineUsername } from "@/common";
diff --git a/FrontEnd/src/views/login/index.tsx b/FrontEnd/src/views/login/index.tsx
index 3ea505bb..cc1d9865 100644
--- a/FrontEnd/src/views/login/index.tsx
+++ b/FrontEnd/src/views/login/index.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { Link, useNavigate } from "react-router-dom";
import { useTranslation, Trans } from "react-i18next";
@@ -9,7 +9,7 @@ import LoadingButton from "../common/button/LoadingButton";
import "./index.css";
-const LoginPage: React.FC = (_) => {
+const LoginPage: React.FC = () => {
const { t } = useTranslation();
const navigate = useNavigate();
diff --git a/FrontEnd/src/views/register/index.tsx b/FrontEnd/src/views/register/index.tsx
index d8530fcf..c1b95ff7 100644
--- a/FrontEnd/src/views/register/index.tsx
+++ b/FrontEnd/src/views/register/index.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { useNavigate } from "react-router-dom";
diff --git a/FrontEnd/src/views/search/index.tsx b/FrontEnd/src/views/search/index.tsx
index ee448e77..58257465 100644
--- a/FrontEnd/src/views/search/index.tsx
+++ b/FrontEnd/src/views/search/index.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { useNavigate, useLocation } from "react-router-dom";
import { Link } from "react-router-dom";
diff --git a/FrontEnd/src/views/settings/ChangeAvatarDialog.tsx b/FrontEnd/src/views/settings/ChangeAvatarDialog.tsx
index 4c9a3afb..ddca342a 100644
--- a/FrontEnd/src/views/settings/ChangeAvatarDialog.tsx
+++ b/FrontEnd/src/views/settings/ChangeAvatarDialog.tsx
@@ -1,4 +1,5 @@
-import React, { useState, useEffect } from "react";
+import { useState, useEffect } from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { AxiosError } from "axios";
diff --git a/FrontEnd/src/views/settings/ChangeNicknameDialog.tsx b/FrontEnd/src/views/settings/ChangeNicknameDialog.tsx
index f104818f..8cd881ce 100644
--- a/FrontEnd/src/views/settings/ChangeNicknameDialog.tsx
+++ b/FrontEnd/src/views/settings/ChangeNicknameDialog.tsx
@@ -1,6 +1,6 @@
import { getHttpUserClient } from "@/http/user";
import { useUser } from "@/services/user";
-import React from "react";
+import * as React from "react";
import OperationDialog from "../common/dailog/OperationDialog";
diff --git a/FrontEnd/src/views/settings/ChangePasswordDialog.tsx b/FrontEnd/src/views/settings/ChangePasswordDialog.tsx
index fe5868e2..bfc03e5e 100644
--- a/FrontEnd/src/views/settings/ChangePasswordDialog.tsx
+++ b/FrontEnd/src/views/settings/ChangePasswordDialog.tsx
@@ -1,4 +1,5 @@
-import React, { useState } from "react";
+import { useState } from "react";
+import * as React from "react";
import { useNavigate } from "react-router-dom";
import { userService } from "@/services/user";
diff --git a/FrontEnd/src/views/settings/index.tsx b/FrontEnd/src/views/settings/index.tsx
index 31726dc2..ccaf86d2 100644
--- a/FrontEnd/src/views/settings/index.tsx
+++ b/FrontEnd/src/views/settings/index.tsx
@@ -1,4 +1,5 @@
-import React, { useState } from "react";
+import { useState } from "react";
+import * as React from "react";
import { useNavigate } from "react-router-dom";
import { useTranslation } from "react-i18next";
import classNames from "classnames";
@@ -70,7 +71,7 @@ function SettingItemContainer({
"row settings-item mx-0",
first && "first",
onClick && "clickable",
- className
+ className,
)}
onClick={onClick}
>
@@ -133,7 +134,7 @@ const SelectSettingsItem: React.FC<SelectSettingItemProps> = ({
);
};
-const SettingsPage: React.FC = (_) => {
+const SettingsPage: React.FC = () => {
const { i18n } = useTranslation();
const user = useUser();
const navigate = useNavigate();
@@ -148,7 +149,7 @@ const SettingsPage: React.FC = (_) => {
>(null);
const [registerCode, setRegisterCode] = useState<undefined | null | string>(
- undefined
+ undefined,
);
const [bookmarkVisibility, setBookmarkVisibility] =
diff --git a/FrontEnd/src/views/timeline/CollapseButton.tsx b/FrontEnd/src/views/timeline/CollapseButton.tsx
index b8d06916..374ccc2e 100644
--- a/FrontEnd/src/views/timeline/CollapseButton.tsx
+++ b/FrontEnd/src/views/timeline/CollapseButton.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import IconButton from "../common/button/IconButton";
diff --git a/FrontEnd/src/views/timeline/ConnectionStatusBadge.tsx b/FrontEnd/src/views/timeline/ConnectionStatusBadge.tsx
index c8478557..2b820454 100644
--- a/FrontEnd/src/views/timeline/ConnectionStatusBadge.tsx
+++ b/FrontEnd/src/views/timeline/ConnectionStatusBadge.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { HubConnectionState } from "@microsoft/signalr";
import { useTranslation } from "react-i18next";
diff --git a/FrontEnd/src/views/timeline/MarkdownPostEdit.tsx b/FrontEnd/src/views/timeline/MarkdownPostEdit.tsx
index 9ab40e54..a4f7924e 100644
--- a/FrontEnd/src/views/timeline/MarkdownPostEdit.tsx
+++ b/FrontEnd/src/views/timeline/MarkdownPostEdit.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { useTranslation } from "react-i18next";
diff --git a/FrontEnd/src/views/timeline/PostPropertyChangeDialog.tsx b/FrontEnd/src/views/timeline/PostPropertyChangeDialog.tsx
index d000093d..90ec82cc 100644
--- a/FrontEnd/src/views/timeline/PostPropertyChangeDialog.tsx
+++ b/FrontEnd/src/views/timeline/PostPropertyChangeDialog.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { getHttpTimelineClient, HttpTimelinePostInfo } from "@/http/timeline";
diff --git a/FrontEnd/src/views/timeline/Timeline.tsx b/FrontEnd/src/views/timeline/Timeline.tsx
index b10f1c74..3a7fbd00 100644
--- a/FrontEnd/src/views/timeline/Timeline.tsx
+++ b/FrontEnd/src/views/timeline/Timeline.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { useScrollToBottom } from "@/utilities/hooks";
import { HubConnectionState } from "@microsoft/signalr";
diff --git a/FrontEnd/src/views/timeline/TimelineCard.tsx b/FrontEnd/src/views/timeline/TimelineCard.tsx
index bcfcf180..5c9a7d1f 100644
--- a/FrontEnd/src/views/timeline/TimelineCard.tsx
+++ b/FrontEnd/src/views/timeline/TimelineCard.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import classnames from "classnames";
import { HubConnectionState } from "@microsoft/signalr";
diff --git a/FrontEnd/src/views/timeline/TimelineDateLabel.tsx b/FrontEnd/src/views/timeline/TimelineDateLabel.tsx
index 80968ee2..5f4ac706 100644
--- a/FrontEnd/src/views/timeline/TimelineDateLabel.tsx
+++ b/FrontEnd/src/views/timeline/TimelineDateLabel.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import TimelineLine from "./TimelineLine";
export interface TimelineDateItemProps {
diff --git a/FrontEnd/src/views/timeline/TimelineDeleteDialog.tsx b/FrontEnd/src/views/timeline/TimelineDeleteDialog.tsx
index 3a339622..77dfdaaf 100644
--- a/FrontEnd/src/views/timeline/TimelineDeleteDialog.tsx
+++ b/FrontEnd/src/views/timeline/TimelineDeleteDialog.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useNavigate } from "react-router-dom";
import { Trans } from "react-i18next";
diff --git a/FrontEnd/src/views/timeline/TimelineEmptyItem.tsx b/FrontEnd/src/views/timeline/TimelineEmptyItem.tsx
index 8638ad46..5e0728d4 100644
--- a/FrontEnd/src/views/timeline/TimelineEmptyItem.tsx
+++ b/FrontEnd/src/views/timeline/TimelineEmptyItem.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import TimelineLine, { TimelineLineProps } from "./TimelineLine";
diff --git a/FrontEnd/src/views/timeline/TimelineLine.tsx b/FrontEnd/src/views/timeline/TimelineLine.tsx
index 0a828b32..4a87e6e0 100644
--- a/FrontEnd/src/views/timeline/TimelineLine.tsx
+++ b/FrontEnd/src/views/timeline/TimelineLine.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
export interface TimelineLineProps {
diff --git a/FrontEnd/src/views/timeline/TimelineLoading.tsx b/FrontEnd/src/views/timeline/TimelineLoading.tsx
index f55482fe..f876cba9 100644
--- a/FrontEnd/src/views/timeline/TimelineLoading.tsx
+++ b/FrontEnd/src/views/timeline/TimelineLoading.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import TimelineEmptyItem from "./TimelineEmptyItem";
diff --git a/FrontEnd/src/views/timeline/TimelineMember.tsx b/FrontEnd/src/views/timeline/TimelineMember.tsx
index 27355081..a353ae21 100644
--- a/FrontEnd/src/views/timeline/TimelineMember.tsx
+++ b/FrontEnd/src/views/timeline/TimelineMember.tsx
@@ -1,4 +1,5 @@
-import React, { useState } from "react";
+import { useState } from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { convertI18nText, I18nText } from "@/common";
diff --git a/FrontEnd/src/views/timeline/TimelinePostContentView.tsx b/FrontEnd/src/views/timeline/TimelinePostContentView.tsx
index 9e50e5cb..9ed192e5 100644
--- a/FrontEnd/src/views/timeline/TimelinePostContentView.tsx
+++ b/FrontEnd/src/views/timeline/TimelinePostContentView.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { marked } from "marked";
diff --git a/FrontEnd/src/views/timeline/TimelinePostEdit.tsx b/FrontEnd/src/views/timeline/TimelinePostEdit.tsx
index f1c5b22c..38e72264 100644
--- a/FrontEnd/src/views/timeline/TimelinePostEdit.tsx
+++ b/FrontEnd/src/views/timeline/TimelinePostEdit.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useTranslation } from "react-i18next";
import { UiLogicError } from "@/common";
@@ -161,7 +161,7 @@ const TimelinePostEdit: React.FC<TimelinePostEditProps> = (props) => {
case "image":
if (image == null) {
throw new UiLogicError(
- "Content type is image but image blob is null."
+ "Content type is image but image blob is null.",
);
}
requestData = {
@@ -187,10 +187,10 @@ const TimelinePostEdit: React.FC<TimelinePostEditProps> = (props) => {
setKind("text");
onPosted(data);
},
- (_) => {
+ () => {
setProcess(false);
onPostError();
- }
+ },
);
};
diff --git a/FrontEnd/src/views/timeline/TimelinePostEditCard.tsx b/FrontEnd/src/views/timeline/TimelinePostEditCard.tsx
index de0e7e43..d2f7bd72 100644
--- a/FrontEnd/src/views/timeline/TimelinePostEditCard.tsx
+++ b/FrontEnd/src/views/timeline/TimelinePostEditCard.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import Card from "../common/Card";
diff --git a/FrontEnd/src/views/timeline/TimelinePostEditNoLogin.tsx b/FrontEnd/src/views/timeline/TimelinePostEditNoLogin.tsx
index 82834e95..1ef0a287 100644
--- a/FrontEnd/src/views/timeline/TimelinePostEditNoLogin.tsx
+++ b/FrontEnd/src/views/timeline/TimelinePostEditNoLogin.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { Trans } from "react-i18next";
import { Link } from "react-router-dom";
diff --git a/FrontEnd/src/views/timeline/TimelinePostListView.tsx b/FrontEnd/src/views/timeline/TimelinePostListView.tsx
index f6649e9e..f878b004 100644
--- a/FrontEnd/src/views/timeline/TimelinePostListView.tsx
+++ b/FrontEnd/src/views/timeline/TimelinePostListView.tsx
@@ -1,4 +1,5 @@
-import React, { Fragment } from "react";
+import { Fragment } from "react";
+import * as React from "react";
import { HttpTimelinePostInfo } from "@/http/timeline";
diff --git a/FrontEnd/src/views/timeline/TimelinePostView.tsx b/FrontEnd/src/views/timeline/TimelinePostView.tsx
index ca6ee2c5..584f0a68 100644
--- a/FrontEnd/src/views/timeline/TimelinePostView.tsx
+++ b/FrontEnd/src/views/timeline/TimelinePostView.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import classnames from "classnames";
import { getHttpTimelineClient, HttpTimelinePostInfo } from "@/http/timeline";
diff --git a/FrontEnd/src/views/timeline/TimelinePropertyChangeDialog.tsx b/FrontEnd/src/views/timeline/TimelinePropertyChangeDialog.tsx
index 18f557c6..afd9a32d 100644
--- a/FrontEnd/src/views/timeline/TimelinePropertyChangeDialog.tsx
+++ b/FrontEnd/src/views/timeline/TimelinePropertyChangeDialog.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import {
getHttpTimelineClient,
diff --git a/FrontEnd/src/views/timeline/index.tsx b/FrontEnd/src/views/timeline/index.tsx
index cb9fb46f..1dffdcc1 100644
--- a/FrontEnd/src/views/timeline/index.tsx
+++ b/FrontEnd/src/views/timeline/index.tsx
@@ -1,4 +1,4 @@
-import React from "react";
+import * as React from "react";
import { useParams } from "react-router-dom";
import { UiLogicError } from "@/common";