aboutsummaryrefslogtreecommitdiffhomepage
path: root/frontend/app/components/Gaming/ExecStatusIndicatorIcon.tsx
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2024-08-18 01:46:36 +0900
committernsfisis <nsfisis@gmail.com>2024-08-18 01:46:36 +0900
commited796dddde6db433c88b04a1ad154bf88a24faa4 (patch)
treede82ed4ae74c75ba7ddf9e478cb6129177ee4c89 /frontend/app/components/Gaming/ExecStatusIndicatorIcon.tsx
parent7653eb2b28911a0479b3b673c9b63fd490aedb6b (diff)
parent9bd1f89febe6311781aca3e8ee2b6a706a606e3c (diff)
downloadiosdc-japan-2025-albatross-ed796dddde6db433c88b04a1ad154bf88a24faa4.tar.gz
iosdc-japan-2025-albatross-ed796dddde6db433c88b04a1ad154bf88a24faa4.tar.zst
iosdc-japan-2025-albatross-ed796dddde6db433c88b04a1ad154bf88a24faa4.zip
Merge branch 'feat/watch-page'
Diffstat (limited to 'frontend/app/components/Gaming/ExecStatusIndicatorIcon.tsx')
-rw-r--r--frontend/app/components/Gaming/ExecStatusIndicatorIcon.tsx51
1 files changed, 51 insertions, 0 deletions
diff --git a/frontend/app/components/Gaming/ExecStatusIndicatorIcon.tsx b/frontend/app/components/Gaming/ExecStatusIndicatorIcon.tsx
new file mode 100644
index 0000000..8daf48c
--- /dev/null
+++ b/frontend/app/components/Gaming/ExecStatusIndicatorIcon.tsx
@@ -0,0 +1,51 @@
+import {
+ faBan,
+ faCircle,
+ faCircleCheck,
+ faCircleExclamation,
+ faRotate,
+} from "@fortawesome/free-solid-svg-icons";
+import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
+import type { ExecResultStatus } from "../../models/ExecResult";
+
+type Props = {
+ status: ExecResultStatus;
+};
+
+export default function ExecStatusIndicatorIcon({ status }: Props) {
+ switch (status) {
+ case "waiting_submission":
+ return (
+ <FontAwesomeIcon icon={faCircle} fixedWidth className="text-gray-400" />
+ );
+ case "running":
+ return (
+ <FontAwesomeIcon
+ icon={faRotate}
+ spin
+ fixedWidth
+ className="text-gray-700"
+ />
+ );
+ case "success":
+ return (
+ <FontAwesomeIcon
+ icon={faCircleCheck}
+ fixedWidth
+ className="text-green-500"
+ />
+ );
+ case "canceled":
+ return (
+ <FontAwesomeIcon icon={faBan} fixedWidth className="text-gray-400" />
+ );
+ default:
+ return (
+ <FontAwesomeIcon
+ icon={faCircleExclamation}
+ fixedWidth
+ className="text-red-500"
+ />
+ );
+ }
+}