From ab03153f4e5e75a23a096fa22bbeb1df8accf6dc Mon Sep 17 00:00:00 2001 From: Daniel Date: Mon, 23 Dec 2024 16:04:17 +1100 Subject: [PATCH] run linting --- spec/CloudCode.spec.js | 4 +-- src/PromiseRouter.js | 1 - src/Routers/ClassesRouter.js | 2 +- src/Routers/FunctionsRouter.js | 45 ++++++++++++------------ src/Routers/UsersRouter.js | 2 +- src/Triggers/ConfigTrigger.js | 8 ++--- src/Triggers/FileTrigger.js | 62 ++++++++++++++++----------------- src/Triggers/Logger.js | 21 +++++------ src/Triggers/QueryTrigger.js | 4 +-- src/Triggers/Trigger.js | 2 +- src/Triggers/TriggerResponse.js | 2 +- src/Triggers/TriggerStore.js | 2 +- src/Triggers/Validator.js | 6 ++-- src/triggers.js | 4 +-- 14 files changed, 79 insertions(+), 86 deletions(-) diff --git a/spec/CloudCode.spec.js b/spec/CloudCode.spec.js index 8d7031f0a9..4f1fc330e1 100644 --- a/spec/CloudCode.spec.js +++ b/spec/CloudCode.spec.js @@ -4117,7 +4117,7 @@ describe('custom HTTP codes', () => { } }); - expect(request.status).toBe(201); + expect(request.status).toBe(201); }); it('should set custom headers in save hook', async () => { @@ -4311,4 +4311,4 @@ describe('custom HTTP codes', () => { expect(response.headers.get('X-Custom-Header')).toBe('custom-value'); }); -}) \ No newline at end of file +}) diff --git a/src/PromiseRouter.js b/src/PromiseRouter.js index ed214c7469..5915fa3812 100644 --- a/src/PromiseRouter.js +++ b/src/PromiseRouter.js @@ -8,7 +8,6 @@ import Parse from 'parse/node'; import express from 'express'; import log from './logger'; -import { inspect } from 'util'; const Layer = require('express/lib/router/layer'); function validateParameter(key, value) { diff --git a/src/Routers/ClassesRouter.js b/src/Routers/ClassesRouter.js index 602b82078f..1df476927f 100644 --- a/src/Routers/ClassesRouter.js +++ b/src/Routers/ClassesRouter.js @@ -45,7 +45,7 @@ export class ClassesRouter extends PromiseRouter { req.info.context, triggerResponse ); - return triggerResponse.toResponseObject({response}); + return triggerResponse.toResponseObject({ response }); } // Returns a promise for a {response} object. diff --git a/src/Routers/FunctionsRouter.js b/src/Routers/FunctionsRouter.js index 0c99eb5105..d527bae905 100644 --- a/src/Routers/FunctionsRouter.js +++ b/src/Routers/FunctionsRouter.js @@ -1,7 +1,7 @@ // FunctionsRouter.js var Parse = require('parse/node').Parse, -triggers = require('../triggers'); + triggers = require('../triggers'); import PromiseRouter from '../PromiseRouter'; import { promiseEnforceMasterKeyAccess, promiseEnsureIdempotency } from '../middlewares'; @@ -107,14 +107,14 @@ export class FunctionsRouter extends PromiseRouter { const functionName = req.params.functionName; const applicationId = req.config.applicationId; const theFunction = triggers.getFunction(functionName, applicationId); - + if (!theFunction) { throw new Parse.Error(Parse.Error.SCRIPT_FAILED, `Invalid function: "${functionName}"`); } let params = Object.assign({}, req.body, req.query); params = parseParams(params, req.config); - + const request = { params, master: req.auth?.isMaster, @@ -128,18 +128,18 @@ export class FunctionsRouter extends PromiseRouter { }; const response = new TriggerResponse(); - + const userString = req.auth.user?.id; - + try { - // Run the optional validator - await triggers.maybeRunValidator(request, functionName, req.auth); - - // Execute the function - const result = await theFunction(request, response); - - if (req.config.logLevels.cloudFunctionSuccess !== 'silent') { - const cleanInput = logger.truncateLogMessage(JSON.stringify(params)); + // Run the optional validator + await triggers.maybeRunValidator(request, functionName, req.auth); + + // Execute the function + const result = await theFunction(request, response); + + if (req.config.logLevels.cloudFunctionSuccess !== 'silent') { + const cleanInput = logger.truncateLogMessage(JSON.stringify(params)); const cleanResult = logger.truncateLogMessage(JSON.stringify(result.response?.result)); logger[req.config.logLevels.cloudFunctionSuccess]( `Ran cloud function ${functionName} for user ${userString} with:\n Input: ${cleanInput}\n Result: ${cleanResult}`, @@ -150,15 +150,14 @@ export class FunctionsRouter extends PromiseRouter { } ); } - - return response.toResponseObject({ - response: { - result: Parse._encode(result), - } - }); - } catch (error) { - console.log(error); - error = triggers.resolveError(error); + + return response.toResponseObject({ + response: { + result: Parse._encode(result), + } + }); + } catch (err) { + const error = triggers.resolveError(err); if (req.config.logLevels.cloudFunctionError !== 'silent') { const cleanInput = logger.truncateLogMessage(JSON.stringify(params)); logger[req.config.logLevels.cloudFunctionError]( @@ -174,5 +173,5 @@ export class FunctionsRouter extends PromiseRouter { throw error; } } - + } diff --git a/src/Routers/UsersRouter.js b/src/Routers/UsersRouter.js index a633fd3604..912633e66f 100644 --- a/src/Routers/UsersRouter.js +++ b/src/Routers/UsersRouter.js @@ -317,7 +317,7 @@ export class UsersRouter extends ClassesRouter { } await req.config.authDataManager.runAfterFind(req, user.authData); - return beforeLoginResponse.toResponseObject({response: user}); + return beforeLoginResponse.toResponseObject({ response: user }); } /** diff --git a/src/Triggers/ConfigTrigger.js b/src/Triggers/ConfigTrigger.js index 9ed4395a12..cb9792e7aa 100644 --- a/src/Triggers/ConfigTrigger.js +++ b/src/Triggers/ConfigTrigger.js @@ -1,8 +1,8 @@ -import {getRequestObject} from './Trigger'; +import { getRequestObject } from './Trigger'; import { maybeRunValidator } from "./Validator"; import { logTriggerSuccessBeforeHook, logTriggerErrorBeforeHook } from './Logger'; -import {getClassName} from './Utils'; -import {getTrigger} from './TriggerStore'; +import { getClassName } from './Utils'; +import { getTrigger } from './TriggerStore'; export async function maybeRunGlobalConfigTrigger(triggerType, auth, configObject, originalConfigObject, config, context) { const GlobalConfigClassName = getClassName(Parse.Config); const configTrigger = getTrigger(GlobalConfigClassName, triggerType, config.applicationId); @@ -36,4 +36,4 @@ export async function maybeRunGlobalConfigTrigger(triggerType, auth, configObjec } } return configObject; -} \ No newline at end of file +} diff --git a/src/Triggers/FileTrigger.js b/src/Triggers/FileTrigger.js index 7c74763a95..fbe866bdee 100644 --- a/src/Triggers/FileTrigger.js +++ b/src/Triggers/FileTrigger.js @@ -1,7 +1,7 @@ -import {getClassName} from './Utils'; -import {getTrigger} from './TriggerStore'; -import {logTriggerSuccessBeforeHook, logTriggerErrorBeforeHook} from './Logger'; -import {maybeRunValidator} from './Validator'; +import { getClassName } from './Utils'; +import { getTrigger } from './TriggerStore'; +import { logTriggerSuccessBeforeHook, logTriggerErrorBeforeHook } from './Logger'; +import { maybeRunValidator } from './Validator'; export function getRequestFileObject(triggerType, auth, fileObject, config) { const request = { @@ -34,31 +34,31 @@ export async function maybeRunFileTrigger(triggerType, fileObject, config, auth, if (typeof fileTrigger !== 'function') { return fileObject; } - try { - const request = getRequestFileObject(triggerType, auth, fileObject, config); - await maybeRunValidator(request, `${triggerType}.${FileClassName}`, auth); - if (request.skipWithMasterKey) { - return fileObject; - } - const result = await fileTrigger(request, responseObject); - logTriggerSuccessBeforeHook( - triggerType, - 'Parse.File', - { ...fileObject.file.toJSON(), fileSize: fileObject.fileSize }, - result, - auth, - config.logLevels.triggerBeforeSuccess - ); - return result || fileObject; - } catch (error) { - logTriggerErrorBeforeHook( - triggerType, - 'Parse.File', - { ...fileObject.file.toJSON(), fileSize: fileObject.fileSize }, - auth, - error, - config.logLevels.triggerBeforeError - ); - throw error; + try { + const request = getRequestFileObject(triggerType, auth, fileObject, config); + await maybeRunValidator(request, `${triggerType}.${FileClassName}`, auth); + if (request.skipWithMasterKey) { + return fileObject; } -} \ No newline at end of file + const result = await fileTrigger(request, responseObject); + logTriggerSuccessBeforeHook( + triggerType, + 'Parse.File', + { ...fileObject.file.toJSON(), fileSize: fileObject.fileSize }, + result, + auth, + config.logLevels.triggerBeforeSuccess + ); + return result || fileObject; + } catch (error) { + logTriggerErrorBeforeHook( + triggerType, + 'Parse.File', + { ...fileObject.file.toJSON(), fileSize: fileObject.fileSize }, + auth, + error, + config.logLevels.triggerBeforeError + ); + throw error; + } +} diff --git a/src/Triggers/Logger.js b/src/Triggers/Logger.js index 8758cd302c..e2dd32362e 100644 --- a/src/Triggers/Logger.js +++ b/src/Triggers/Logger.js @@ -1,16 +1,15 @@ +import logger from '../logger'; export function logTriggerAfterHook(triggerType, className, input, auth, logLevel) { if (logLevel === 'silent') { return; } const cleanInput = logger.truncateLogMessage(JSON.stringify(input)); logger[logLevel]( - `${triggerType} triggered for ${className} for user ${userIdForLog( - auth - )}:\n Input: ${cleanInput}`, + `${triggerType} triggered for ${className} for user ${auth?.user?.id}:\n Input: ${cleanInput}`, { className, triggerType, - user: userIdForLog(auth), + user: auth?.user?.id, } ); } @@ -22,13 +21,11 @@ export function logTriggerSuccessBeforeHook(triggerType, className, input, resul const cleanInput = logger.truncateLogMessage(JSON.stringify(input)); const cleanResult = logger.truncateLogMessage(JSON.stringify(result)); logger[logLevel]( - `${triggerType} triggered for ${className} for user ${userIdForLog( - auth - )}:\n Input: ${cleanInput}\n Result: ${cleanResult}`, + `${triggerType} triggered for ${className} for user ${auth?.user?.id}:\n Input: ${cleanInput}\n Result: ${cleanResult}`, { className, triggerType, - user: userIdForLog(auth), + user: auth?.user?.id, } ); } @@ -39,14 +36,12 @@ export function logTriggerErrorBeforeHook(triggerType, className, input, auth, e } const cleanInput = logger.truncateLogMessage(JSON.stringify(input)); logger[logLevel]( - `${triggerType} failed for ${className} for user ${userIdForLog( - auth - )}:\n Input: ${cleanInput}\n Error: ${JSON.stringify(error)}`, + `${triggerType} failed for ${className} for user ${auth?.user?.id}:\n Input: ${cleanInput}\n Error: ${JSON.stringify(error)}`, { className, triggerType, error, - user: userIdForLog(auth), + user: auth?.user?.id, } ); -} \ No newline at end of file +} diff --git a/src/Triggers/QueryTrigger.js b/src/Triggers/QueryTrigger.js index c18d77af5d..95ccda4771 100644 --- a/src/Triggers/QueryTrigger.js +++ b/src/Triggers/QueryTrigger.js @@ -1,5 +1,5 @@ import { getTrigger, Types } from "./TriggerStore"; -import {getRequestObject} from './Trigger'; +import { getRequestObject } from './Trigger'; import { resolveError, toJSONwithObjects } from "./Utils"; import { maybeRunValidator } from "./Validator"; import { logTriggerAfterHook, logTriggerSuccessBeforeHook } from "./Logger"; @@ -250,4 +250,4 @@ function getRequestQueryObject(triggerType, auth, query, count, config, context, request['installationId'] = auth.installationId; } return request; -} \ No newline at end of file +} diff --git a/src/Triggers/Trigger.js b/src/Triggers/Trigger.js index 857ea14df6..809455133c 100644 --- a/src/Triggers/Trigger.js +++ b/src/Triggers/Trigger.js @@ -150,4 +150,4 @@ function processTriggerResponse(request, response) { } return {}; -} \ No newline at end of file +} diff --git a/src/Triggers/TriggerResponse.js b/src/Triggers/TriggerResponse.js index 3b421a1d1b..c86b62e905 100644 --- a/src/Triggers/TriggerResponse.js +++ b/src/Triggers/TriggerResponse.js @@ -15,4 +15,4 @@ export default class TriggerResponse { location: response.location, }; } -} \ No newline at end of file +} diff --git a/src/Triggers/TriggerStore.js b/src/Triggers/TriggerStore.js index cd5e53b691..185e388a5a 100644 --- a/src/Triggers/TriggerStore.js +++ b/src/Triggers/TriggerStore.js @@ -176,4 +176,4 @@ export function getValidator(functionName, applicationId) { export function getJob(jobName, applicationId) { return get(Category.Jobs, jobName, applicationId); -} \ No newline at end of file +} diff --git a/src/Triggers/Validator.js b/src/Triggers/Validator.js index cba50ec183..754fb2fbf0 100644 --- a/src/Triggers/Validator.js +++ b/src/Triggers/Validator.js @@ -1,5 +1,5 @@ -import {getValidator} from './TriggerStore' -import {resolveError} from './Utils' +import { getValidator } from './TriggerStore' +import { resolveError } from './Utils' export function maybeRunValidator(request, functionName, auth) { const theValidator = getValidator(functionName, Parse.applicationId); if (!theValidator) { @@ -195,4 +195,4 @@ async function builtInTriggerValidator(options, request, auth) { } await Promise.all(optionPromises); } -} \ No newline at end of file +} diff --git a/src/triggers.js b/src/triggers.js index d3139f8210..a867af2c52 100644 --- a/src/triggers.js +++ b/src/triggers.js @@ -2,7 +2,7 @@ import { _unregisterAll, getTrigger, Types, triggerExists, addTrigger, addFuncti import { maybeRunTrigger, getRequestObject } from "./Triggers/Trigger"; import { getClassName, inflate, resolveError, toJSONwithObjects } from "./Triggers/Utils"; import { maybeRunQueryTrigger,maybeRunAfterFindTrigger } from "./Triggers/QueryTrigger"; -import {maybeRunValidator} from "./Triggers/Validator"; +import { maybeRunValidator } from "./Triggers/Validator"; import { maybeRunFileTrigger } from "./Triggers/FileTrigger"; import { maybeRunGlobalConfigTrigger } from "./Triggers/ConfigTrigger"; @@ -27,4 +27,4 @@ export { maybeRunAfterFindTrigger, toJSONwithObjects, runLiveQueryEventHandlers -} \ No newline at end of file +}