Compare commits
3 commits
8f9c02ff75
...
fe96d9f8a1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fe96d9f8a1 | ||
|
|
44d35090ac | ||
|
|
245e6c5cc8 |
7 changed files with 21 additions and 10 deletions
|
|
@ -463,6 +463,7 @@
|
|||
"badToken": "You are not logged in. Please login and try again.",
|
||||
"noConsent": "You did not give your consent for data processing to the Amicale.",
|
||||
"tokenSave": "Could not save session token. Please contact support.",
|
||||
"tokenRetrieve": "Could not retrieve session token. Please contact support.",
|
||||
"badInput": "Invalid input. Please try again.",
|
||||
"forbidden": "You do not have access to this data.",
|
||||
"connectionError": "Network error. Please check your internet connection.",
|
||||
|
|
|
|||
|
|
@ -463,6 +463,7 @@
|
|||
"badToken": "Tu n'est pas connecté. Merci de te connecter puis réessayes.",
|
||||
"noConsent": "Tu n'as pas donné ton consentement pour l'utilisation de tes données personnelles.",
|
||||
"tokenSave": "Impossible de sauvegarder le token de session. Merci de contacter le support.",
|
||||
"tokenRetrieve": "Impossible de récupérer le token de session. Merci de contacter le support.",
|
||||
"badInput": "Entrée invalide. Merci de réessayer.",
|
||||
"forbidden": "Tu n'as pas accès à cette information.",
|
||||
"connectionError": "Erreur de réseau. Merci de vérifier ta connexion Internet.",
|
||||
|
|
|
|||
|
|
@ -51,7 +51,6 @@ function CollapsibleComponent(props: Props) {
|
|||
const { paddedProps, headerColors } = props;
|
||||
const Comp = props.component;
|
||||
const theme = useTheme();
|
||||
console.log(theme.dark);
|
||||
|
||||
const { setCollapsible } = useCollapsible();
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ export type RequestProps = {
|
|||
|
||||
type Props<T> = RequestScreenProps<T>;
|
||||
|
||||
const MIN_REFRESH_TIME = 5 * 1000;
|
||||
const MIN_REFRESH_TIME = 3 * 1000;
|
||||
|
||||
export default function RequestScreen<T>(props: Props<T>) {
|
||||
const navigation = useNavigation<StackNavigationProp<any>>();
|
||||
|
|
@ -94,8 +94,7 @@ export default function RequestScreen<T>(props: Props<T>) {
|
|||
clearInterval(refreshInterval.current);
|
||||
}
|
||||
};
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, [props.cache, props.refreshOnFocus])
|
||||
}, [props.cache, props.refreshOnFocus, props.autoRefreshTime, refreshData])
|
||||
);
|
||||
|
||||
const isErrorCritical = (e: API_REQUEST_CODES | undefined) => {
|
||||
|
|
|
|||
|
|
@ -44,12 +44,7 @@ type Props<ItemT, RawData> = Omit<
|
|||
> &
|
||||
Omit<
|
||||
RequestScreenProps<RawData>,
|
||||
| 'render'
|
||||
| 'showLoading'
|
||||
| 'showError'
|
||||
| 'refresh'
|
||||
| 'onFinish'
|
||||
| 'onMajorError'
|
||||
'render' | 'showLoading' | 'showError' | 'onMajorError'
|
||||
> &
|
||||
Omit<
|
||||
SectionListProps<ItemT>,
|
||||
|
|
@ -171,6 +166,8 @@ function WebSectionList<ItemT, RawData>(props: Props<ItemT, RawData>) {
|
|||
refreshOnFocus={props.refreshOnFocus}
|
||||
cache={props.cache}
|
||||
onCacheUpdate={props.onCacheUpdate}
|
||||
refresh={props.refresh}
|
||||
onFinish={props.onFinish}
|
||||
/>
|
||||
);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -59,6 +59,7 @@ import {
|
|||
ProxiwashPreferenceKeys,
|
||||
} from '../../utils/asyncStorage';
|
||||
import { useProxiwashPreferences } from '../../context/preferencesContext';
|
||||
import { useSubsequentEffect } from '../../utils/customHooks';
|
||||
|
||||
const REFRESH_TIME = 1000 * 10; // Refresh every 10 seconds
|
||||
const LIST_ITEM_HEIGHT = 64;
|
||||
|
|
@ -106,6 +107,7 @@ function ProxiwashScreen() {
|
|||
ProxiwashPreferenceKeys.proxiwashNotifications,
|
||||
preferences
|
||||
);
|
||||
const [refresh, setRefresh] = useState(false);
|
||||
|
||||
const getMachinesWatched = () => {
|
||||
const data = getPreferenceObject(
|
||||
|
|
@ -130,6 +132,11 @@ function ProxiwashScreen() {
|
|||
const machinesWatched: Array<ProxiwashMachineType> = getMachinesWatched();
|
||||
const selectedWash: 'washinsa' | 'tripodeB' = getSelectedWash();
|
||||
|
||||
useSubsequentEffect(() => {
|
||||
// Refresh the list when the selected wash changes
|
||||
setRefresh(true);
|
||||
}, [selectedWash]);
|
||||
|
||||
const modalStateStrings: { [key in MachineStates]: string } = {
|
||||
[MachineStates.AVAILABLE]: i18n.t('screens.proxiwash.modal.ready'),
|
||||
[MachineStates.RUNNING]: i18n.t('screens.proxiwash.modal.running'),
|
||||
|
|
@ -446,6 +453,7 @@ function ProxiwashScreen() {
|
|||
default:
|
||||
data = ProxiwashConstants.washinsa;
|
||||
}
|
||||
|
||||
return (
|
||||
<View style={GENERAL_STYLES.flex}>
|
||||
<View style={styles.container}>
|
||||
|
|
@ -458,6 +466,8 @@ function ProxiwashScreen() {
|
|||
refreshOnFocus={true}
|
||||
extraData={machinesWatched.length}
|
||||
renderListHeaderComponent={renderListHeaderComponent}
|
||||
refresh={refresh}
|
||||
onFinish={() => setRefresh(false)}
|
||||
/>
|
||||
</View>
|
||||
<MascotPopup
|
||||
|
|
|
|||
|
|
@ -53,6 +53,10 @@ export function getErrorMessage(
|
|||
fullMessage.message = i18n.t('errors.tokenSave');
|
||||
fullMessage.icon = 'alert-circle-outline';
|
||||
break;
|
||||
case REQUEST_STATUS.TOKEN_RETRIEVE:
|
||||
fullMessage.message = i18n.t('errors.tokenRetrieve');
|
||||
fullMessage.icon = 'alert-circle-outline';
|
||||
break;
|
||||
default:
|
||||
fullMessage.message = i18n.t('errors.unknown');
|
||||
fullMessage.icon = 'alert-circle-outline';
|
||||
|
|
|
|||
Loading…
Reference in a new issue