feat: fixes

This commit is contained in:
2025-12-10 10:29:27 +01:00
parent 1ead7d2dec
commit 02579b65f9
5 changed files with 34 additions and 11 deletions
+11 -6
View File
@@ -6,7 +6,10 @@ import { background } from "../assets";
import GradientButton from "../components/GradientButton";
import { Input } from "../components/Input";
import ItemContainer from "../components/ItemContainer/ItemContainer";
import { handleFirebaseError } from "../actions/signupActions";
import {
checkIfPasswordIsStrongEnough,
handleFirebaseError,
} from "../actions/signupActions";
import firebase, { usersRef } from "../config/firebase";
import Page from "../layouts/Page";
import { isWeb } from "../hooks/useLayoutType";
@@ -28,7 +31,7 @@ const CreatePassword = () => {
const [loading, setLoading] = useState(false);
const [, setTooltip] = useGlobal("_tooltip");
const passwordRegex = useMemo(() => /^.{6,}$/, []);
const handlePasswordChange = (text) => {
setPassword(text);
@@ -37,20 +40,22 @@ const CreatePassword = () => {
return;
}
if (!passwordRegex.test(text)) {
setPasswordError("Ton mot de passe doit contenir au moins 6 caractères.");
if (!checkIfPasswordIsStrongEnough({ password: text })) {
setPasswordError(
"Le mot de passe doit contenir au moins une majuscule, une minuscule, un chiffre et avoir une longueur minimale de 6 caractères",
);
} else {
setPasswordError("");
}
};
const isPasswordValid = passwordRegex.test(password);
const isPasswordValid = checkIfPasswordIsStrongEnough({ password });
const onCreateAccount = async () => {
try {
if (!isPasswordValid) {
setTooltip({
text: "Ton mot de passe doit contenir au moins 6 caractères.",
text: "Le mot de passe doit contenir au moins une majuscule, une minuscule, un chiffre et avoir une longueur minimale de 6 caractères",
type: "error",
});
return;
+5 -2
View File
@@ -24,7 +24,7 @@ import ProgressSlider from "../../components/player/ProgressSlider";
import { isWeb } from "../../hooks/useLayoutType";
import Page from "../../layouts/Page";
import { Routes } from "../../navigation";
import { navigate } from "../../navigation/NavigationService";
import { navigate, reset } from "../../navigation/NavigationService";
import { useUser } from "../../providers/UserDataProvider";
import { Palette, Style } from "../../styles";
import { gutters, size } from "../../styles/Style";
@@ -138,7 +138,10 @@ const SongReady = () => {
});
await pauseAllPlayers();
navigate(Routes.ChooseCoverType);
reset({
index: 1,
routes: [{ name: Routes.BottomTab }, { name: Routes.ChooseCoverType }],
});
} catch (e) {
console.log("Validate error", e?.message);
}
+6 -1
View File
@@ -55,7 +55,12 @@ const ValidateCover = () => {
const handleSelectOption = useCallback(
async (option) => {
if (!option || option?.id === selectedOptionId || isSelecting) {
if (
!option ||
option?.id === selectedOptionId ||
isSelecting ||
selectedOptionId // Prevent re-selection
) {
return;
}
const existingCover = selectedProject?.cover || {};