From 4e5178c555c7a3663ae01af125a72b07e671730f Mon Sep 17 00:00:00 2001 From: UdayIge Date: Tue, 24 Jun 2025 02:13:36 +0530 Subject: [PATCH 1/3] FIX: all functionalities are fine now --- src/appwrite/config.js | 64 ++++---- src/components/AuthLayout.jsx | 6 +- src/components/Header/Header.jsx | 2 +- src/components/Header/LogoutBtn.jsx | 8 +- src/components/Login.jsx | 2 +- src/components/RTE.jsx | 2 +- src/components/Signup.jsx | 2 +- src/components/index.js | 4 +- src/components/postForm/PostForm.jsx | 216 +++++++++++++-------------- src/main.jsx | 13 +- src/pages/AddPost.jsx | 3 +- src/pages/AllPosts.jsx | 17 +-- src/pages/EditPost.jsx | 44 +++--- src/pages/Post.jsx | 43 +++--- src/pages/Signup.jsx | 12 -- src/pages/SignupPage.jsx | 11 ++ src/pages/index.js | 2 +- src/store/authSlice.js | 2 +- 18 files changed, 216 insertions(+), 237 deletions(-) delete mode 100644 src/pages/Signup.jsx create mode 100644 src/pages/SignupPage.jsx diff --git a/src/appwrite/config.js b/src/appwrite/config.js index 4f7a52a..12c4dc7 100644 --- a/src/appwrite/config.js +++ b/src/appwrite/config.js @@ -1,65 +1,63 @@ import confg from "../conf/conf"; -import { Client , ID , Databases , Query , Storage } from 'appwrite' +import { Client, ID, Databases, Query, Storage } from 'appwrite' -export class Service{ +export class Service { client = new Client(); databases; Storage; - constructor(){ + constructor() { this.client - .setEndpoint(confg.appwriteUrl) - .setProject(confg.appwriteProjectId) + .setEndpoint(confg.appwriteUrl) + .setProject(confg.appwriteProjectId) this.Storage = new Storage(this.client) this.databases = new Databases(this.client) } - async createPost({title , slug , content , featuredImage, status, userId}){ + async createPost({ title, slug, content, featuredImage, status, userId }) { try { return await this.databases.createDocument( confg.appwriteDatabaseId, confg.appwriteCollectionId, - ID, // documentId + ID.unique(), // documentId { - title, - slug, - content, - featuredImage, - status, - userId - } - ); + title, + slug, + content, + featuredImage, + status, + userId + } + ); } catch (error) { console.log(`Error creating post : ${error}`); } } - - async updatePost(ID,{title , slug , content , featuredImage, status,userId}){ + + async updatePost(Id, { title, slug, content, featuredImage, status, userId }) { try { return await this.databases.updateDocument( confg.appwriteDatabaseId, confg.appwriteCollectionId, - ID, + Id, { - title, - slug, - content, - featuredImage, - status, - userId - } + title, + content, + featuredImage, + status, + } ) } catch (error) { console.log(`Error updating post : ${error}`); } } - async deletePost(ID){ + async deletePost(Id) { try { await this.databases.deleteDocument( confg.appwriteDatabaseId, confg.appwriteCollectionId, - ID, + Id, ) return true; } catch (error) { @@ -68,12 +66,12 @@ export class Service{ } } - async getPost(ID){ + async getPost(Id) { try { return await this.databases.getDocument( confg.appwriteDatabaseId, confg.appwriteCollectionId, - ID + Id, ) } catch (error) { console.log(`Error getting post : ${error}`); @@ -81,7 +79,7 @@ export class Service{ } } - async getAllPost(queries = [Query.equal("status","active")]){ + async getAllPost(queries = [Query.equal("status", "active")]) { try { return await this.databases.listDocuments( confg.appwriteDatabaseId, @@ -97,7 +95,7 @@ export class Service{ // file upload service - async uploadFile(file){ + async uploadFile(file) { try { return await this.Storage.createFile( confg.appwriteBucketId, @@ -109,7 +107,7 @@ export class Service{ } } - async removeFile(fileId){ + async removeFile(fileId) { try { await this.Storage.deleteFile( confg.appwriteBucketId, @@ -122,7 +120,7 @@ export class Service{ } } - async getFilePreview(fileId){ + async getFilePreview(fileId) { try { return await this.Storage.getFilePreview( confg.appwriteBucketId, diff --git a/src/components/AuthLayout.jsx b/src/components/AuthLayout.jsx index d2c74cd..5773aae 100644 --- a/src/components/AuthLayout.jsx +++ b/src/components/AuthLayout.jsx @@ -16,11 +16,11 @@ const Protected = ({children,authentication = true}) => { }else if(!authentication && authStatus !== authentication){ // navigate("/"); } - setLoading(false) - },[authStatus,navigate,authentication]) + setLoading(false); + },[authStatus, navigate, authentication]); return ( - loading ?

Loading...

: <>{children} + loading ?

Loading...

:
{children}
) } diff --git a/src/components/Header/Header.jsx b/src/components/Header/Header.jsx index 905a889..8894b98 100644 --- a/src/components/Header/Header.jsx +++ b/src/components/Header/Header.jsx @@ -7,7 +7,7 @@ import { useNavigate } from 'react-router-dom' const Header = () => { - const authStatus = useSelector((state)=> state.auth.Status) + const authStatus = useSelector((state)=> state.auth.status) const navigate = useNavigate() diff --git a/src/components/Header/LogoutBtn.jsx b/src/components/Header/LogoutBtn.jsx index 65dfca0..e960af2 100644 --- a/src/components/Header/LogoutBtn.jsx +++ b/src/components/Header/LogoutBtn.jsx @@ -1,17 +1,17 @@ import React from 'react' import { useDispatch } from 'react-redux' -import authService from "../../appwrite/config" -import logout from "../../appwrite/auth.js" +import authService from "../../appwrite/auth" +import {logout} from "../../store/authSlice" const LogoutBtn = () => { const dispatch = useDispatch(); const logOutHandler = () => { authService.logout().then(()=>{ - dispatch(logout()) // to update the state + dispatch(logout()); // to update the state }) } return ( -