From 0627acc8cff87d75d0da664d9b5f6a5fca2eb87d Mon Sep 17 00:00:00 2001 From: Avraham Sakal Date: Sun, 4 Feb 2024 21:50:22 -0500 Subject: [PATCH] backend input validation --- server/src/index.ts | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/server/src/index.ts b/server/src/index.ts index 131ba97..75a30ad 100644 --- a/server/src/index.ts +++ b/server/src/index.ts @@ -46,7 +46,7 @@ const appRouter = router({ }), getExpirationsForUnderlying: publicProcedure .input(RpcType(ObjectT({ - underlying:StringT(), + underlying:StringT({maxLength:5}), asOfDate:StringT() }))) .query(async (opts)=>{ @@ -62,7 +62,7 @@ const appRouter = router({ }), getStrikesForUnderlying: publicProcedure .input(RpcType(ObjectT({ - underlying:StringT(), + underlying:StringT({maxLength:5}), asOfDate:StringT(), expirationDate:StringT(), }))) @@ -80,7 +80,7 @@ const appRouter = router({ }), getOpensForUnderlying: publicProcedure .input(RpcType(ObjectT({ - underlying:StringT() + underlying:StringT({maxLength:5}) }))) .query(async (opts)=>{ const {underlying} = opts.input; @@ -96,7 +96,7 @@ const appRouter = router({ }), getOpensForOptionContract: publicProcedure .input(RpcType(ObjectT({ - underlying:StringT(), + underlying:StringT({maxLength:5}), expirationDate:StringT(), strike:NumberT() }))) @@ -117,7 +117,7 @@ const appRouter = router({ }), getHistoricalCalendarPrices: publicProcedure .input(RpcType(ObjectT({ - underlying:StringT(), + underlying:StringT({maxLength:5}), daysToFrontExpiration:NumberT(), daysBetweenFrontAndBackExpiration:NumberT(), strikePercentageFromUnderlyingPriceRangeMin:NumberT(), @@ -140,7 +140,7 @@ const appRouter = router({ }), getHistoricalStockQuoteChartData: publicProcedure .input(RpcType(ObjectT({ - underlying:StringT(), + underlying:StringT({maxLength:5}), lookbackPeriodStart:StringT(), lookbackPeriodEnd:StringT(), }))) @@ -159,7 +159,7 @@ const appRouter = router({ }), getHistoricalCalendarQuoteChartData: publicProcedure .input(RpcType(ObjectT({ - underlying:StringT(), + underlying:StringT({maxLength:5}), daysToFrontExpiration:NumberT(), daysBetweenFrontAndBackExpiration:NumberT(), strikePercentageFromUnderlyingPriceRangeMin:NumberT(), @@ -185,11 +185,11 @@ const appRouter = router({ }), getHistoricalCalendarExitQuoteChartData: publicProcedure .input(RpcType(ObjectT({ - underlying:StringT(), + underlying:StringT({maxLength:5}), daysToFrontExpiration:NumberT(), daysBetweenFrontAndBackExpiration:NumberT(), - lookbackPeriodStart:StringT(), - lookbackPeriodEnd:StringT(), + lookbackPeriodStart:StringT({pattern:'[0-9]{4}\-[0-9]{2}\-[0-9]{2}'}), + lookbackPeriodEnd:StringT({pattern:'[0-9]{4}\-[0-9]{2}\-[0-9]{2}'}), }))) .query(async (opts)=>{ const {underlying, daysToFrontExpiration, daysBetweenFrontAndBackExpiration, lookbackPeriodStart, lookbackPeriodEnd, } = opts.input;