gitscope
https://dev.kronoz.win/r/marzneshin.git
dashboard/src/modules/hosts/dialogs/settings/index.tsx · v0.7.4
Source
1 d636f3f Dawsh 2y ago import { type FC } from "react";
2 d636f3f Dawsh 2y ago import {
3 d636f3f Dawsh 2y ago SettingsDialogProps,
4 d636f3f Dawsh 2y ago SettingsDialog,
5 d636f3f Dawsh 2y ago Table,
6 d636f3f Dawsh 2y ago TableBody,
7 d636f3f Dawsh 2y ago TableRowWithCell,
8 7389ad0 Mardin 2y ago } from "@marzneshin/common/components";
9 d636f3f Dawsh 2y ago import { useTranslation } from "react-i18next";
10 d636f3f Dawsh 2y ago
11 d636f3f Dawsh 2y ago interface HostWithProfileSchemaType {
12 d636f3f Dawsh 2y ago remark: string;
13 d636f3f Dawsh 2y ago address: string;
14 d636f3f Dawsh 2y ago weight?: number | null;
15 d636f3f Dawsh 2y ago port?: string | number | null;
16 d636f3f Dawsh 2y ago host?: string;
17 d636f3f Dawsh 2y ago path?: string;
18 d636f3f Dawsh 2y ago sni?: string;
19 d636f3f Dawsh 2y ago alpn?: string;
20 d636f3f Dawsh 2y ago }
21 d636f3f Dawsh 2y ago
22 d636f3f Dawsh 2y ago interface HostsSettingsDialogProps extends SettingsDialogProps {
23 d636f3f Dawsh 2y ago onOpenChange: (state: boolean) => void;
24 d636f3f Dawsh 2y ago onClose: () => void;
25 d636f3f Dawsh 2y ago open: boolean;
26 d636f3f Dawsh 2y ago entity: HostWithProfileSchemaType;
27 d636f3f Dawsh 2y ago }
28 d636f3f Dawsh 2y ago
29 d636f3f Dawsh 2y ago export const HostSettingsDialog: FC<HostsSettingsDialogProps> = ({
30 d636f3f Dawsh 2y ago onOpenChange,
31 d636f3f Dawsh 2y ago open,
32 d636f3f Dawsh 2y ago entity,
33 d636f3f Dawsh 2y ago onClose,
34 d636f3f Dawsh 2y ago }) => {
35 d636f3f Dawsh 2y ago const { t } = useTranslation();
36 d636f3f Dawsh 2y ago
37 d636f3f Dawsh 2y ago return (
38 d636f3f Dawsh 2y ago <SettingsDialog open={open} onClose={onClose} onOpenChange={onOpenChange}>
39 d636f3f Dawsh 2y ago <Table>
40 d636f3f Dawsh 2y ago <TableBody>
41 d636f3f Dawsh 2y ago <TableRowWithCell label={t("remark")} value={entity.remark} />
42 d636f3f Dawsh 2y ago <TableRowWithCell label={t("address")} value={entity.address} />
43 7389ad0 Mardin 2y ago <TableRowWithCell
44 7389ad0 Mardin 2y ago label={t("port")}
45 7389ad0 Mardin 2y ago value={entity.port?.toString() ?? ""}
46 d636f3f Dawsh 2y ago />
47 7389ad0 Mardin 2y ago <TableRowWithCell
48 7389ad0 Mardin 2y ago label={t("host")}
49 7389ad0 Mardin 2y ago value={entity.host ?? ""}
50 d636f3f Dawsh 2y ago />
51 7389ad0 Mardin 2y ago <TableRowWithCell
52 7389ad0 Mardin 2y ago label={t("path")}
53 7389ad0 Mardin 2y ago value={entity.path ?? ""}
54 d636f3f Dawsh 2y ago />
55 7389ad0 Mardin 2y ago <TableRowWithCell
56 7389ad0 Mardin 2y ago label={t("sni")}
57 7389ad0 Mardin 2y ago value={entity.sni ?? ""}
58 d636f3f Dawsh 2y ago />
59 7389ad0 Mardin 2y ago <TableRowWithCell
60 7389ad0 Mardin 2y ago label={t("alpn")}
61 7389ad0 Mardin 2y ago value={entity.alpn ?? ""}
62 d636f3f Dawsh 2y ago />
63 d636f3f Dawsh 2y ago </TableBody>
64 d636f3f Dawsh 2y ago </Table>
65 d636f3f Dawsh 2y ago </SettingsDialog>
66 d636f3f Dawsh 2y ago );
67 d636f3f Dawsh 2y ago };