UNPKG

surrealdb-zod

Version:

Re-useable zod schema's for use with SurrealDB sdk

2 lines (1 loc) 4.96 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("surrealdb"),r=require("zod");function R(e){return typeof e=="object"?e===null?"null":e.constructor.name:typeof e}function c({expected:e,input:t}){const n=R(t);return`Invalid input: expected ${e}, received ${n}`}function m(e,t){return e instanceof o.BoundIncluded?f(t):e instanceof o.BoundExcluded?l(t):r.undefined()}const y=r.custom(e=>e instanceof o.DateTime,{error:e=>c({expected:"DateTime",input:e.input})}),I=r.custom(e=>e instanceof o.Decimal,{error:e=>c({expected:"Decimal",input:e.input})}),g=r.custom(e=>e instanceof o.Duration,{error:e=>c({expected:"Duration",input:e.input})}),G=r.custom(e=>e instanceof o.FileRef,{error:e=>c({expected:"FileRef",input:e.input})}),x=r.custom(e=>e instanceof o.Future,{error:e=>c({expected:"Future",input:e.input})}),P=r.custom(e=>e instanceof o.Geometry,{error:e=>c({expected:"Geometry",input:e.input})}),b=r.custom(e=>e instanceof o.GeometryPoint,{error:e=>c({expected:"GeometryPoint",input:e.input})}),T=r.custom(e=>e instanceof o.GeometryLine,{error:e=>c({expected:"GeometryLine",input:e.input})}),M=r.custom(e=>e instanceof o.GeometryPolygon,{error:e=>c({expected:"GeometryPolygon",input:e.input})}),B=r.custom(e=>e instanceof o.GeometryMultiPoint,{error:e=>c({expected:"GeometryMultiPoint",input:e.input})}),D=r.custom(e=>e instanceof o.GeometryMultiLine,{error:e=>c({expected:"GeometryMultiLine",input:e.input})}),E=r.custom(e=>e instanceof o.GeometryMultiPolygon,{error:e=>c({expected:"GeometryMultiPolygon",input:e.input})}),O=r.custom(e=>e instanceof o.GeometryCollection,{error:e=>c({expected:"GeometryCollection",input:e.input})});function F(e,t){return r.custom(n=>n instanceof o.Range,{error:n=>c({expected:"Range",input:n.input})}).superRefine((n,u)=>{const s=m(n.begin,e).safeParse(n.begin);if(!s.success)for(const a of s.error.issues)u.addIssue({...a,path:["value",...a.path]});const i=m(n.end,t).safeParse(n.end);if(!i.success)for(const a of i.error.issues)u.addIssue({...a,path:["value",...a.path]})})}function f(e){return r.custom(t=>t instanceof o.BoundIncluded,{error:t=>c({expected:"BoundIncluded",input:t.input})}).superRefine((t,n)=>{const u=e.safeParse(t.value);if(u.success)return r.NEVER;for(const s of u.error.issues)n.addIssue({...s,path:["value",...s.path]})})}function l(e){return r.custom(t=>t instanceof o.BoundExcluded,{error:t=>c({expected:"BoundExcluded",input:t.input})}).superRefine((t,n)=>{const u=e.safeParse(t.value);if(!u.success)for(const s of u.error.issues)n.addIssue({...s,path:["value",...s.path]})})}const L=r.custom(e=>e instanceof o.RecordIdRange,{error:e=>c({expected:"RecordIdRange",input:e.input})});function j(e,t){return r.custom(n=>n instanceof o.RecordIdRange,{error:n=>c({expected:"RecordIdRange",input:n.input})}).superRefine((n,u)=>{const s=p(e).safeParse(n.table);if(!s.success)for(const i of s.error.issues)u.addIssue({...i,path:["table",...i.path]});if(t){const i=m(n.begin,t).safeParse(n.begin);if(!i.success)for(const d of i.error.issues)u.addIssue({...d,path:["begin",...d.path]});const a=m(n.end,t).safeParse(n.end);if(!a.success)for(const d of a.error.issues)u.addIssue({...d,path:["end",...d.path]})}})}const h=r.custom(e=>e instanceof o.RecordId,{error:e=>c({expected:"RecordId",input:e.input})});function S(e,t){return r.custom(n=>n instanceof o.RecordId,{error:n=>c({expected:"RecordId",input:n.input})}).superRefine((n,u)=>{const s=p(e).safeParse(n.table);if(!s.success)for(const i of s.error.issues)u.addIssue({...i,path:["table",...i.path]});if(t){const i=t.safeParse(n.id);if(!i.success)for(const a of i.error.issues)u.addIssue({...a,path:["table",...a.path]})}})}const C=r.custom(e=>e instanceof o.StringRecordId,{error:e=>c({expected:"StringRecordId",input:e.input})}),U=r.object({id:h});function q(e,t){return r.object({id:S(e,t)})}const V=r.custom(e=>e instanceof o.Table,{error:e=>c({expected:"Table",input:e.input})});function p(e){return r.custom(t=>t instanceof o.Table,{error:t=>c({expected:"Table",input:t.input})}).superRefine((t,n)=>{t.name!==e&&n.addIssue({code:"invalid_value",values:[e],input:t.name,path:["name"]})})}const $=r.custom(e=>e instanceof o.Uuid,{error:e=>c({expected:"Uuid",input:e.input})});exports.BoundExcludedSchema=l;exports.BoundIncludedSchema=f;exports.DateTimeSchema=y;exports.DecimalSchema=I;exports.DurationSchema=g;exports.FileRefSchema=G;exports.FutureSchema=x;exports.GeometryCollectionSchema=O;exports.GeometryLineSchema=T;exports.GeometryMultiLineSchema=D;exports.GeometryMultiPointSchema=B;exports.GeometryMultiPolygonSchema=E;exports.GeometryPointSchema=b;exports.GeometryPolygonSchema=M;exports.GeometrySchema=P;exports.RangeSchema=F;exports.RecordIdRangeSchema=L;exports.RecordIdRangeSchemaOf=j;exports.RecordIdSchema=h;exports.RecordIdSchemaOf=S;exports.RecordSchema=U;exports.RecordSchemaOf=q;exports.StringRecordIdSchema=C;exports.TableSchema=V;exports.TableSchemaOf=p;exports.UuidSchema=$;