{"version":3,"file":"validation.cjs","names":["Effect","ValidationError"],"sources":["../../src/runtime/validation.ts"],"sourcesContent":["import { Effect } from \"effect\";\nimport type { z } from \"zod\";\nimport { ValidationError } from \"./errors\";\n\nexport const validate = <T>(\n  schema: z.ZodSchema<T>,\n  data: unknown,\n  pluginId: string,\n  stage: \"config\" | \"input\" | \"output\" | \"state\",\n): Effect.Effect<T, ValidationError> =>\n  Effect.gen(function* () {\n    const result = schema.safeParse(data);\n    if (result.success) {\n      return result.data;\n    }\n    return yield* Effect.fail(\n      new ValidationError({\n        pluginId,\n        stage,\n        zodError: result.error,\n      }),\n    );\n  });\n"],"mappings":";;;;;AAIA,MAAa,YACX,QACA,MACA,UACA,UAEAA,cAAO,IAAI,aAAa;CACtB,MAAM,SAAS,OAAO,UAAU,KAAK;AACrC,KAAI,OAAO,QACT,QAAO,OAAO;AAEhB,QAAO,OAAOA,cAAO,KACnB,IAAIC,+BAAgB;EAClB;EACA;EACA,UAAU,OAAO;EAClB,CAAC,CACH;EACD"}