Co-authored-by: Camille Moussu <cmoussu@linagora.com>
This commit is contained in:
@@ -26,6 +26,7 @@ import {
|
|||||||
} from "react";
|
} from "react";
|
||||||
import { useI18n } from "twake-i18n";
|
import { useI18n } from "twake-i18n";
|
||||||
import { ResourceIcon } from "./ResourceIcon";
|
import { ResourceIcon } from "./ResourceIcon";
|
||||||
|
import { isValidEmail } from "../../utils/isValidEmail";
|
||||||
|
|
||||||
export interface User {
|
export interface User {
|
||||||
email: string;
|
email: string;
|
||||||
@@ -99,8 +100,6 @@ export function PeopleSearch({
|
|||||||
setSnackbarMessage,
|
setSnackbarMessage,
|
||||||
} = useUserSearch<User>({ objectTypes, errorMessage });
|
} = useUserSearch<User>({ objectTypes, errorMessage });
|
||||||
|
|
||||||
const isValidEmail = (email: string) =>
|
|
||||||
/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
|
|
||||||
const theme = useTheme();
|
const theme = useTheme();
|
||||||
|
|
||||||
const handleBlurCommit = useCallback(
|
const handleBlurCommit = useCallback(
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
import { api } from "@/utils/apiUtils";
|
import { api } from "@/utils/apiUtils";
|
||||||
|
import { isValidEmail } from "@/utils/isValidEmail";
|
||||||
|
|
||||||
export async function getUserDataFromEmail(email: string) {
|
export async function getUserDataFromEmail(email: string) {
|
||||||
|
if (!isValidEmail(email)) {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
const r = await api(`api/users?email=${encodeURIComponent(email)}`);
|
const r = await api(`api/users?email=${encodeURIComponent(email)}`);
|
||||||
const result: Array<Record<string, string>> = await r.json();
|
const result: Array<Record<string, string>> = await r.json();
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
export function isValidEmail(email: string) {
|
||||||
|
return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user