[MISC] (deps): Bump react-scripts from 3.4.4 to 4.0.0 in /web (#1403)

Bumps [react-scripts](https://github.com/facebook/create-react-app/tree/HEAD/packages/react-scripts) from 3.4.4 to 4.0.0.
- [Release notes](https://github.com/facebook/create-react-app/releases)
- [Changelog](https://github.com/facebook/create-react-app/blob/master/CHANGELOG-3.x.md)
- [Commits](https://github.com/facebook/create-react-app/commits/react-scripts@4.0.0/packages/react-scripts)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Address CRA breaking changes

This is related to [breaking changes](https://github.com/facebook/create-react-app/blob/master/CHANGELOG.md#breaking-changes) in CRA specific to ESLint.

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
pull/1412/head
dependabot-preview[bot] 2020-11-07 13:06:18 +11:00 committed by GitHub
parent c705fd1939
commit e6f4768961
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
37 changed files with 2869 additions and 2707 deletions

View File

@ -34,7 +34,7 @@
"react-loading": "^2.0.3", "react-loading": "^2.0.3",
"react-otp-input": "^2.3.0", "react-otp-input": "^2.3.0",
"react-router-dom": "^5.2.0", "react-router-dom": "^5.2.0",
"react-scripts": "^3.4.4", "react-scripts": "^4.0.0",
"react-test-renderer": "^16.14.0", "react-test-renderer": "^16.14.0",
"typescript": "^3.9.7", "typescript": "^3.9.7",
"u2f-api": "^1.1.1" "u2f-api": "^1.1.1"

View File

@ -12,7 +12,7 @@ export interface Props {
className?: string; className?: string;
} }
export default function (props: Props) { const AppStoreBadges = function (props: Props) {
const target = props.targetBlank ? "_blank" : undefined; const target = props.targetBlank ? "_blank" : undefined;
const width = props.iconSize; const width = props.iconSize;
@ -27,4 +27,6 @@ export default function (props: Props) {
</Link> </Link>
</div > </div >
) )
} }
export default AppStoreBadges

View File

@ -16,6 +16,7 @@ it('should contain the message', () => {
expect(el.text()).to.contain("this is a success"); expect(el.text()).to.contain("this is a success");
}); });
/* eslint-disable @typescript-eslint/no-unused-expressions */
it('should have correct color', () => { it('should have correct color', () => {
let el = shallow(<ColoredSnackbarContent level="success" message="this is a success" />); let el = shallow(<ColoredSnackbarContent level="success" message="this is a success" />);
expect(el.find(SnackbarContent).props().className!.indexOf("success") > -1).to.be.true; expect(el.find(SnackbarContent).props().className!.indexOf("success") > -1).to.be.true;
@ -28,4 +29,5 @@ it('should have correct color', () => {
el = shallow(<ColoredSnackbarContent level="warning" message="this is an warning" />); el = shallow(<ColoredSnackbarContent level="warning" message="this is an warning" />);
expect(el.find(SnackbarContent).props().className!.indexOf("warning") > -1).to.be.true; expect(el.find(SnackbarContent).props().className!.indexOf("warning") > -1).to.be.true;
}); });
/* eslint-enable @typescript-eslint/no-unused-expressions */

View File

@ -24,7 +24,7 @@ export interface Props extends SnackbarContentProps {
message: string; message: string;
} }
export default function (props: Props) { const ColoredSnackbarContent = function (props: Props) {
const classes = useStyles(); const classes = useStyles();
const Icon = variantIcon[props.level]; const Icon = variantIcon[props.level];
@ -43,6 +43,8 @@ export default function (props: Props) {
) )
} }
export default ColoredSnackbarContent
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
success: { success: {
backgroundColor: green[600], backgroundColor: green[600],

View File

@ -4,8 +4,10 @@ import { faTimesCircle } from "@fortawesome/free-regular-svg-icons";
export interface Props { } export interface Props { }
export default function (props: Props) { const FailureIcon = function (props: Props) {
return ( return (
<FontAwesomeIcon icon={faTimesCircle} size="4x" color="red" className="failure-icon" /> <FontAwesomeIcon icon={faTimesCircle} size="4x" color="red" className="failure-icon" />
) )
} }
export default FailureIcon

View File

@ -9,7 +9,7 @@ export interface Props {
strong?: boolean; strong?: boolean;
} }
export default function (props: Props) { const FingerTouchIcon = function (props: Props) {
const shakingClass = (props.animated) ? style.shaking : undefined; const shakingClass = (props.animated) ? style.shaking : undefined;
const strong = (props.strong) ? style.strong : undefined; const strong = (props.strong) ? style.strong : undefined;
@ -39,4 +39,6 @@ export default function (props: Props) {
/> />
</svg> </svg>
) )
} }
export default FingerTouchIcon

View File

@ -8,7 +8,7 @@ import { makeStyles } from "@material-ui/core";
* *
* @param props the TextField props * @param props the TextField props
*/ */
export default function (props: TextFieldProps) { const FixedTextField = function (props: TextFieldProps) {
const style = useStyles(); const style = useStyles();
return ( return (
<TextField {...props} <TextField {...props}
@ -22,6 +22,8 @@ export default function (props: TextFieldProps) {
); );
} }
export default FixedTextField
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
label: { label: {
backgroundColor: theme.palette.background.default, backgroundColor: theme.palette.background.default,

View File

@ -4,8 +4,10 @@ import { faInfoCircle } from "@fortawesome/free-solid-svg-icons";
export interface Props { } export interface Props { }
export default function (props: Props) { const InformationIcon = function (props: Props) {
return ( return (
<FontAwesomeIcon icon={faInfoCircle} size="4x" color="#5858ff" className="information-icon" /> <FontAwesomeIcon icon={faInfoCircle} size="4x" color="#5858ff" className="information-icon" />
) )
} }
export default InformationIcon

View File

@ -9,7 +9,7 @@ export interface Props {
style?: CSSProperties; style?: CSSProperties;
} }
export default function (props: Props) { const LinearProgressBar = function (props: Props) {
const style = makeStyles(theme => ({ const style = makeStyles(theme => ({
progressRoot: { progressRoot: {
height: props.height ? props.height : theme.spacing(), height: props.height ? props.height : theme.spacing(),
@ -30,3 +30,5 @@ export default function (props: Props) {
className={props.className} /> className={props.className} />
) )
} }
export default LinearProgressBar

View File

@ -8,7 +8,7 @@ export interface Props {
onClose: () => void; onClose: () => void;
} }
export default function (props: Props) { const NotificationBar = function (props: Props) {
const [tmpNotification, setTmpNotification] = useState(null as Notification | null); const [tmpNotification, setTmpNotification] = useState(null as Notification | null);
const { notification } = useNotifications(); const { notification } = useNotifications();
@ -33,4 +33,6 @@ export default function (props: Props) {
message={tmpNotification ? tmpNotification.message : ""} /> message={tmpNotification ? tmpNotification.message : ""} />
</Snackbar> </Snackbar>
) )
} }
export default NotificationBar

View File

@ -11,7 +11,7 @@ export interface Props {
backgroundColor?: string; backgroundColor?: string;
} }
export default function (props: Props) { const PieChartIcon = function (props: Props) {
const maxProgress = props.maxProgress ? props.maxProgress : 100; const maxProgress = props.maxProgress ? props.maxProgress : 100;
const width = props.width ? props.width : 20; const width = props.width ? props.width : 20;
const height = props.height ? props.height : 20; const height = props.height ? props.height : 20;
@ -30,4 +30,6 @@ export default function (props: Props) {
transform="rotate(-90) translate(-26)" /> transform="rotate(-90) translate(-26)" />
</svg> </svg>
) )
} }
export default PieChartIcon

View File

@ -9,11 +9,11 @@ export interface Props {
animated?: boolean; animated?: boolean;
} }
export default function (props: Props) { const PushNotificationIcon = function (props: Props) {
const idleMilliseconds = 2500; const idleMilliseconds = 2500;
const wiggleMilliseconds = 500; const wiggleMilliseconds = 500;
const startMilliseconds = 500; const startMilliseconds = 500;
const wiggleClass = (props.animated) ? useIntermittentClass(style.wiggle, wiggleMilliseconds, idleMilliseconds, startMilliseconds) : ""; const wiggleClass = useIntermittentClass((props.animated) ? style.wiggle : "", wiggleMilliseconds, idleMilliseconds, startMilliseconds);
return ( return (
<svg x="0px" y="0px" viewBox="0 0 60 60" width={props.width} height={props.height} className={wiggleClass}> <svg x="0px" y="0px" viewBox="0 0 60 60" width={props.width} height={props.height} className={wiggleClass}>
@ -41,4 +41,6 @@ export default function (props: Props) {
c-1.237-1.237-1.918-2.885-1.918-4.639S7.775,9.22,9.013,7.983C9.403,7.593,9.403,6.96,9.013,6.569z"/> c-1.237-1.237-1.918-2.885-1.918-4.639S7.775,9.22,9.013,7.983C9.403,7.593,9.403,6.96,9.013,6.569z"/>
</svg> </svg>
) )
} }
export default PushNotificationIcon

View File

@ -2,8 +2,10 @@ import React from "react";
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import { faCheckCircle } from "@fortawesome/free-regular-svg-icons"; import { faCheckCircle } from "@fortawesome/free-regular-svg-icons";
export default function () { const SuccessIcon = function () {
return ( return (
<FontAwesomeIcon icon={faCheckCircle} size="4x" color="green" className="success-icon" /> <FontAwesomeIcon icon={faCheckCircle} size="4x" color="green" className="success-icon" />
) )
} }
export default SuccessIcon

View File

@ -10,7 +10,7 @@ export interface Props {
backgroundColor?: string; backgroundColor?: string;
} }
export default function (props: Props) { const TimerIcon = function (props: Props) {
const radius = 31.6; const radius = 31.6;
const [timeProgress, setTimeProgress] = useState(0); const [timeProgress, setTimeProgress] = useState(0);
@ -33,3 +33,4 @@ export default function (props: Props) {
) )
} }
export default TimerIcon

View File

@ -30,10 +30,12 @@ export function useNotifications() {
} }
const resetNotification = () => useNotificationsProps.setNotification(null); const resetNotification = () => useNotificationsProps.setNotification(null);
/* eslint-disable react-hooks/exhaustive-deps */
const createInfoNotification = useCallback(notificationBuilder("info"), []); const createInfoNotification = useCallback(notificationBuilder("info"), []);
const createSuccessNotification = useCallback(notificationBuilder("success"), []); const createSuccessNotification = useCallback(notificationBuilder("success"), []);
const createWarnNotification = useCallback(notificationBuilder("warning"), []); const createWarnNotification = useCallback(notificationBuilder("warning"), []);
const createErrorNotification = useCallback(notificationBuilder("error"), []); const createErrorNotification = useCallback(notificationBuilder("error"), []);
/* eslint-enable react-hooks/exhaustive-deps */
const isActive = useNotificationsProps.notification !== null; const isActive = useNotificationsProps.notification !== null;

View File

@ -8,7 +8,7 @@ export function useRemoteCall<Ret>(fn: PromisifiedFunction<Ret>, deps: Dependenc
const [inProgress, setInProgress] = useState(false); const [inProgress, setInProgress] = useState(false);
const [error, setError] = useState(undefined as Error | undefined); const [error, setError] = useState(undefined as Error | undefined);
const fnCallback = useCallback(fn, deps); const fnCallback = useCallback(fn, [fn, deps]);
const triggerCallback = useCallback(async () => { const triggerCallback = useCallback(async () => {
try { try {

View File

@ -11,7 +11,7 @@ export interface Props {
showBrand?: boolean; showBrand?: boolean;
} }
export default function (props: Props) { const LoginLayout = function (props: Props) {
const style = useStyles(); const style = useStyles();
return ( return (
<Grid <Grid
@ -50,6 +50,8 @@ export default function (props: Props) {
); );
} }
export default LoginLayout
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
root: { root: {
minHeight: '90vh', minHeight: '90vh',

View File

@ -14,7 +14,7 @@ import { red } from "@material-ui/core/colors";
import { extractIdentityToken } from "../../utils/IdentityToken"; import { extractIdentityToken } from "../../utils/IdentityToken";
import { FirstFactorRoute } from "../../Routes"; import { FirstFactorRoute } from "../../Routes";
export default function () { const RegisterOneTimePassword = function () {
const style = useStyles(); const style = useStyles();
const history = useHistory(); const history = useHistory();
const location = useLocation(); const location = useLocation();
@ -94,6 +94,8 @@ export default function () {
) )
} }
export default RegisterOneTimePassword
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
root: { root: {
paddingTop: theme.spacing(4), paddingTop: theme.spacing(4),

View File

@ -9,7 +9,7 @@ import { completeU2FRegistrationProcessStep1, completeU2FRegistrationProcessStep
import { useNotifications } from "../../hooks/NotificationsContext"; import { useNotifications } from "../../hooks/NotificationsContext";
import u2fApi from "u2f-api"; import u2fApi from "u2f-api";
export default function () { const RegisterSecurityKey = function () {
const style = useStyles(); const style = useStyles();
const history = useHistory(); const history = useHistory();
const location = useLocation(); const location = useLocation();
@ -66,6 +66,8 @@ export default function () {
) )
} }
export default RegisterSecurityKey
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
icon: { icon: {
paddingTop: theme.spacing(4), paddingTop: theme.spacing(4),

View File

@ -2,7 +2,7 @@ import React from "react";
import ReactLoading from "react-loading"; import ReactLoading from "react-loading";
import { Typography, Grid } from "@material-ui/core"; import { Typography, Grid } from "@material-ui/core";
export default function () { const LoadingPage = function () {
return ( return (
<Grid container alignItems="center" justify="center" style={{ minHeight: "100vh" }}> <Grid container alignItems="center" justify="center" style={{ minHeight: "100vh" }}>
<Grid item style={{ textAlign: "center", display: "inline-block" }}> <Grid item style={{ textAlign: "center", display: "inline-block" }}>
@ -11,4 +11,6 @@ export default function () {
</Grid> </Grid>
</Grid> </Grid>
); );
} }
export default LoadingPage

View File

@ -2,7 +2,7 @@ import React from "react";
import SuccessIcon from "../../components/SuccessIcon"; import SuccessIcon from "../../components/SuccessIcon";
import { Typography, makeStyles } from "@material-ui/core"; import { Typography, makeStyles } from "@material-ui/core";
export default function () { const Authenticated = function () {
const classes = useStyles(); const classes = useStyles();
return ( return (
<div id="authenticated-stage"> <div id="authenticated-stage">
@ -14,6 +14,8 @@ export default function () {
) )
} }
export default Authenticated
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
iconContainer: { iconContainer: {
marginBottom: theme.spacing(2), marginBottom: theme.spacing(2),

View File

@ -9,7 +9,7 @@ export interface Props {
name: string; name: string;
} }
export default function (props: Props) { const AuthenticatedView = function (props: Props) {
const style = useStyles(); const style = useStyles();
const history = useHistory(); const history = useHistory();
@ -36,6 +36,8 @@ export default function (props: Props) {
) )
} }
export default AuthenticatedView
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
mainContainer: { mainContainer: {
border: "1px solid #d6d6d6", border: "1px solid #d6d6d6",

View File

@ -19,7 +19,7 @@ export interface Props {
onAuthenticationSuccess: (redirectURL: string | undefined) => void; onAuthenticationSuccess: (redirectURL: string | undefined) => void;
} }
export default function (props: Props) { const FirstFactorForm = function (props: Props) {
const style = useStyles(); const style = useStyles();
const history = useHistory(); const history = useHistory();
const redirectionURL = useRedirectionURL(); const redirectionURL = useRedirectionURL();
@ -187,6 +187,8 @@ export default function (props: Props) {
) )
} }
export default FirstFactorForm
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
root: { root: {
marginTop: theme.spacing(), marginTop: theme.spacing(),

View File

@ -21,7 +21,7 @@ export interface Props {
resetPassword: boolean; resetPassword: boolean;
} }
export default function (props: Props) { const LoginPortal = function (props: Props) {
const history = useHistory(); const history = useHistory();
const location = useLocation(); const location = useLocation();
const redirectionURL = useRedirectionURL(); const redirectionURL = useRedirectionURL();
@ -144,6 +144,8 @@ export default function (props: Props) {
) )
} }
export default LoginPortal
interface ComponentOrLoadingProps { interface ComponentOrLoadingProps {
ready: boolean; ready: boolean;

View File

@ -9,7 +9,7 @@ interface IconWithContextProps {
className?: string; className?: string;
} }
export default function (props: IconWithContextProps) { const IconWithContext = function (props: IconWithContextProps) {
const iconSize = 64; const iconSize = 64;
const style = makeStyles(theme => ({ const style = makeStyles(theme => ({
root: {}, root: {},
@ -39,4 +39,6 @@ export default function (props: IconWithContextProps) {
</div> </div>
</div> </div>
) )
} }
export default IconWithContext

View File

@ -20,7 +20,7 @@ export interface Props {
onRegisterClick?: () => void; onRegisterClick?: () => void;
} }
export default function (props: Props) { const DefaultMethodContainer = function (props: Props) {
const style = useStyles(); const style = useStyles();
let container: ReactNode; let container: ReactNode;
@ -62,6 +62,8 @@ export default function (props: Props) {
) )
} }
export default DefaultMethodContainer
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
container: { container: {
height: "200px", height: "200px",

View File

@ -14,7 +14,7 @@ export interface Props {
onClick: (method: SecondFactorMethod) => void; onClick: (method: SecondFactorMethod) => void;
} }
export default function (props: Props) { const MethodSelectionDialog = function (props: Props) {
const style = useStyles(); const style = useStyles();
const theme = useTheme(); const theme = useTheme();
@ -60,6 +60,8 @@ export default function (props: Props) {
) )
} }
export default MethodSelectionDialog
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
root: { root: {
textAlign: "center", textAlign: "center",

View File

@ -15,7 +15,7 @@ export interface Props {
onChange: (passcode: string) => void; onChange: (passcode: string) => void;
} }
export default function (props: Props) { const OTPDial = function (props: Props) {
const style = useStyles(); const style = useStyles();
const dial = ( const dial = (
<span className={style.otpInput} id="otp-input"> <span className={style.otpInput} id="otp-input">
@ -37,6 +37,8 @@ export default function (props: Props) {
) )
} }
export default OTPDial
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
timeProgress: { timeProgress: {
}, },

View File

@ -23,7 +23,7 @@ export interface Props {
onSignInSuccess: (redirectURL: string | undefined) => void; onSignInSuccess: (redirectURL: string | undefined) => void;
} }
export default function (props: Props) { const OneTimePasswordMethod = function (props: Props) {
const [passcode, setPasscode] = useState(""); const [passcode, setPasscode] = useState("");
const [state, setState] = useState(props.authenticationLevel === AuthenticationLevel.TwoFactor const [state, setState] = useState(props.authenticationLevel === AuthenticationLevel.TwoFactor
? State.Success ? State.Success
@ -31,8 +31,8 @@ export default function (props: Props) {
const redirectionURL = useRedirectionURL(); const redirectionURL = useRedirectionURL();
const { onSignInSuccess, onSignInError } = props; const { onSignInSuccess, onSignInError } = props;
const onSignInErrorCallback = useCallback(onSignInError, []); const onSignInErrorCallback = useCallback(onSignInError, [onSignInError]);
const onSignInSuccessCallback = useCallback(onSignInSuccess, []); const onSignInSuccessCallback = useCallback(onSignInSuccess, [onSignInSuccess]);
const signInFunc = useCallback(async () => { const signInFunc = useCallback(async () => {
if (props.authenticationLevel === AuthenticationLevel.TwoFactor) { if (props.authenticationLevel === AuthenticationLevel.TwoFactor) {
@ -88,4 +88,6 @@ export default function (props: Props) {
period={props.totp_period} /> period={props.totp_period} />
</MethodContainer> </MethodContainer>
) )
} }
export default OneTimePasswordMethod

View File

@ -23,15 +23,15 @@ export interface Props {
onSignInSuccess: (redirectURL: string | undefined) => void; onSignInSuccess: (redirectURL: string | undefined) => void;
} }
export default function (props: Props) { const PushNotificationMethod = function (props: Props) {
const style = useStyles(); const style = useStyles();
const [state, setState] = useState(State.SignInInProgress); const [state, setState] = useState(State.SignInInProgress);
const redirectionURL = useRedirectionURL(); const redirectionURL = useRedirectionURL();
const mounted = useIsMountedRef(); const mounted = useIsMountedRef();
const { onSignInSuccess, onSignInError } = props; const { onSignInSuccess, onSignInError } = props;
const onSignInErrorCallback = useCallback(onSignInError, []); const onSignInErrorCallback = useCallback(onSignInError, [onSignInError]);
const onSignInSuccessCallback = useCallback(onSignInSuccess, []); const onSignInSuccessCallback = useCallback(onSignInSuccess, [onSignInSuccess]);
const signInFunc = useCallback(async () => { const signInFunc = useCallback(async () => {
if (props.authenticationLevel === AuthenticationLevel.TwoFactor) { if (props.authenticationLevel === AuthenticationLevel.TwoFactor) {
@ -103,6 +103,8 @@ export default function (props: Props) {
) )
} }
export default PushNotificationMethod
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
icon: { icon: {
width: "64px", width: "64px",

View File

@ -34,7 +34,7 @@ export interface Props {
onAuthenticationSuccess: (redirectURL: string | undefined) => void; onAuthenticationSuccess: (redirectURL: string | undefined) => void;
} }
export default function (props: Props) { const SecondFactorForm = function (props: Props) {
const style = useStyles(); const style = useStyles();
const history = useHistory(); const history = useHistory();
const [methodSelectionOpen, setMethodSelectionOpen] = useState(false); const [methodSelectionOpen, setMethodSelectionOpen] = useState(false);
@ -146,6 +146,8 @@ export default function (props: Props) {
) )
} }
export default SecondFactorForm
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
methodContainer: { methodContainer: {
border: "1px solid #d6d6d6", border: "1px solid #d6d6d6",

View File

@ -29,7 +29,7 @@ export interface Props {
onSignInSuccess: (redirectURL: string | undefined) => void; onSignInSuccess: (redirectURL: string | undefined) => void;
} }
export default function (props: Props) { const SecurityKeyMethod = function (props: Props) {
const signInTimeout = 30; const signInTimeout = 30;
const [state, setState] = useState(State.WaitTouch); const [state, setState] = useState(State.WaitTouch);
const style = useStyles(); const style = useStyles();
@ -38,8 +38,8 @@ export default function (props: Props) {
const [timerPercent, triggerTimer,] = useTimer(signInTimeout * 1000 - 500); const [timerPercent, triggerTimer,] = useTimer(signInTimeout * 1000 - 500);
const { onSignInSuccess, onSignInError } = props; const { onSignInSuccess, onSignInError } = props;
const onSignInErrorCallback = useCallback(onSignInError, []); const onSignInErrorCallback = useCallback(onSignInError, [onSignInError]);
const onSignInSuccessCallback = useCallback(onSignInSuccess, []); const onSignInSuccessCallback = useCallback(onSignInSuccess, [onSignInSuccess]);
const doInitiateSignIn = useCallback(async () => { const doInitiateSignIn = useCallback(async () => {
// If user is already authenticated, we don't initiate sign in process. // If user is already authenticated, we don't initiate sign in process.
@ -102,6 +102,8 @@ export default function (props: Props) {
) )
} }
export default SecurityKeyMethod
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
icon: { icon: {
display: "inline-block", display: "inline-block",

View File

@ -10,7 +10,7 @@ import { useIsMountedRef } from "../../../hooks/Mounted";
export interface Props { } export interface Props { }
export default function (props: Props) { const SignOut = function (props: Props) {
const mounted = useIsMountedRef(); const mounted = useIsMountedRef();
const style = useStyles(); const style = useStyles();
const { createErrorNotification } = useNotifications(); const { createErrorNotification } = useNotifications();
@ -52,6 +52,8 @@ export default function (props: Props) {
) )
} }
export default SignOut
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
typo: { typo: {
padding: theme.spacing(), padding: theme.spacing(),

View File

@ -7,7 +7,7 @@ import { initiateResetPasswordProcess } from "../../services/ResetPassword";
import { FirstFactorRoute } from "../../Routes"; import { FirstFactorRoute } from "../../Routes";
import FixedTextField from "../../components/FixedTextField"; import FixedTextField from "../../components/FixedTextField";
export default function () { const ResetPasswordStep1 = function () {
const style = useStyles(); const style = useStyles();
const [username, setUsername] = useState(""); const [username, setUsername] = useState("");
const [error, setError] = useState(false); const [error, setError] = useState(false);
@ -76,6 +76,8 @@ export default function () {
) )
} }
export default ResetPasswordStep1
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
root: { root: {
marginTop: theme.spacing(2), marginTop: theme.spacing(2),

View File

@ -9,7 +9,7 @@ import { FirstFactorRoute } from "../../Routes";
import { extractIdentityToken } from "../../utils/IdentityToken"; import { extractIdentityToken } from "../../utils/IdentityToken";
import FixedTextField from "../../components/FixedTextField"; import FixedTextField from "../../components/FixedTextField";
export default function () { const ResetPasswordStep2 = function () {
const style = useStyles(); const style = useStyles();
const location = useLocation(); const location = useLocation();
const [formDisabled, setFormDisabled] = useState(true); const [formDisabled, setFormDisabled] = useState(true);
@ -137,6 +137,8 @@ export default function () {
) )
} }
export default ResetPasswordStep2
const useStyles = makeStyles(theme => ({ const useStyles = makeStyles(theme => ({
root: { root: {
marginTop: theme.spacing(2), marginTop: theme.spacing(2),

View File

@ -17,10 +17,11 @@
"resolveJsonModule": true, "resolveJsonModule": true,
"isolatedModules": true, "isolatedModules": true,
"noEmit": true, "noEmit": true,
"jsx": "react" "jsx": "react",
"noFallthroughCasesInSwitch": true
}, },
"include": [ "include": [
"src", "src",
"types" "types"
] ]
} }

File diff suppressed because it is too large Load Diff