updates
This commit is contained in:
		
							parent
							
								
									c0a696321f
								
							
						
					
					
						commit
						4530132ffa
					
				
							
								
								
									
										2
									
								
								index.js
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								index.js
									
									
									
									
									
								
							| @ -12,6 +12,7 @@ const loginUser = require("./users/login-user"); | ||||
| const logoutUser = require("./users/logout-user"); | ||||
| const userAuth = require("./users/user-auth"); | ||||
| const reAuthUser = require("./users/reauth-user"); | ||||
| const getUser = require("./users/get-user"); | ||||
| 
 | ||||
| /** ****************************************************************************** */ | ||||
| /** ****************************************************************************** */ | ||||
| @ -32,6 +33,7 @@ const user = { | ||||
|     userAuth: userAuth, | ||||
|     reAuthUser: reAuthUser, | ||||
|     updateUser: updateUser, | ||||
|     getUser: getUser, | ||||
| }; | ||||
| 
 | ||||
| /** | ||||
|  | ||||
| @ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "datasquirel", | ||||
|     "version": "1.1.27", | ||||
|     "version": "1.1.28", | ||||
|     "description": "Cloud-based SQL data management tool", | ||||
|     "main": "index.js", | ||||
|     "scripts": { | ||||
|  | ||||
							
								
								
									
										112
									
								
								users/get-user.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										112
									
								
								users/get-user.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,112 @@ | ||||
| /** | ||||
|  * ============================================================================== | ||||
|  * Imports | ||||
|  * ============================================================================== | ||||
|  */ | ||||
| const https = require("https"); | ||||
| const encrypt = require("../functions/encrypt"); | ||||
| 
 | ||||
| /** ****************************************************************************** */ | ||||
| /** ****************************************************************************** */ | ||||
| /** ****************************************************************************** */ | ||||
| /** ****************************************************************************** */ | ||||
| /** ****************************************************************************** */ | ||||
| /** ****************************************************************************** */ | ||||
| 
 | ||||
| /** | ||||
|  * @typedef {object} FunctionReturn | ||||
|  * @property {boolean} success - Did the function run successfully? | ||||
|  * @property {{ | ||||
|  *   id: number, | ||||
|  *   first_name: string, | ||||
|  *   last_name: string, | ||||
|  *   username: string, | ||||
|  *   email: string, | ||||
|  *   phone: string, | ||||
|  *   social_id: [string], | ||||
|  *   image: string, | ||||
|  *   image_thumbnail: string, | ||||
|  *   verification_status: [number=0], | ||||
|  * }} payload - Payload | ||||
|  */ | ||||
| 
 | ||||
| /** | ||||
|  * ============================================================================== | ||||
|  * Main Function | ||||
|  * ============================================================================== | ||||
|  * @async | ||||
|  * | ||||
|  * @param {object} params - Single Param object containing params | ||||
|  * @param {String} params.key - API Key | ||||
|  * @param {String} params.database - Target Database | ||||
|  * @param {number} params.userId - user id | ||||
|  * @param {string[]} [params.fields] - fields to select | ||||
|  * | ||||
|  * @returns { Promise<FunctionReturn>} | ||||
|  */ | ||||
| module.exports = async function ({ key, userId, database, fields }) { | ||||
|     /** | ||||
|      * Make https request | ||||
|      * | ||||
|      * @description make a request to datasquirel.com | ||||
|      */ | ||||
|     const httpResponse = await new Promise((resolve, reject) => { | ||||
|         const defaultFields = ["id", "first_name", "last_name", "email", "username", "image", "image_thumbnail", "verification_status", "date_created", "date_created_code", "date_created_timestamp", "date_updated", "date_updated_code", "date_updated_timestamp"]; | ||||
| 
 | ||||
|         const updatedFields = fields && fields[0] ? [...defaultFields, ...fields] : defaultFields; | ||||
| 
 | ||||
|         const reqPayload = JSON.stringify({ | ||||
|             userId, | ||||
|             database, | ||||
|             fields: [...new Set(updatedFields)], | ||||
|         }); | ||||
| 
 | ||||
|         const httpsRequest = https.request( | ||||
|             { | ||||
|                 method: "POST", | ||||
|                 headers: { | ||||
|                     "Content-Type": "application/json", | ||||
|                     "Content-Length": Buffer.from(reqPayload).length, | ||||
|                     Authorization: key, | ||||
|                 }, | ||||
|                 port: 443, | ||||
|                 hostname: "datasquirel.com", | ||||
|                 path: `/api/user/get-user`, | ||||
|             }, | ||||
| 
 | ||||
|             /** | ||||
|              * Callback Function | ||||
|              * | ||||
|              * @description https request callback | ||||
|              */ | ||||
|             (response) => { | ||||
|                 var str = ""; | ||||
| 
 | ||||
|                 response.on("data", function (chunk) { | ||||
|                     str += chunk; | ||||
|                 }); | ||||
| 
 | ||||
|                 response.on("end", function () { | ||||
|                     resolve(JSON.parse(str)); | ||||
|                 }); | ||||
| 
 | ||||
|                 response.on("error", (err) => { | ||||
|                     reject(err); | ||||
|                 }); | ||||
|             } | ||||
|         ); | ||||
| 
 | ||||
|         httpsRequest.write(reqPayload); | ||||
|         httpsRequest.end(); | ||||
|     }); | ||||
| 
 | ||||
|     /** ********************************************** */ | ||||
|     /** ********************************************** */ | ||||
|     /** ********************************************** */ | ||||
| 
 | ||||
|     return httpResponse; | ||||
| }; | ||||
| 
 | ||||
| /** ********************************************** */ | ||||
| /** ********************************************** */ | ||||
| /** ********************************************** */ | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Tben
						Tben