mirror of
https://github.com/emsesp/EMS-ESP32.git
synced 2025-12-06 15:59:52 +03:00
optimizations
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
import { memo, useCallback } from 'react';
|
||||
import type { Blocker } from 'react-router';
|
||||
|
||||
import {
|
||||
@@ -14,23 +15,23 @@ import { useI18nContext } from 'i18n/i18n-react';
|
||||
const BlockNavigation = ({ blocker }: { blocker: Blocker }) => {
|
||||
const { LL } = useI18nContext();
|
||||
|
||||
const handleReset = useCallback(() => {
|
||||
blocker.reset?.();
|
||||
}, [blocker]);
|
||||
|
||||
const handleProceed = useCallback(() => {
|
||||
blocker.proceed?.();
|
||||
}, [blocker]);
|
||||
|
||||
return (
|
||||
<Dialog sx={dialogStyle} open={blocker.state === 'blocked'}>
|
||||
<DialogTitle>{LL.BLOCK_NAVIGATE_1()}</DialogTitle>
|
||||
<DialogContent dividers>{LL.BLOCK_NAVIGATE_2()}</DialogContent>
|
||||
<DialogActions>
|
||||
<Button
|
||||
variant="outlined"
|
||||
onClick={() => blocker.reset?.()}
|
||||
color="secondary"
|
||||
>
|
||||
<Button variant="outlined" onClick={handleReset} color="secondary">
|
||||
{LL.STAY()}
|
||||
</Button>
|
||||
<Button
|
||||
variant="contained"
|
||||
onClick={() => blocker.proceed?.()}
|
||||
color="primary"
|
||||
>
|
||||
<Button variant="contained" onClick={handleProceed} color="primary">
|
||||
{LL.LEAVE()}
|
||||
</Button>
|
||||
</DialogActions>
|
||||
@@ -38,4 +39,4 @@ const BlockNavigation = ({ blocker }: { blocker: Blocker }) => {
|
||||
);
|
||||
};
|
||||
|
||||
export default BlockNavigation;
|
||||
export default memo(BlockNavigation);
|
||||
|
||||
Reference in New Issue
Block a user