feat(firebase): Add Firebase SDK and initialize Analytics

This commit integrates the Firebase SDK into the application to enable Firebase services, starting with Google Analytics.

Key changes include:
- Added the `firebase` package as a dependency.
- Included Firebase project configuration variables in the production environment file.
- Created a new `firebase.ts` utility to centralize Firebase app initialization.
- Integrated the `FirebaseAnalytics` component into the root layout to enable analytics tracking across the entire application.
This commit is contained in:
AmirReza Jamali
2025-10-04 09:28:40 +03:30
parent df8deaee9b
commit b58ea368ec
13 changed files with 1147 additions and 23 deletions
+8 -4
View File
@@ -1,15 +1,16 @@
"use client";
import { PasswordIcon, UserIcon } from "@/assets/icons";
import { FormErrorMessages } from "@/constants/Texts";
import { useLoginQuery } from "@/hooks/queries";
import { ILoginCredentials } from "@/lib/api";
import { COOKIE_KEYS } from "@/lib/shared/cookies";
import { useIsMutating } from "@tanstack/react-query";
import Cookies from "js-cookie";
import { useState } from "react";
import { SubmitHandler, useForm } from "react-hook-form";
import InputGroup from "../FormElements/InputGroup";
import { FormErrorMessages } from "@/constants/Texts";
import { useIsMutating } from "@tanstack/react-query";
export default function SigninWithPassword() {
const isMutating = useIsMutating();
const [passwordFieldInputType, setPasswordFieldInputType] = useState<
@@ -20,7 +21,10 @@ export default function SigninWithPassword() {
const { mutate } = useLoginQuery(reset);
const onSubmit: SubmitHandler<ILoginCredentials> = (data) => {
mutate(data);
mutate({
...data,
device_token: Cookies.get(COOKIE_KEYS.device_token) ?? "",
});
};
return (
<form onSubmit={handleSubmit(onSubmit)}>