From a6d3c68729a129300eb8d2de4a2175cb08dc32cc Mon Sep 17 00:00:00 2001 From: Julien Calixte Date: Tue, 4 Apr 2023 00:20:14 +0200 Subject: [PATCH] add stepable schema --- src/use-cases/task/interfaces/stepable.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/use-cases/task/interfaces/stepable.ts b/src/use-cases/task/interfaces/stepable.ts index aa4b2ef..1f9df4d 100644 --- a/src/use-cases/task/interfaces/stepable.ts +++ b/src/use-cases/task/interfaces/stepable.ts @@ -1,3 +1,5 @@ +import { isValid, v } from 'suretype' + export interface Stepable { id: string title: string @@ -8,3 +10,12 @@ export interface Stepable { */ totalEstimation: number } + +const stepableSchema = v.object({ + id: v.string().minLength(1).required(), + title: v.string().minLength(1).required(), + estimation: v.number(), + totalEstimation: v.number().required() +}) + +const isValidStepable = (data: unknown) => isValid(stepableSchema, data)