aboutsummaryrefslogtreecommitdiff
path: root/Timeline/ClientApp/src/app/views/admin
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2020-09-03 18:10:02 +0800
committercrupest <crupest@outlook.com>2020-09-03 18:10:02 +0800
commit70be5235ba90a15b7798a7922382835fd680b1fc (patch)
tree9f1ed076ecb0b7ef884b8cd8aa5c7e7497cb6376 /Timeline/ClientApp/src/app/views/admin
parentb06cd597488b2d1c12ef9e35b25bdba6a9d4b11e (diff)
downloadtimeline-70be5235ba90a15b7798a7922382835fd680b1fc.tar.gz
timeline-70be5235ba90a15b7798a7922382835fd680b1fc.tar.bz2
timeline-70be5235ba90a15b7798a7922382835fd680b1fc.zip
Migrate to react-bootstrap.
Diffstat (limited to 'Timeline/ClientApp/src/app/views/admin')
-rw-r--r--Timeline/ClientApp/src/app/views/admin/Admin.tsx25
-rw-r--r--Timeline/ClientApp/src/app/views/admin/UserAdmin.tsx47
2 files changed, 34 insertions, 38 deletions
diff --git a/Timeline/ClientApp/src/app/views/admin/Admin.tsx b/Timeline/ClientApp/src/app/views/admin/Admin.tsx
index 51dc5a3c..e0f59b0f 100644
--- a/Timeline/ClientApp/src/app/views/admin/Admin.tsx
+++ b/Timeline/ClientApp/src/app/views/admin/Admin.tsx
@@ -1,5 +1,4 @@
import React, { Fragment } from "react";
-import { Nav, NavItem, NavLink } from "reactstrap";
import {
Redirect,
Route,
@@ -7,7 +6,7 @@ import {
useRouteMatch,
useHistory,
} from "react-router";
-import classnames from "classnames";
+import { Nav } from "react-bootstrap";
import AppBar from "../common/AppBar";
import { UserWithToken } from "@/services/user";
@@ -37,27 +36,27 @@ const Admin: React.FC<AdminProps> = (props) => {
<Route path={`${match.path}/${name}`}>
<AppBar />
<div style={{ height: 56 }} className="flex-fix-length" />
- <Nav tabs>
- <NavItem>
- <NavLink
- className={classnames({ active: tabName === "users" })}
+ <Nav variant="tabs">
+ <Nav.Item>
+ <Nav.Link
+ active={tabName === "users"}
onClick={() => {
toggle("users");
}}
>
Users
- </NavLink>
- </NavItem>
- <NavItem>
- <NavLink
- className={classnames({ active: tabName === "more" })}
+ </Nav.Link>
+ </Nav.Item>
+ <Nav.Item>
+ <Nav.Link
+ active={tabName === "more"}
onClick={() => {
toggle("more");
}}
>
More
- </NavLink>
- </NavItem>
+ </Nav.Link>
+ </Nav.Item>
</Nav>
{body}
</Route>
diff --git a/Timeline/ClientApp/src/app/views/admin/UserAdmin.tsx b/Timeline/ClientApp/src/app/views/admin/UserAdmin.tsx
index bde6b3af..18b77ca8 100644
--- a/Timeline/ClientApp/src/app/views/admin/UserAdmin.tsx
+++ b/Timeline/ClientApp/src/app/views/admin/UserAdmin.tsx
@@ -1,16 +1,13 @@
import React, { useState, useEffect } from "react";
+import axios from "axios";
import {
- ListGroupItem,
+ ListGroup,
Row,
Col,
- UncontrolledDropdown,
- DropdownToggle,
- DropdownMenu,
- DropdownItem,
+ Dropdown,
Spinner,
Button,
-} from "reactstrap";
-import axios from "axios";
+} from "react-bootstrap";
import OperationDialog from "../common/OperationDialog";
import { User, UserWithToken } from "@/services/user";
@@ -101,7 +98,7 @@ const UserItem: React.FC<UserCardProps> = (props) => {
};
return (
- <ListGroupItem className="container">
+ <ListGroup.Item className="container">
<Row className="align-items-center">
<Col>
<p className="mb-0 text-primary">{user.username}</p>
@@ -112,31 +109,31 @@ const UserItem: React.FC<UserCardProps> = (props) => {
</small>
</Col>
<Col className="col-auto">
- <UncontrolledDropdown>
- <DropdownToggle color="warning" className="text-light" caret>
+ <Dropdown>
+ <Dropdown.Toggle variant="warning" className="text-light">
Manage
- </DropdownToggle>
- <DropdownMenu>
- <DropdownItem onClick={createClickCallback(kChangeUsername)}>
+ </Dropdown.Toggle>
+ <Dropdown.Menu>
+ <Dropdown.Item onClick={createClickCallback(kChangeUsername)}>
Change Username
- </DropdownItem>
- <DropdownItem onClick={createClickCallback(kChangePassword)}>
+ </Dropdown.Item>
+ <Dropdown.Item onClick={createClickCallback(kChangePassword)}>
Change Password
- </DropdownItem>
- <DropdownItem onClick={createClickCallback(kChangePermission)}>
+ </Dropdown.Item>
+ <Dropdown.Item onClick={createClickCallback(kChangePermission)}>
Change Permission
- </DropdownItem>
- <DropdownItem
+ </Dropdown.Item>
+ <Dropdown.Item
className="text-danger"
onClick={createClickCallback(kDelete)}
>
Delete
- </DropdownItem>
- </DropdownMenu>
- </UncontrolledDropdown>
+ </Dropdown.Item>
+ </Dropdown.Menu>
+ </Dropdown>
</Col>
</Row>
- </ListGroupItem>
+ </ListGroup.Item>
);
};
@@ -441,7 +438,7 @@ const UserAdmin: React.FC<UserAdminProps> = (props) => {
return (
<>
<Button
- color="success"
+ variant="success"
onClick={() =>
setDialog({
type: "create",
@@ -456,7 +453,7 @@ const UserAdmin: React.FC<UserAdminProps> = (props) => {
</>
);
} else {
- return <Spinner />;
+ return <Spinner animation="border" />;
}
};