chore: fix front
This commit is contained in:
@@ -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;
|
|
||||||
@@ -40,8 +40,6 @@
|
|||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@expo/ngrok": "^4.1.3",
|
"@expo/ngrok": "^4.1.3",
|
||||||
"@types/react": "~19.1.0",
|
"@types/react": "~19.1.0",
|
||||||
"javascript-obfuscator": "^4.1.1",
|
|
||||||
"react-native-obfuscating-transformer": "^1.0.0",
|
|
||||||
"typescript": "~5.9.2"
|
"typescript": "~5.9.2"
|
||||||
},
|
},
|
||||||
"private": true
|
"private": true
|
||||||
|
|||||||
@@ -419,10 +419,11 @@ export default function UsersScreen() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
setCreating(true);
|
setCreating(true);
|
||||||
|
const usernameToCreate = createUsername.trim();
|
||||||
try {
|
try {
|
||||||
if (createType === "client") {
|
if (createType === "client") {
|
||||||
await createClientByAdmin({
|
await createClientByAdmin({
|
||||||
username: createUsername.trim(),
|
username: usernameToCreate,
|
||||||
password: createPassword.trim(),
|
password: createPassword.trim(),
|
||||||
nom: createNom.trim(),
|
nom: createNom.trim(),
|
||||||
prenom: createPrenom.trim(),
|
prenom: createPrenom.trim(),
|
||||||
@@ -430,7 +431,7 @@ export default function UsersScreen() {
|
|||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
await createUserByAdmin({
|
await createUserByAdmin({
|
||||||
username: createUsername.trim(),
|
username: usernameToCreate,
|
||||||
password: createPassword.trim(),
|
password: createPassword.trim(),
|
||||||
role: createType,
|
role: createType,
|
||||||
});
|
});
|
||||||
@@ -438,6 +439,29 @@ export default function UsersScreen() {
|
|||||||
setCreateModal(false);
|
setCreateModal(false);
|
||||||
await loadData();
|
await loadData();
|
||||||
} catch (e: any) {
|
} 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);
|
showError("Erreur", e.response?.data?.error || e.message);
|
||||||
} finally {
|
} finally {
|
||||||
setCreating(false);
|
setCreating(false);
|
||||||
|
|||||||
@@ -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;
|
|
||||||
@@ -42,8 +42,6 @@
|
|||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@expo/ngrok": "^4.1.3",
|
"@expo/ngrok": "^4.1.3",
|
||||||
"@types/react": "~19.1.0",
|
"@types/react": "~19.1.0",
|
||||||
"javascript-obfuscator": "^4.1.1",
|
|
||||||
"react-native-obfuscating-transformer": "^1.0.0",
|
|
||||||
"typescript": "~5.9.2"
|
"typescript": "~5.9.2"
|
||||||
},
|
},
|
||||||
"private": true,
|
"private": true,
|
||||||
|
|||||||
Reference in New Issue
Block a user