Add HTTPS checkbox
This commit is contained in:
parent
42bbb67639
commit
c4c3316e33
|
@ -1,20 +1,24 @@
|
||||||
import {
|
import {
|
||||||
Button,
|
Button,
|
||||||
|
Checkbox,
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogActions,
|
DialogActions,
|
||||||
DialogContent,
|
DialogContent,
|
||||||
DialogTitle,
|
DialogTitle,
|
||||||
|
FormControlLabel,
|
||||||
IconButton,
|
IconButton,
|
||||||
TextField,
|
TextField,
|
||||||
} from "@mui/material";
|
} from "@mui/material";
|
||||||
import SettingsIcon from "@mui/icons-material/Settings";
|
import SettingsIcon from "@mui/icons-material/Settings";
|
||||||
import React, { useState } from "react";
|
import React, { useState } from "react";
|
||||||
|
import { CheckBox } from "@mui/icons-material";
|
||||||
|
|
||||||
export interface EndpointDialogProps {
|
export interface EndpointDialogProps {
|
||||||
endpoint: [string, React.Dispatch<React.SetStateAction<string>>];
|
endpoint: [string, React.Dispatch<React.SetStateAction<string>>];
|
||||||
|
secure: [boolean, React.Dispatch<React.SetStateAction<boolean>>];
|
||||||
}
|
}
|
||||||
|
|
||||||
const EndpointDialog = ({ endpoint }: EndpointDialogProps) => {
|
const EndpointDialog = ({ endpoint, secure }: EndpointDialogProps) => {
|
||||||
const [open, setOpen] = useState(false);
|
const [open, setOpen] = useState(false);
|
||||||
const [error, setError] = useState(false);
|
const [error, setError] = useState(false);
|
||||||
const [errorText, setErrorText] = useState("");
|
const [errorText, setErrorText] = useState("");
|
||||||
|
@ -35,7 +39,7 @@ const EndpointDialog = ({ endpoint }: EndpointDialogProps) => {
|
||||||
};
|
};
|
||||||
|
|
||||||
const showTheError = () => {
|
const showTheError = () => {
|
||||||
setErrorText("Please enter a valid URL.");
|
setErrorText('Please omit "http://" or "https://" from the endpoint.');
|
||||||
setError(true);
|
setError(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,7 +49,7 @@ const EndpointDialog = ({ endpoint }: EndpointDialogProps) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const isValidEndpoint = () => {
|
const isValidEndpoint = () => {
|
||||||
return endpoint[0].startsWith("http://") || endpoint[0].startsWith("https://");
|
return !(endpoint[0].startsWith("http://") || endpoint[0].startsWith("https://"));
|
||||||
}
|
}
|
||||||
|
|
||||||
const saveEndpoint = () => {
|
const saveEndpoint = () => {
|
||||||
|
@ -80,6 +84,19 @@ const EndpointDialog = ({ endpoint }: EndpointDialogProps) => {
|
||||||
error={error}
|
error={error}
|
||||||
helperText={errorText}
|
helperText={errorText}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
<br />
|
||||||
|
|
||||||
|
<FormControlLabel
|
||||||
|
control={
|
||||||
|
<Checkbox
|
||||||
|
checked={secure[0]}
|
||||||
|
onClick={() => secure[1](!secure[0])}
|
||||||
|
/>
|
||||||
|
}
|
||||||
|
label="HTTPS"
|
||||||
|
/>
|
||||||
|
|
||||||
</DialogContent>
|
</DialogContent>
|
||||||
<DialogActions>
|
<DialogActions>
|
||||||
<Button
|
<Button
|
||||||
|
@ -90,7 +107,9 @@ const EndpointDialog = ({ endpoint }: EndpointDialogProps) => {
|
||||||
closeTheError();
|
closeTheError();
|
||||||
saveEndpoint();
|
saveEndpoint();
|
||||||
|
|
||||||
console.log(`Endpoint set to ${endpoint[0]}.\n\nPOST URI: ${endpoint[0]}/post\nGET URI: ${endpoint[0]}/reviews`);
|
const fullUri = `${secure[0] ? "https" : "http"}://${endpoint[0]}`;
|
||||||
|
|
||||||
|
console.log(`Endpoint set to ${fullUri}.\n\nPOST URI: ${fullUri}/post\nGET URI: ${fullUri}/reviews`);
|
||||||
} else {
|
} else {
|
||||||
showTheError();
|
showTheError();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue