11import conf from "../config/config.js" ;
2- import { Client , Databases , ID , Query , Storage } from "appwrite" ;
3-
4- export class Service {
5- client = new Client ( ) ;
6- databases ;
7- bucket ;
8-
9- constructor ( ) {
10- this . client
11- . setEndpoint ( conf . appwriteUrl )
12- . setProject ( conf . appwriteProjectId ) ;
13- this . databases = new Databases ( this . client ) ;
14- this . bucket = new Storage ( this . client ) ;
15- }
16-
17- async createPost ( { title, slug, content, featuredImage, status, userId, category, metaData, tags} ) {
18- try {
19- console . log ( slug )
20- return await this . databases . createDocument (
21- conf . appwriteDatabaseId ,
22- conf . appwriteCollectionId ,
23- slug ,
24- {
25- title,
26- content,
27- featuredImage,
28- status,
29- userId,
30- category,
31- metaData,
32- tags,
33- }
34- )
35- } catch ( error ) {
36- console . log ( "Appwrite serive :: createPost :: error" , error ) ;
2+ import { Client , Databases , ID , Query , Storage } from "appwrite" ;
3+
4+ export class Service {
5+ client = new Client ( ) ;
6+ databases ;
7+ bucket ;
8+
9+ constructor ( ) {
10+ this . client
11+ . setEndpoint ( conf . appwriteUrl )
12+ . setProject ( conf . appwriteProjectId ) ;
13+ this . databases = new Databases ( this . client ) ;
14+ this . bucket = new Storage ( this . client ) ;
15+ }
16+
17+ async createPost ( {
18+ title,
19+ slug,
20+ content,
21+ featuredImage,
22+ status,
23+ userId,
24+ category,
25+ metaData,
26+ tags,
27+ } ) {
28+ try {
29+ console . log ( slug ) ;
30+ return await this . databases . createDocument (
31+ conf . appwriteDatabaseId ,
32+ conf . appwriteCollectionId ,
33+ slug ,
34+ {
35+ title,
36+ content,
37+ featuredImage,
38+ status,
39+ userId,
40+ category,
41+ metaData,
42+ tags,
3743 }
44+ ) ;
45+ } catch ( error ) {
46+ console . log ( "Appwrite serive :: createPost :: error" , error ) ;
3847 }
39-
40- async updatePost ( slug , { title , content , featuredImage , status , category , metaData , tags } ) {
41- try {
42- return await this . databases . updateDocument (
43- conf . appwriteDatabaseId ,
44- conf . appwriteCollectionId ,
45- slug ,
46- {
47- title ,
48- content ,
49- featuredImage ,
50- status ,
51- category ,
52- metaData ,
53- tags ,
54- }
55- )
56- } catch ( error ) {
57- console . log ( "Appwrite serive :: updatePost :: error" , error ) ;
48+ }
49+
50+ async updatePost (
51+ slug ,
52+ { title , content , featuredImage , status , category , metaData , tags }
53+ ) {
54+ try {
55+ return await this . databases . updateDocument (
56+ conf . appwriteDatabaseId ,
57+ conf . appwriteCollectionId ,
58+ slug ,
59+ {
60+ title ,
61+ content ,
62+ featuredImage ,
63+ status ,
64+ category ,
65+ metaData ,
66+ tags ,
5867 }
68+ ) ;
69+ } catch ( error ) {
70+ console . log ( "Appwrite serive :: updatePost :: error" , error ) ;
5971 }
60-
61- async deletePost ( slug ) {
62- try {
63- await this . databases . deleteDocument (
64- conf . appwriteDatabaseId ,
65- conf . appwriteCollectionId ,
66- slug
67-
68- )
69- return true
70- } catch ( error ) {
71- console . log ( "Appwrite serive :: deletePost :: error" , error ) ;
72- return false
73- }
72+ }
73+
74+ async deletePost ( slug ) {
75+ try {
76+ await this . databases . deleteDocument (
77+ conf . appwriteDatabaseId ,
78+ conf . appwriteCollectionId ,
79+ slug
80+ ) ;
81+ return true ;
82+ } catch ( error ) {
83+ console . log ( "Appwrite serive :: deletePost :: error" , error ) ;
84+ return false ;
7485 }
75-
76- async getPost ( slug ) {
77- try {
78- return await this . databases . getDocument (
79- conf . appwriteDatabaseId ,
80- conf . appwriteCollectionId ,
81- slug
82-
83- )
84- } catch ( error ) {
85- console . log ( "Appwrite serive :: getPost :: error" , error ) ;
86- return false
87- }
86+ }
87+
88+ async getPost ( slug ) {
89+ try {
90+ return await this . databases . getDocument (
91+ conf . appwriteDatabaseId ,
92+ conf . appwriteCollectionId ,
93+ slug
94+ ) ;
95+ } catch ( error ) {
96+ console . log ( "Appwrite serive :: getPost :: error" , error ) ;
97+ return false ;
8898 }
89-
90- async getPosts ( queries = [ Query . equal ( "status" , "active" ) ] ) {
91- try {
92- return await this . databases . listDocuments (
93- conf . appwriteDatabaseId ,
94- conf . appwriteCollectionId ,
95- queries ,
96-
97- )
98- } catch ( error ) {
99- console . log ( "Appwrite service :: getPosts :: error" , error ) ;
100- return false
101- }
99+ }
100+
101+ async getPosts ( queries = [ Query . equal ( "status" , "active" ) ] ) {
102+ try {
103+ return await this . databases . listDocuments (
104+ conf . appwriteDatabaseId ,
105+ conf . appwriteCollectionId ,
106+ queries
107+ ) ;
108+ } catch ( error ) {
109+ console . log ( "Appwrite service :: getPosts :: error" , error ) ;
110+ return false ;
102111 }
103-
104-
105- async getCurrentUsersPosts ( userId ) {
106- try {
107- const queries = [ Query . equal ( "userId" , userId ) ] ;
108- console . log ( 'first appwrite id' , queries ) ;
109- return await this . databases . listDocuments (
110- conf . appwriteDatabaseId ,
111- conf . appwriteCollectionId ,
112- queries
113- ) ;
114-
115- } catch ( error ) {
116- console . log ( "Appwrite service :: getCurrentUsersPosts :: error" , error ) ;
117- return false ;
118- }
112+ }
113+
114+ async getCategory ( category ) {
115+ const queries = [ Query . equal ( "category" , category ) ] ;
116+ try {
117+ const response = await this . databases . listDocuments (
118+ conf . appwriteDatabaseId ,
119+ conf . appwriteCollectionId ,
120+ queries
121+ ) ;
122+ return response . documents ; // Returns only the documents array
123+ } catch ( error ) {
124+ console . error ( "Appwrite service :: getCategory :: error" , error ) ;
125+ return false ;
119126 }
120-
121-
122- async getCurrentUsersDraftPosts ( userId ) {
123- try {
124- const queries = [
125- Query . equal ( "userId" , userId ) ,
126- Query . equal ( "status" , "inactive" ) ,
127- ] ;
128- console . log ( 'first appwrite id' , queries ) ;
129- return await this . databases . listDocuments (
130- conf . appwriteDatabaseId ,
131- conf . appwriteCollectionId ,
132- queries
133- ) ;
134-
135- } catch ( error ) {
136- console . log ( "Appwrite service :: getCurrentUsersDraftPosts :: error" , error ) ;
137- return false ;
138- }
127+ }
128+
129+ async getCurrentUsersPosts ( userId ) {
130+ try {
131+ const queries = [ Query . equal ( "userId" , userId ) ] ;
132+ console . log ( "first appwrite id" , queries ) ;
133+ return await this . databases . listDocuments (
134+ conf . appwriteDatabaseId ,
135+ conf . appwriteCollectionId ,
136+ queries
137+ ) ;
138+ } catch ( error ) {
139+ console . log ( "Appwrite service :: getCurrentUsersPosts :: error" , error ) ;
140+ return false ;
139141 }
140-
141-
142- // file upload service
143-
144- async uploadFile ( file ) {
145- try {
146- return await this . bucket . createFile (
147- conf . appwriteBucketId ,
148- ID . unique ( ) ,
149- file
150- )
151- } catch ( error ) {
152- console . log ( "Appwrite serive :: uploadFile :: error" , error ) ;
153- return false
154- }
142+ }
143+
144+ async getCurrentUsersDraftPosts ( userId ) {
145+ try {
146+ const queries = [
147+ Query . equal ( "userId" , userId ) ,
148+ Query . equal ( "status" , "inactive" ) ,
149+ ] ;
150+ console . log ( "first appwrite id" , queries ) ;
151+ return await this . databases . listDocuments (
152+ conf . appwriteDatabaseId ,
153+ conf . appwriteCollectionId ,
154+ queries
155+ ) ;
156+ } catch ( error ) {
157+ console . log (
158+ "Appwrite service :: getCurrentUsersDraftPosts :: error" ,
159+ error
160+ ) ;
161+ return false ;
155162 }
156-
157- async deleteFile ( fileId ) {
158- try {
159- await this . bucket . deleteFile (
160- conf . appwriteBucketId ,
161- fileId
162- )
163- return true
164- } catch ( error ) {
165- console . log ( "Appwrite serive :: deleteFile :: error" , error ) ;
166- return false
167- }
163+ }
164+
165+ // file upload service
166+
167+ async uploadFile ( file ) {
168+ try {
169+ return await this . bucket . createFile (
170+ conf . appwriteBucketId ,
171+ ID . unique ( ) ,
172+ file
173+ ) ;
174+ } catch ( error ) {
175+ console . log ( "Appwrite serive :: uploadFile :: error" , error ) ;
176+ return false ;
168177 }
169-
170- getFilePreview ( fileId ) {
171- return this . bucket . getFilePreview (
172- conf . appwriteBucketId ,
173- fileId
174- )
178+ }
179+
180+ async deleteFile ( fileId ) {
181+ try {
182+ await this . bucket . deleteFile ( conf . appwriteBucketId , fileId ) ;
183+ return true ;
184+ } catch ( error ) {
185+ console . log ( "Appwrite serive :: deleteFile :: error" , error ) ;
186+ return false ;
175187 }
176- }
188+ }
177189
190+ getFilePreview ( fileId ) {
191+ return this . bucket . getFilePreview ( conf . appwriteBucketId , fileId ) ;
192+ }
193+ }
178194
179- const service = new Service ( )
180- export default service
195+ const service = new Service ( ) ;
196+ export default service ;
0 commit comments