chore: fix front

This commit is contained in:
2026-03-13 21:57:36 +01:00
parent a5f995cca9
commit f7be7ea5aa
5 changed files with 26 additions and 64 deletions
-29
View File
@@ -1,29 +0,0 @@
const { getDefaultConfig } = require('expo/metro-config');
const IS_PROD = process.env.NODE_ENV === 'production';
const config = getDefaultConfig(__dirname);
if (IS_PROD) {
config.transformer = {
...config.transformer,
babelTransformerPath: require.resolve('react-native-obfuscating-transformer'),
obfuscatorOptions: {
compact: true,
identifierNamesGenerator: 'hexadecimal',
renameGlobals: false,
rotateStringArray: true,
stringArray: true,
stringArrayEncoding: ['base64'],
stringArrayThreshold: 0.75,
// Disabled: incompatible with Hermes
selfDefending: false,
controlFlowFlattening: false,
deadCodeInjection: false,
transformObjectKeys: false,
debugProtection: false,
},
};
}
module.exports = config;
-2
View File
@@ -40,8 +40,6 @@
"devDependencies": {
"@expo/ngrok": "^4.1.3",
"@types/react": "~19.1.0",
"javascript-obfuscator": "^4.1.1",
"react-native-obfuscating-transformer": "^1.0.0",
"typescript": "~5.9.2"
},
"private": true
@@ -419,10 +419,11 @@ export default function UsersScreen() {
}
}
setCreating(true);
const usernameToCreate = createUsername.trim();
try {
if (createType === "client") {
await createClientByAdmin({
username: createUsername.trim(),
username: usernameToCreate,
password: createPassword.trim(),
nom: createNom.trim(),
prenom: createPrenom.trim(),
@@ -430,7 +431,7 @@ export default function UsersScreen() {
});
} else {
await createUserByAdmin({
username: createUsername.trim(),
username: usernameToCreate,
password: createPassword.trim(),
role: createType,
});
@@ -438,6 +439,29 @@ export default function UsersScreen() {
setCreateModal(false);
await loadData();
} catch (e: any) {
// Erreur réseau : pas de réponse HTTP reçue — le backend a peut-être
// quand même créé l'utilisateur. On recharge et on vérifie.
if (!e.response) {
try {
if (createType === "client") {
const freshClients = await getAllClients();
setClients(freshClients);
if (freshClients.find((c) => c.username === usernameToCreate)) {
setCreateModal(false);
return;
}
} else {
const freshUsers = await getAllUsers();
setUsers(freshUsers);
if (freshUsers.find((u: any) => u.username === usernameToCreate)) {
setCreateModal(false);
return;
}
}
} catch {
/* ignore, on affiche l'erreur originale */
}
}
showError("Erreur", e.response?.data?.error || e.message);
} finally {
setCreating(false);
-29
View File
@@ -1,29 +0,0 @@
const { getDefaultConfig } = require('expo/metro-config');
const IS_PROD = process.env.NODE_ENV === 'production';
const config = getDefaultConfig(__dirname);
if (IS_PROD) {
config.transformer = {
...config.transformer,
babelTransformerPath: require.resolve('react-native-obfuscating-transformer'),
obfuscatorOptions: {
compact: true,
identifierNamesGenerator: 'hexadecimal',
renameGlobals: false,
rotateStringArray: true,
stringArray: true,
stringArrayEncoding: ['base64'],
stringArrayThreshold: 0.75,
// Disabled: incompatible with Hermes
selfDefending: false,
controlFlowFlattening: false,
deadCodeInjection: false,
transformObjectKeys: false,
debugProtection: false,
},
};
}
module.exports = config;
-2
View File
@@ -42,8 +42,6 @@
"devDependencies": {
"@expo/ngrok": "^4.1.3",
"@types/react": "~19.1.0",
"javascript-obfuscator": "^4.1.1",
"react-native-obfuscating-transformer": "^1.0.0",
"typescript": "~5.9.2"
},
"private": true,