@decaf-ts/as-zod 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -27,7 +27,7 @@ Small addon to enable two-way convertion between Models and Zod
27
27
 
28
28
  Documentation available [here](https://decaf-ts.github.io/as-zod/)
29
29
 
30
- Minimal size: 1.3 KB kb gzipped
30
+ Minimal size: 1.6 KB kb gzipped
31
31
 
32
32
 
33
33
  ### Description
package/dist/as-zod.cjs CHANGED
@@ -1,2 +1,2 @@
1
- var e,t;e=this,t=(e,t,o,a,r)=>{"use strict";const i=[o.ValidationKeys.REQUIRED,o.ValidationKeys.TYPE,o.ValidationKeys.DATE,o.ModelKeys.TYPE];function n(e,t=a.ZodAny){function r(e){switch(e.toLowerCase()){case o.Primitives.STRING:return a.z.string();case o.Primitives.NUMBER:return a.z.number();case o.Primitives.BIGINT:return a.z.bigint();case o.Primitives.BOOLEAN:return a.z.boolean();case o.ValidationKeys.DATE:return a.z.date();case Array.name.toLowerCase():return a.z.array(t);case Set.name.toLowerCase():{const e=a.z.set(t);return void 0===e.valueSchema&&Object.defineProperty(e,"valueSchema",{get:()=>e._def?.valueType,enumerable:!1,configurable:!0}),e}default:{const t=o.Model.get(e);if(!t)throw Error("Unzodifiable type: "+e);try{return a.z.from(t)}catch(t){throw Error(`Failed to zodify model ${e}: ${t}`)}}}}let i;e="string"==typeof e?[e]:e;for(const t of e)i=i?i.or(r(t)):r(t);return i}function s(e,t,a){switch(t){case o.ValidationKeys.MIN:return e.min(a[o.ValidationKeys.MIN]);case o.ValidationKeys.MIN_LENGTH:return e.min(a[o.ValidationKeys.MIN_LENGTH]);case o.ValidationKeys.MAX:return e.max(a[o.ValidationKeys.MAX]);case o.ValidationKeys.MAX_LENGTH:return e.max(a[o.ValidationKeys.MAX_LENGTH]);case o.ValidationKeys.STEP:return e.multipleOf(a[o.ValidationKeys.STEP]);case o.ValidationKeys.PATTERN:case o.ValidationKeys.URL:case o.ValidationKeys.EMAIL:case o.ValidationKeys.PASSWORD:return e.regex(RegExp(a[o.ValidationKeys.PATTERN],"g"));case o.ValidationKeys.DATE:throw new TypeError("DATE validator cannot be applied as a refinement");default:return e}}function c(e){const c={},d=o.Model.getAttributes(e);if(Array.isArray(d)&&!d.length)return a.z.object({});for(const l of d){if("function"==typeof e[l]||l.startsWith("_")||"constructor"===l)continue;const d=r.Reflection.getPropertyDecorators(o.ValidationKeys.REFLECT,e,l,!1,!0).decorators.reduce((e,t)=>{const{key:a,props:r}=t;return a!==o.ModelKeys.TYPE||e[o.ValidationKeys.TYPE]?e[a]=r:e[o.ValidationKeys.TYPE]={customTypes:[r.name],message:o.DEFAULT_ERROR_MESSAGES.TYPE,description:"defines the accepted types for the attribute"},e},{});if(!Object.keys(d).length)continue;let y=a.ZodAny;const f=d[o.ValidationKeys.TYPE];if(!f)throw Error("Missing type information");y=n((Array.isArray(f.customTypes)?f.customTypes:[f.customTypes]).map(e=>"function"==typeof e?e():e),d[o.ValidationKeys.LIST]?n((Array.isArray(d[o.ValidationKeys.LIST].clazz)?d[o.ValidationKeys.LIST].clazz:[d[o.ValidationKeys.LIST].clazz]).map(e=>"function"==typeof e?e().name:e)):a.ZodAny);for(const[e,t]of Object.entries(d).filter(([e])=>{return t=e,!i.includes(t);var t}))y=s(y,e,t);d[o.ValidationKeys.REQUIRED]||(y=y.optional());const u=t.Metadata.description(e.constructor,l);u&&(y=y.describe(u)),c[l]=y}const l=t.Metadata.description(e.constructor),y=a.z.object(c);return l?y.describe(l):y}const d=Object.getOwnPropertyDescriptor(a.z,"from");d&&!d.configurable||Object.defineProperty(a.z,"from",{value:e=>{const a=new e;return t.Metadata.constr(a.constructor)||o.Model.fromModel(a,{}),c(a)}});const l="##VERSION##";t.Metadata.registerLibrary("@decaf-ts/as-zod",l),e.VERSION=l,e.modelToZod=c,e.zodify=n,e.zodifyValidation=s},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/decoration"),require("@decaf-ts/decorator-validation"),require("zod"),require("@decaf-ts/reflection")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/decoration","@decaf-ts/decorator-validation","zod","@decaf-ts/reflection"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["as-zod"]={},e.decafTsDecoration,e.decafTsDecoratorValidation,e.zod,e.decafTsReflection);
1
+ var t,e;t=this,e=function(t,e,a,r){"use strict";const i=[a.ValidationKeys.REQUIRED,a.ValidationKeys.TYPE,a.ValidationKeys.DATE,a.ModelKeys.TYPE];class o extends a.AttributeBuilder{constructor(t,e,a,r,i){super(t,e,a),this.decoratorData=r,this.attributeDescription=i}safeInvoke(t){if("function"!=typeof t)return t;if(t.prototype)return t;try{return t()}catch{return t}}typeName(t){if("string"==typeof t)return t;if("function"==typeof t)return t.name||t.toString();if(t&&"object"==typeof t&&"name"in t){const e=t.name;if(e)return e}return t+""}normalizeTypes(t){return(Array.isArray(t)?t:[t]).map(t=>{const e=this.safeInvoke(t);return this.typeName(e)})}resolveListTypes(t){return(Array.isArray(t.clazz)?t.clazz:[t.clazz]).map(t=>{const e=this.safeInvoke(t);return this.typeName(e)})}buildSchema(){if(!Object.keys(this.decoratorData).length)return;const t=this.decoratorData[a.ValidationKeys.TYPE];if(!t)throw Error("Missing type information");let e=s(this.normalizeTypes(t.customTypes),this.decoratorData[a.ValidationKeys.LIST]?s(this.resolveListTypes(this.decoratorData[a.ValidationKeys.LIST])):r.ZodAny);for(const[t,a]of Object.entries(this.decoratorData).filter(([t])=>{return e=t,!i.includes(e);var e}))e=c(e,t,a);return this.decoratorData[a.ValidationKeys.REQUIRED]||(e=e.optional()),this.attributeDescription&&(e=e.describe(this.attributeDescription)),e}}class n extends a.ModelBuilder{constructor(t,e){super(),this.target=t,this.metadata=e}decoratorDataFor(t){const e={...(this.metadata.validation??{})[t]??{}};if(!e[a.ValidationKeys.TYPE]){const r=this.metadata.properties?.[t],i="function"==typeof r||"string"==typeof r?.name?r.name:void 0;i&&(e[a.ValidationKeys.TYPE]={customTypes:[i],message:a.DEFAULT_ERROR_MESSAGES.TYPE,description:"defines the accepted types for the attribute"})}return e}toZodObject(){const t={},i=a.Model.getAttributes(this.target);if(Array.isArray(i)&&i.length)for(const a of i){if("string"!=typeof a||"constructor"===a||a.startsWith("_"))continue;if("function"==typeof this.target[a])continue;const r=this.decoratorDataFor(a);if(!Object.keys(r).length)continue;const i=new o(this,a,this.metadata.properties?.[a],r,e.Metadata.description(this.target,a)??this.metadata.description?.[a]).buildSchema();i&&(t[a]=i)}const n=e.Metadata.description(this.target)??this.metadata.description?.class,s=r.z.object(t);return n?s.describe(n):s}}function s(t,e=r.ZodAny){function i(t){switch(t.toLowerCase()){case a.Primitives.STRING:return r.z.string();case a.Primitives.NUMBER:return r.z.number();case a.Primitives.BIGINT:return r.z.bigint();case a.Primitives.BOOLEAN:return r.z.boolean();case a.ValidationKeys.DATE:return r.z.date();case Array.name.toLowerCase():return r.z.array(e);case Set.name.toLowerCase():{const t=r.z.set(e);return void 0===t.valueSchema&&Object.defineProperty(t,"valueSchema",{get:()=>t._def?.valueType,enumerable:!1,configurable:!0}),t}default:{const e=a.Model.get(t);if(!e)throw Error("Unzodifiable type: "+t);try{return r.z.from(e)}catch(e){throw Error(`Failed to zodify model ${t}: ${e}`)}}}}let o;t="string"==typeof t?[t]:t;for(const e of t)o=o?o.or(i(e)):i(e);return o}function c(t,e,r){switch(e){case a.ValidationKeys.MIN:return t.min(r[a.ValidationKeys.MIN]);case a.ValidationKeys.MIN_LENGTH:return t.min(r[a.ValidationKeys.MIN_LENGTH]);case a.ValidationKeys.MAX:return t.max(r[a.ValidationKeys.MAX]);case a.ValidationKeys.MAX_LENGTH:return t.max(r[a.ValidationKeys.MAX_LENGTH]);case a.ValidationKeys.STEP:return t.multipleOf(r[a.ValidationKeys.STEP]);case a.ValidationKeys.PATTERN:case a.ValidationKeys.URL:case a.ValidationKeys.EMAIL:case a.ValidationKeys.PASSWORD:return t.regex(RegExp(r[a.ValidationKeys.PATTERN],"g"));case a.ValidationKeys.DATE:throw new TypeError("DATE validator cannot be applied as a refinement");default:return t}}function d(t){const r=t instanceof a.Model?t.constructor:t,i=e.Metadata.get(r);return new n(r,i??{validation:{},properties:{},description:{}}).toZodObject()}const u=Object.getOwnPropertyDescriptor(r.z,"from");u&&!u.configurable||Object.defineProperty(r.z,"from",{value:t=>d(t)});const l="##VERSION##";e.Metadata.registerLibrary("@decaf-ts/as-zod",l),t.VERSION=l,t.modelToZod=d,t.zodify=s,t.zodifyValidation=c},"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@decaf-ts/decoration"),require("@decaf-ts/decorator-validation"),require("zod")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/decoration","@decaf-ts/decorator-validation","zod"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self)["as-zod"]={},t.decafTsDecoration,t.decafTsDecoratorValidation,t.zod);
2
2
  //# sourceMappingURL=as-zod.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"as-zod.cjs","sources":["../src/overrides.ts","../src/index.ts"],"sourcesContent":[null,null],"names":["ReservedKeys","ValidationKeys","REQUIRED","TYPE","DATE","ModelKeys","zodify","type","zz","ZodAny","innerZodify","toLowerCase","Primitives","STRING","z","string","NUMBER","number","BIGINT","bigint","BOOLEAN","boolean","date","Array","name","array","Set","setSchema","set","valueSchema","Object","defineProperty","get","_def","valueType","enumerable","configurable","m","Model","Error","from","e","zod","t","or","zodifyValidation","values","MIN","min","MIN_LENGTH","MAX","max","MAX_LENGTH","STEP","multipleOf","PATTERN","URL","EMAIL","PASSWORD","regex","RegExp","TypeError","modelToZod","model","result","properties","getAttributes","isArray","length","object","prop","startsWith","decoratorData","Reflection","getPropertyDecorators","REFLECT","decorators","reduce","accum","el","key","props","customTypes","message","DEFAULT_ERROR_MESSAGES","description","keys","typeData","map","c","LIST","clazz","entries","filter","k","includes","optional","Metadata","constructor","describe","res","descriptor","getOwnPropertyDescriptor","value","constr","fromModel","VERSION","registerLibrary"],"mappings":"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"}
1
+ {"version":3,"file":"as-zod.cjs","sources":["../src/overrides.ts","../src/index.ts"],"sourcesContent":[null,null],"names":["ReservedKeys","ValidationKeys","REQUIRED","TYPE","DATE","ModelKeys","ZodAttributeBuilder","AttributeBuilder","constructor","parent","attr","declaredType","decoratorData","description","super","this","attributeDescription","safeInvoke","value","prototype","typeName","name","toString","String","normalizeTypes","input","Array","isArray","map","entry","resolved","resolveListTypes","listMeta","clazz","buildSchema","Object","keys","length","typeData","Error","zodSchema","zodify","customTypes","LIST","ZodAny","key","props","entries","filter","k","el","includes","zodifyValidation","optional","describe","ZodModelBuilder","ModelBuilder","target","metadata","decoratorDataFor","prop","validation","designType","properties","undefined","message","DEFAULT_ERROR_MESSAGES","toZodObject","result","Model","getAttributes","startsWith","schema","Metadata","class","objectSchema","z","object","type","zz","innerZodify","toLowerCase","Primitives","STRING","string","NUMBER","number","BIGINT","bigint","BOOLEAN","boolean","date","array","Set","setSchema","set","valueSchema","defineProperty","get","_def","valueType","enumerable","configurable","m","from","e","zod","t","or","values","MIN","min","MIN_LENGTH","MAX","max","MAX_LENGTH","STEP","multipleOf","PATTERN","URL","EMAIL","PASSWORD","regex","RegExp","TypeError","modelToZod","model","ctor","fullMeta","descriptor","getOwnPropertyDescriptor","VERSION","registerLibrary"],"mappings":"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"}
package/dist/as-zod.js CHANGED
@@ -1,2 +1,2 @@
1
- import{Metadata as e}from"@decaf-ts/decoration";import{ValidationKeys as r,ModelKeys as t,Model as o,DEFAULT_ERROR_MESSAGES as n,Primitives as c}from"@decaf-ts/decorator-validation";import{z as s,ZodAny as a}from"zod";import{Reflection as i}from"@decaf-ts/reflection";const u=[r.REQUIRED,r.TYPE,r.DATE,t.TYPE];function f(e,t=a){function n(e){switch(e.toLowerCase()){case c.STRING:return s.string();case c.NUMBER:return s.number();case c.BIGINT:return s.bigint();case c.BOOLEAN:return s.boolean();case r.DATE:return s.date();case Array.name.toLowerCase():return s.array(t);case Set.name.toLowerCase():{const e=s.set(t);return void 0===e.valueSchema&&Object.defineProperty(e,"valueSchema",{get:()=>e._def?.valueType,enumerable:!1,configurable:!0}),e}default:{const r=o.get(e);if(!r)throw Error("Unzodifiable type: "+e);try{return s.from(r)}catch(r){throw Error(`Failed to zodify model ${e}: ${r}`)}}}}let i;e="string"==typeof e?[e]:e;for(const r of e)i=i?i.or(n(r)):n(r);return i}function p(e,t,o){switch(t){case r.MIN:return e.min(o[r.MIN]);case r.MIN_LENGTH:return e.min(o[r.MIN_LENGTH]);case r.MAX:return e.max(o[r.MAX]);case r.MAX_LENGTH:return e.max(o[r.MAX_LENGTH]);case r.STEP:return e.multipleOf(o[r.STEP]);case r.PATTERN:case r.URL:case r.EMAIL:case r.PASSWORD:return e.regex(RegExp(o[r.PATTERN],"g"));case r.DATE:throw new TypeError("DATE validator cannot be applied as a refinement");default:return e}}function m(c){const m={},E=o.getAttributes(c);if(Array.isArray(E)&&!E.length)return s.object({});for(const o of E){if("function"==typeof c[o]||o.startsWith("_")||"constructor"===o)continue;const s=i.getPropertyDecorators(r.REFLECT,c,o,!1,!0).decorators.reduce((e,o)=>{const{key:c,props:s}=o;return c!==t.TYPE||e[r.TYPE]?e[c]=s:e[r.TYPE]={customTypes:[s.name],message:n.TYPE,description:"defines the accepted types for the attribute"},e},{});if(!Object.keys(s).length)continue;let E=a;const T=s[r.TYPE];if(!T)throw Error("Missing type information");E=f((Array.isArray(T.customTypes)?T.customTypes:[T.customTypes]).map(e=>"function"==typeof e?e():e),s[r.LIST]?f((Array.isArray(s[r.LIST].clazz)?s[r.LIST].clazz:[s[r.LIST].clazz]).map(e=>"function"==typeof e?e().name:e)):a);for(const[e,r]of Object.entries(s).filter(([e])=>{return r=e,!u.includes(r);var r}))E=p(E,e,r);s[r.REQUIRED]||(E=E.optional());const d=e.description(c.constructor,o);d&&(E=E.describe(d)),m[o]=E}const T=e.description(c.constructor),d=s.object(m);return T?d.describe(T):d}const E=Object.getOwnPropertyDescriptor(s,"from");E&&!E.configurable||Object.defineProperty(s,"from",{value:r=>{const t=new r;return e.constr(t.constructor)||o.fromModel(t,{}),m(t)}});const T="##VERSION##";e.registerLibrary("@decaf-ts/as-zod",T);export{T as VERSION,m as modelToZod,f as zodify,p as zodifyValidation};
1
+ import{Metadata as t}from"@decaf-ts/decoration";import{ValidationKeys as e,ModelKeys as r,Model as o,ModelBuilder as a,DEFAULT_ERROR_MESSAGES as n,Primitives as s,AttributeBuilder as i}from"@decaf-ts/decorator-validation";import{z as c,ZodAny as u}from"zod";const f=[e.REQUIRED,e.TYPE,e.DATE,r.TYPE];class p extends i{constructor(t,e,r,o,a){super(t,e,r),this.decoratorData=o,this.attributeDescription=a}safeInvoke(t){if("function"!=typeof t)return t;if(t.prototype)return t;try{return t()}catch{return t}}typeName(t){if("string"==typeof t)return t;if("function"==typeof t)return t.name||t.toString();if(t&&"object"==typeof t&&"name"in t){const e=t.name;if(e)return e}return t+""}normalizeTypes(t){return(Array.isArray(t)?t:[t]).map(t=>{const e=this.safeInvoke(t);return this.typeName(e)})}resolveListTypes(t){return(Array.isArray(t.clazz)?t.clazz:[t.clazz]).map(t=>{const e=this.safeInvoke(t);return this.typeName(e)})}buildSchema(){if(!Object.keys(this.decoratorData).length)return;const t=this.decoratorData[e.TYPE];if(!t)throw Error("Missing type information");let r=h(this.normalizeTypes(t.customTypes),this.decoratorData[e.LIST]?h(this.resolveListTypes(this.decoratorData[e.LIST])):u);for(const[t,e]of Object.entries(this.decoratorData).filter(([t])=>{return e=t,!f.includes(e);var e}))r=m(r,t,e);return this.decoratorData[e.REQUIRED]||(r=r.optional()),this.attributeDescription&&(r=r.describe(this.attributeDescription)),r}}class d extends a{constructor(t,e){super(),this.target=t,this.metadata=e}decoratorDataFor(t){const r={...(this.metadata.validation??{})[t]??{}};if(!r[e.TYPE]){const o=this.metadata.properties?.[t],a="function"==typeof o||"string"==typeof o?.name?o.name:void 0;a&&(r[e.TYPE]={customTypes:[a],message:n.TYPE,description:"defines the accepted types for the attribute"})}return r}toZodObject(){const e={},r=o.getAttributes(this.target);if(Array.isArray(r)&&r.length)for(const o of r){if("string"!=typeof o||"constructor"===o||o.startsWith("_"))continue;if("function"==typeof this.target[o])continue;const r=this.decoratorDataFor(o);if(!Object.keys(r).length)continue;const a=new p(this,o,this.metadata.properties?.[o],r,t.description(this.target,o)??this.metadata.description?.[o]).buildSchema();a&&(e[o]=a)}const a=t.description(this.target)??this.metadata.description?.class,n=c.object(e);return a?n.describe(a):n}}function h(t,r=u){function a(t){switch(t.toLowerCase()){case s.STRING:return c.string();case s.NUMBER:return c.number();case s.BIGINT:return c.bigint();case s.BOOLEAN:return c.boolean();case e.DATE:return c.date();case Array.name.toLowerCase():return c.array(r);case Set.name.toLowerCase():{const t=c.set(r);return void 0===t.valueSchema&&Object.defineProperty(t,"valueSchema",{get:()=>t._def?.valueType,enumerable:!1,configurable:!0}),t}default:{const e=o.get(t);if(!e)throw Error("Unzodifiable type: "+t);try{return c.from(e)}catch(e){throw Error(`Failed to zodify model ${t}: ${e}`)}}}}let n;t="string"==typeof t?[t]:t;for(const e of t)n=n?n.or(a(e)):a(e);return n}function m(t,r,o){switch(r){case e.MIN:return t.min(o[e.MIN]);case e.MIN_LENGTH:return t.min(o[e.MIN_LENGTH]);case e.MAX:return t.max(o[e.MAX]);case e.MAX_LENGTH:return t.max(o[e.MAX_LENGTH]);case e.STEP:return t.multipleOf(o[e.STEP]);case e.PATTERN:case e.URL:case e.EMAIL:case e.PASSWORD:return t.regex(RegExp(o[e.PATTERN],"g"));case e.DATE:throw new TypeError("DATE validator cannot be applied as a refinement");default:return t}}function y(e){const r=e instanceof o?e.constructor:e,a=t.get(r);return new d(r,a??{validation:{},properties:{},description:{}}).toZodObject()}const l=Object.getOwnPropertyDescriptor(c,"from");l&&!l.configurable||Object.defineProperty(c,"from",{value:t=>y(t)});const T="##VERSION##";t.registerLibrary("@decaf-ts/as-zod",T);export{T as VERSION,y as modelToZod,h as zodify,m as zodifyValidation};
2
2
  //# sourceMappingURL=as-zod.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"as-zod.js","sources":["../src/overrides.ts","../src/index.ts"],"sourcesContent":[null,null],"names":["ReservedKeys","ValidationKeys","REQUIRED","TYPE","DATE","ModelKeys","zodify","type","zz","ZodAny","innerZodify","toLowerCase","Primitives","STRING","z","string","NUMBER","number","BIGINT","bigint","BOOLEAN","boolean","date","Array","name","array","Set","setSchema","set","valueSchema","Object","defineProperty","get","_def","valueType","enumerable","configurable","m","Model","Error","from","e","zod","t","or","zodifyValidation","values","MIN","min","MIN_LENGTH","MAX","max","MAX_LENGTH","STEP","multipleOf","PATTERN","URL","EMAIL","PASSWORD","regex","RegExp","TypeError","modelToZod","model","result","properties","getAttributes","isArray","length","object","prop","startsWith","decoratorData","Reflection","getPropertyDecorators","REFLECT","decorators","reduce","accum","el","key","props","customTypes","message","DEFAULT_ERROR_MESSAGES","description","keys","typeData","map","c","LIST","clazz","entries","filter","k","includes","optional","Metadata","constructor","describe","res","descriptor","getOwnPropertyDescriptor","value","constr","fromModel","VERSION","registerLibrary"],"mappings":"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"}
1
+ {"version":3,"file":"as-zod.js","sources":["../src/overrides.ts","../src/index.ts"],"sourcesContent":[null,null],"names":["ReservedKeys","ValidationKeys","REQUIRED","TYPE","DATE","ModelKeys","ZodAttributeBuilder","AttributeBuilder","constructor","parent","attr","declaredType","decoratorData","description","super","this","attributeDescription","safeInvoke","value","prototype","typeName","name","toString","String","normalizeTypes","input","Array","isArray","map","entry","resolved","resolveListTypes","listMeta","clazz","buildSchema","Object","keys","length","typeData","Error","zodSchema","zodify","customTypes","LIST","ZodAny","key","props","entries","filter","k","el","includes","zodifyValidation","optional","describe","ZodModelBuilder","ModelBuilder","target","metadata","decoratorDataFor","prop","validation","designType","properties","undefined","message","DEFAULT_ERROR_MESSAGES","toZodObject","result","Model","getAttributes","startsWith","schema","Metadata","class","objectSchema","z","object","type","zz","innerZodify","toLowerCase","Primitives","STRING","string","NUMBER","number","BIGINT","bigint","BOOLEAN","boolean","date","array","Set","setSchema","set","valueSchema","defineProperty","get","_def","valueType","enumerable","configurable","m","from","e","zod","t","or","values","MIN","min","MIN_LENGTH","MAX","max","MAX_LENGTH","STEP","multipleOf","PATTERN","URL","EMAIL","PASSWORD","regex","RegExp","TypeError","modelToZod","model","ctor","fullMeta","descriptor","getOwnPropertyDescriptor","VERSION","registerLibrary"],"mappings":"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"}
@@ -6,4 +6,4 @@ export * from "./overrides";
6
6
  * @const VERSION
7
7
  * @memberOf module:as-zod
8
8
  */
9
- export declare const VERSION = "##VERSION##";
9
+ export declare const VERSION = "1.3.1";
package/lib/esm/index.js CHANGED
@@ -7,6 +7,6 @@ export * from "./overrides.js";
7
7
  * @const VERSION
8
8
  * @memberOf module:as-zod
9
9
  */
10
- export const VERSION = "1.2.0";
10
+ export const VERSION = "1.3.1";
11
11
  Metadata.registerLibrary("@decaf-ts/as-zod", VERSION);
12
12
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,8 @@
1
- import { Model, ValidatorOptions } from "@decaf-ts/decorator-validation";
1
+ import { Model, ValidatorOptions, ExtendedMetadata } from "@decaf-ts/decorator-validation";
2
+ import { Constructor } from "@decaf-ts/decoration";
2
3
  import { z } from "zod";
3
4
  export declare function zodify(type: string | string[], zz?: any): any;
4
5
  export declare function zodifyValidation(zod: any, type: string, values: ValidatorOptions): any;
5
- export declare function modelToZod<M extends Model>(model: M): z.ZodObject<{}, z.core.$strip>;
6
+ export declare function modelToZod<M extends Model, META extends ExtendedMetadata<M>>(model: M | Constructor<M>): z.ZodObject<{
7
+ [x: string]: any;
8
+ }, z.core.$strip>;
@@ -1,7 +1,6 @@
1
- import { Model, ModelKeys, Primitives, DEFAULT_ERROR_MESSAGES, } from "@decaf-ts/decorator-validation";
1
+ import { Model, ModelBuilder, AttributeBuilder, ModelKeys, Primitives, DEFAULT_ERROR_MESSAGES, } from "@decaf-ts/decorator-validation";
2
2
  import { Metadata } from "@decaf-ts/decoration";
3
3
  import { z, ZodAny } from "zod";
4
- import { Reflection } from "@decaf-ts/reflection";
5
4
  import { ValidationKeys } from "@decaf-ts/decorator-validation";
6
5
  const ReservedKeys = [
7
6
  ValidationKeys.REQUIRED,
@@ -12,6 +11,136 @@ const ReservedKeys = [
12
11
  function isReservedKey(el) {
13
12
  return ReservedKeys.includes(el);
14
13
  }
14
+ class ZodAttributeBuilder extends AttributeBuilder {
15
+ constructor(parent, attr, declaredType, decoratorData, description) {
16
+ super(parent, attr, declaredType);
17
+ this.decoratorData = decoratorData;
18
+ this.attributeDescription = description;
19
+ }
20
+ safeInvoke(value) {
21
+ if (typeof value !== "function") {
22
+ return value;
23
+ }
24
+ if (value.prototype) {
25
+ return value;
26
+ }
27
+ try {
28
+ return value();
29
+ }
30
+ catch {
31
+ return value;
32
+ }
33
+ }
34
+ typeName(value) {
35
+ if (typeof value === "string") {
36
+ return value;
37
+ }
38
+ if (typeof value === "function") {
39
+ return value.name || value.toString();
40
+ }
41
+ if (value && typeof value === "object" && "name" in value) {
42
+ const name = value.name;
43
+ if (name)
44
+ return name;
45
+ }
46
+ return String(value);
47
+ }
48
+ normalizeTypes(input) {
49
+ const asArray = Array.isArray(input) ? input : [input];
50
+ return asArray.map((entry) => {
51
+ const resolved = this.safeInvoke(entry);
52
+ return this.typeName(resolved);
53
+ });
54
+ }
55
+ resolveListTypes(listMeta) {
56
+ const classes = Array.isArray(listMeta.clazz)
57
+ ? listMeta.clazz
58
+ : [listMeta.clazz];
59
+ return classes.map((clazz) => {
60
+ const resolved = this.safeInvoke(clazz);
61
+ return this.typeName(resolved);
62
+ });
63
+ }
64
+ buildSchema() {
65
+ if (!Object.keys(this.decoratorData).length) {
66
+ return undefined;
67
+ }
68
+ const typeData = this.decoratorData[ValidationKeys.TYPE];
69
+ if (!typeData) {
70
+ throw new Error(`Missing type information`);
71
+ }
72
+ let zodSchema = zodify(this.normalizeTypes(typeData.customTypes), this.decoratorData[ValidationKeys.LIST]
73
+ ? zodify(this.resolveListTypes(this.decoratorData[ValidationKeys.LIST]))
74
+ : ZodAny);
75
+ for (const [key, props] of Object.entries(this.decoratorData).filter(([k]) => !isReservedKey(k))) {
76
+ zodSchema = zodifyValidation(zodSchema, key, props);
77
+ }
78
+ if (!this.decoratorData[ValidationKeys.REQUIRED]) {
79
+ zodSchema = zodSchema.optional();
80
+ }
81
+ if (this.attributeDescription) {
82
+ zodSchema = zodSchema.describe(this.attributeDescription);
83
+ }
84
+ return zodSchema;
85
+ }
86
+ }
87
+ class ZodModelBuilder extends ModelBuilder {
88
+ constructor(target, metadata) {
89
+ super();
90
+ this.target = target;
91
+ this.metadata = metadata;
92
+ }
93
+ decoratorDataFor(prop) {
94
+ const validations = (this.metadata.validation ??
95
+ {})[prop] ?? {};
96
+ const decoratorData = { ...validations };
97
+ if (!decoratorData[ValidationKeys.TYPE]) {
98
+ const designType = this.metadata.properties?.[prop];
99
+ const typeName = typeof designType === "function"
100
+ ? designType.name
101
+ : typeof designType?.name === "string"
102
+ ? designType.name
103
+ : undefined;
104
+ if (typeName) {
105
+ decoratorData[ValidationKeys.TYPE] = {
106
+ customTypes: [typeName],
107
+ message: DEFAULT_ERROR_MESSAGES.TYPE,
108
+ description: "defines the accepted types for the attribute",
109
+ };
110
+ }
111
+ }
112
+ return decoratorData;
113
+ }
114
+ toZodObject() {
115
+ const result = {};
116
+ const properties = Model.getAttributes(this.target);
117
+ if (Array.isArray(properties) && properties.length) {
118
+ for (const prop of properties) {
119
+ if (typeof prop !== "string" ||
120
+ prop === "constructor" ||
121
+ prop.startsWith("_")) {
122
+ continue;
123
+ }
124
+ if (typeof this.target[prop] === "function") {
125
+ continue;
126
+ }
127
+ const decoratorData = this.decoratorDataFor(prop);
128
+ if (!Object.keys(decoratorData).length)
129
+ continue;
130
+ const attributeBuilder = new ZodAttributeBuilder(this, prop, this.metadata.properties?.[prop], decoratorData, Metadata.description(this.target, prop) ??
131
+ this.metadata.description?.[prop]);
132
+ const schema = attributeBuilder.buildSchema();
133
+ if (schema) {
134
+ result[prop] = schema;
135
+ }
136
+ }
137
+ }
138
+ const description = Metadata.description(this.target) ??
139
+ this.metadata.description?.class;
140
+ const objectSchema = z.object(result);
141
+ return description ? objectSchema.describe(description) : objectSchema;
142
+ }
143
+ }
15
144
  export function zodify(type, zz = ZodAny) {
16
145
  type = typeof type === "string" ? [type] : type;
17
146
  function innerZodify(type) {
@@ -85,79 +214,16 @@ export function zodifyValidation(zod, type, values) {
85
214
  }
86
215
  }
87
216
  export function modelToZod(model) {
88
- const result = {};
89
- const properties = Model.getAttributes(model);
90
- if (Array.isArray(properties) && !properties.length)
91
- return z.object({});
92
- for (const prop of properties) {
93
- if (typeof model[prop] === "function" ||
94
- prop.startsWith("_") ||
95
- prop === "constructor") {
96
- continue;
97
- }
98
- const allDecs = Reflection.getPropertyDecorators(ValidationKeys.REFLECT, model, prop, false, true);
99
- const decoratorData = allDecs.decorators.reduce((accum, el) => {
100
- const { key, props } = el;
101
- if (key === ModelKeys.TYPE && !accum[ValidationKeys.TYPE]) {
102
- accum[ValidationKeys.TYPE] = {
103
- customTypes: [props.name],
104
- message: DEFAULT_ERROR_MESSAGES.TYPE,
105
- description: "defines the accepted types for the attribute",
106
- };
107
- }
108
- else {
109
- accum[key] = props;
110
- }
111
- return accum;
112
- }, {});
113
- if (!Object.keys(decoratorData).length) {
114
- continue;
115
- }
116
- let zod = ZodAny;
117
- const typeData = decoratorData[ValidationKeys.TYPE];
118
- if (!typeData) {
119
- throw new Error(`Missing type information`);
120
- }
121
- zod = zodify((Array.isArray(typeData.customTypes)
122
- ? typeData.customTypes
123
- : [typeData.customTypes]).map((c) => {
124
- if (typeof c === "function")
125
- return c();
126
- return c;
127
- }), decoratorData[ValidationKeys.LIST]
128
- ? zodify((Array.isArray(decoratorData[ValidationKeys.LIST].clazz)
129
- ? decoratorData[ValidationKeys.LIST].clazz
130
- : [decoratorData[ValidationKeys.LIST].clazz]).map((c) => {
131
- if (typeof c === "function") {
132
- return c().name;
133
- }
134
- return c;
135
- }))
136
- : ZodAny);
137
- for (const [key, props] of Object.entries(decoratorData).filter(([k]) => !isReservedKey(k))) {
138
- zod = zodifyValidation(zod, key, props);
139
- }
140
- if (!decoratorData[ValidationKeys.REQUIRED]) {
141
- zod = zod.optional();
142
- }
143
- const description = Metadata.description(model.constructor, prop);
144
- if (description) {
145
- zod = zod.describe(description);
146
- }
147
- result[prop] = zod;
148
- }
149
- const description = Metadata.description(model.constructor);
150
- const res = z.object(result);
151
- return description ? res.describe(description) : res;
217
+ const ctor = model instanceof Model ? model.constructor : model;
218
+ const fullMeta = Metadata.get(ctor);
219
+ const builder = new ZodModelBuilder(ctor, (fullMeta ?? { validation: {}, properties: {}, description: {} }));
220
+ return builder.toZodObject();
152
221
  }
153
222
  const descriptor = Object.getOwnPropertyDescriptor(z, "from");
154
223
  if (!descriptor || descriptor.configurable) {
155
224
  Object.defineProperty(z, "from", {
156
225
  value: (model) => {
157
- const m = new model();
158
- if (!Metadata.constr(m.constructor))
159
- Model.fromModel(m, {});
160
- return modelToZod(m);
226
+ return modelToZod(model);
161
227
  },
162
228
  });
163
229
  }
@@ -1 +1 @@
1
- {"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../src/overrides.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"overrides.js","sourceRoot":"","sources":["../../src/overrides.ts"],"names":[],"mappings":"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"}
package/lib/esm/zod.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import type { Constructor, Model } from "@decaf-ts/decorator-validation";
1
+ import type { Model } from "@decaf-ts/decorator-validation";
2
+ import type { Constructor } from "@decaf-ts/decoration";
2
3
  import type { ZodArray, ZodBigInt, ZodBoolean, ZodDate, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodSet, ZodString, ZodTypeAny } from "zod";
3
4
  type BaseZodSchemaFor<T> = T extends string ? ZodString : T extends number ? ZodNumber : T extends boolean ? ZodBoolean : T extends bigint ? ZodBigInt : T extends Date ? ZodDate : T extends any[] ? ZodArray<ZodTypeAny> : T extends Set<any> ? ZodSet<ZodTypeAny> : T extends Model ? ZodObject<any> : ZodTypeAny;
4
5
  export type ZodSchemaFor<T> = undefined extends T ? ZodOptional<BaseZodSchemaFor<Exclude<T, undefined>>> : null extends T ? ZodNullable<BaseZodSchemaFor<NonNullable<T>>> : BaseZodSchemaFor<T>;
package/lib/index.cjs CHANGED
@@ -24,6 +24,6 @@ __exportStar(require("./overrides.cjs"), exports);
24
24
  * @const VERSION
25
25
  * @memberOf module:as-zod
26
26
  */
27
- exports.VERSION = "##VERSION##";
27
+ exports.VERSION = "1.3.1";
28
28
  decoration_1.Metadata.registerLibrary("@decaf-ts/as-zod", exports.VERSION);
29
29
  //# sourceMappingURL=index.js.map
package/lib/index.d.ts CHANGED
@@ -6,4 +6,4 @@ export * from "./overrides";
6
6
  * @const VERSION
7
7
  * @memberOf module:as-zod
8
8
  */
9
- export declare const VERSION = "##VERSION##";
9
+ export declare const VERSION = "1.3.1";
package/lib/overrides.cjs CHANGED
@@ -6,7 +6,6 @@ exports.modelToZod = modelToZod;
6
6
  const decorator_validation_1 = require("@decaf-ts/decorator-validation");
7
7
  const decoration_1 = require("@decaf-ts/decoration");
8
8
  const zod_1 = require("zod");
9
- const reflection_1 = require("@decaf-ts/reflection");
10
9
  const decorator_validation_2 = require("@decaf-ts/decorator-validation");
11
10
  const ReservedKeys = [
12
11
  decorator_validation_2.ValidationKeys.REQUIRED,
@@ -17,6 +16,136 @@ const ReservedKeys = [
17
16
  function isReservedKey(el) {
18
17
  return ReservedKeys.includes(el);
19
18
  }
19
+ class ZodAttributeBuilder extends decorator_validation_1.AttributeBuilder {
20
+ constructor(parent, attr, declaredType, decoratorData, description) {
21
+ super(parent, attr, declaredType);
22
+ this.decoratorData = decoratorData;
23
+ this.attributeDescription = description;
24
+ }
25
+ safeInvoke(value) {
26
+ if (typeof value !== "function") {
27
+ return value;
28
+ }
29
+ if (value.prototype) {
30
+ return value;
31
+ }
32
+ try {
33
+ return value();
34
+ }
35
+ catch {
36
+ return value;
37
+ }
38
+ }
39
+ typeName(value) {
40
+ if (typeof value === "string") {
41
+ return value;
42
+ }
43
+ if (typeof value === "function") {
44
+ return value.name || value.toString();
45
+ }
46
+ if (value && typeof value === "object" && "name" in value) {
47
+ const name = value.name;
48
+ if (name)
49
+ return name;
50
+ }
51
+ return String(value);
52
+ }
53
+ normalizeTypes(input) {
54
+ const asArray = Array.isArray(input) ? input : [input];
55
+ return asArray.map((entry) => {
56
+ const resolved = this.safeInvoke(entry);
57
+ return this.typeName(resolved);
58
+ });
59
+ }
60
+ resolveListTypes(listMeta) {
61
+ const classes = Array.isArray(listMeta.clazz)
62
+ ? listMeta.clazz
63
+ : [listMeta.clazz];
64
+ return classes.map((clazz) => {
65
+ const resolved = this.safeInvoke(clazz);
66
+ return this.typeName(resolved);
67
+ });
68
+ }
69
+ buildSchema() {
70
+ if (!Object.keys(this.decoratorData).length) {
71
+ return undefined;
72
+ }
73
+ const typeData = this.decoratorData[decorator_validation_2.ValidationKeys.TYPE];
74
+ if (!typeData) {
75
+ throw new Error(`Missing type information`);
76
+ }
77
+ let zodSchema = zodify(this.normalizeTypes(typeData.customTypes), this.decoratorData[decorator_validation_2.ValidationKeys.LIST]
78
+ ? zodify(this.resolveListTypes(this.decoratorData[decorator_validation_2.ValidationKeys.LIST]))
79
+ : zod_1.ZodAny);
80
+ for (const [key, props] of Object.entries(this.decoratorData).filter(([k]) => !isReservedKey(k))) {
81
+ zodSchema = zodifyValidation(zodSchema, key, props);
82
+ }
83
+ if (!this.decoratorData[decorator_validation_2.ValidationKeys.REQUIRED]) {
84
+ zodSchema = zodSchema.optional();
85
+ }
86
+ if (this.attributeDescription) {
87
+ zodSchema = zodSchema.describe(this.attributeDescription);
88
+ }
89
+ return zodSchema;
90
+ }
91
+ }
92
+ class ZodModelBuilder extends decorator_validation_1.ModelBuilder {
93
+ constructor(target, metadata) {
94
+ super();
95
+ this.target = target;
96
+ this.metadata = metadata;
97
+ }
98
+ decoratorDataFor(prop) {
99
+ const validations = (this.metadata.validation ??
100
+ {})[prop] ?? {};
101
+ const decoratorData = { ...validations };
102
+ if (!decoratorData[decorator_validation_2.ValidationKeys.TYPE]) {
103
+ const designType = this.metadata.properties?.[prop];
104
+ const typeName = typeof designType === "function"
105
+ ? designType.name
106
+ : typeof designType?.name === "string"
107
+ ? designType.name
108
+ : undefined;
109
+ if (typeName) {
110
+ decoratorData[decorator_validation_2.ValidationKeys.TYPE] = {
111
+ customTypes: [typeName],
112
+ message: decorator_validation_1.DEFAULT_ERROR_MESSAGES.TYPE,
113
+ description: "defines the accepted types for the attribute",
114
+ };
115
+ }
116
+ }
117
+ return decoratorData;
118
+ }
119
+ toZodObject() {
120
+ const result = {};
121
+ const properties = decorator_validation_1.Model.getAttributes(this.target);
122
+ if (Array.isArray(properties) && properties.length) {
123
+ for (const prop of properties) {
124
+ if (typeof prop !== "string" ||
125
+ prop === "constructor" ||
126
+ prop.startsWith("_")) {
127
+ continue;
128
+ }
129
+ if (typeof this.target[prop] === "function") {
130
+ continue;
131
+ }
132
+ const decoratorData = this.decoratorDataFor(prop);
133
+ if (!Object.keys(decoratorData).length)
134
+ continue;
135
+ const attributeBuilder = new ZodAttributeBuilder(this, prop, this.metadata.properties?.[prop], decoratorData, decoration_1.Metadata.description(this.target, prop) ??
136
+ this.metadata.description?.[prop]);
137
+ const schema = attributeBuilder.buildSchema();
138
+ if (schema) {
139
+ result[prop] = schema;
140
+ }
141
+ }
142
+ }
143
+ const description = decoration_1.Metadata.description(this.target) ??
144
+ this.metadata.description?.class;
145
+ const objectSchema = zod_1.z.object(result);
146
+ return description ? objectSchema.describe(description) : objectSchema;
147
+ }
148
+ }
20
149
  function zodify(type, zz = zod_1.ZodAny) {
21
150
  type = typeof type === "string" ? [type] : type;
22
151
  function innerZodify(type) {
@@ -90,79 +219,16 @@ function zodifyValidation(zod, type, values) {
90
219
  }
91
220
  }
92
221
  function modelToZod(model) {
93
- const result = {};
94
- const properties = decorator_validation_1.Model.getAttributes(model);
95
- if (Array.isArray(properties) && !properties.length)
96
- return zod_1.z.object({});
97
- for (const prop of properties) {
98
- if (typeof model[prop] === "function" ||
99
- prop.startsWith("_") ||
100
- prop === "constructor") {
101
- continue;
102
- }
103
- const allDecs = reflection_1.Reflection.getPropertyDecorators(decorator_validation_2.ValidationKeys.REFLECT, model, prop, false, true);
104
- const decoratorData = allDecs.decorators.reduce((accum, el) => {
105
- const { key, props } = el;
106
- if (key === decorator_validation_1.ModelKeys.TYPE && !accum[decorator_validation_2.ValidationKeys.TYPE]) {
107
- accum[decorator_validation_2.ValidationKeys.TYPE] = {
108
- customTypes: [props.name],
109
- message: decorator_validation_1.DEFAULT_ERROR_MESSAGES.TYPE,
110
- description: "defines the accepted types for the attribute",
111
- };
112
- }
113
- else {
114
- accum[key] = props;
115
- }
116
- return accum;
117
- }, {});
118
- if (!Object.keys(decoratorData).length) {
119
- continue;
120
- }
121
- let zod = zod_1.ZodAny;
122
- const typeData = decoratorData[decorator_validation_2.ValidationKeys.TYPE];
123
- if (!typeData) {
124
- throw new Error(`Missing type information`);
125
- }
126
- zod = zodify((Array.isArray(typeData.customTypes)
127
- ? typeData.customTypes
128
- : [typeData.customTypes]).map((c) => {
129
- if (typeof c === "function")
130
- return c();
131
- return c;
132
- }), decoratorData[decorator_validation_2.ValidationKeys.LIST]
133
- ? zodify((Array.isArray(decoratorData[decorator_validation_2.ValidationKeys.LIST].clazz)
134
- ? decoratorData[decorator_validation_2.ValidationKeys.LIST].clazz
135
- : [decoratorData[decorator_validation_2.ValidationKeys.LIST].clazz]).map((c) => {
136
- if (typeof c === "function") {
137
- return c().name;
138
- }
139
- return c;
140
- }))
141
- : zod_1.ZodAny);
142
- for (const [key, props] of Object.entries(decoratorData).filter(([k]) => !isReservedKey(k))) {
143
- zod = zodifyValidation(zod, key, props);
144
- }
145
- if (!decoratorData[decorator_validation_2.ValidationKeys.REQUIRED]) {
146
- zod = zod.optional();
147
- }
148
- const description = decoration_1.Metadata.description(model.constructor, prop);
149
- if (description) {
150
- zod = zod.describe(description);
151
- }
152
- result[prop] = zod;
153
- }
154
- const description = decoration_1.Metadata.description(model.constructor);
155
- const res = zod_1.z.object(result);
156
- return description ? res.describe(description) : res;
222
+ const ctor = model instanceof decorator_validation_1.Model ? model.constructor : model;
223
+ const fullMeta = decoration_1.Metadata.get(ctor);
224
+ const builder = new ZodModelBuilder(ctor, (fullMeta ?? { validation: {}, properties: {}, description: {} }));
225
+ return builder.toZodObject();
157
226
  }
158
227
  const descriptor = Object.getOwnPropertyDescriptor(zod_1.z, "from");
159
228
  if (!descriptor || descriptor.configurable) {
160
229
  Object.defineProperty(zod_1.z, "from", {
161
230
  value: (model) => {
162
- const m = new model();
163
- if (!decoration_1.Metadata.constr(m.constructor))
164
- decorator_validation_1.Model.fromModel(m, {});
165
- return modelToZod(m);
231
+ return modelToZod(model);
166
232
  },
167
233
  });
168
234
  }
@@ -1,5 +1,8 @@
1
- import { Model, ValidatorOptions } from "@decaf-ts/decorator-validation";
1
+ import { Model, ValidatorOptions, ExtendedMetadata } from "@decaf-ts/decorator-validation";
2
+ import { Constructor } from "@decaf-ts/decoration";
2
3
  import { z } from "zod";
3
4
  export declare function zodify(type: string | string[], zz?: any): any;
4
5
  export declare function zodifyValidation(zod: any, type: string, values: ValidatorOptions): any;
5
- export declare function modelToZod<M extends Model>(model: M): z.ZodObject<{}, z.core.$strip>;
6
+ export declare function modelToZod<M extends Model, META extends ExtendedMetadata<M>>(model: M | Constructor<M>): z.ZodObject<{
7
+ [x: string]: any;
8
+ }, z.core.$strip>;
@@ -1 +1 @@
1
- {"version":3,"file":"overrides.js","sourceRoot":"","sources":["../src/overrides.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"overrides.js","sourceRoot":"","sources":["../src/overrides.ts"],"names":[],"mappings":"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"}
package/lib/zod.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import type { Constructor, Model } from "@decaf-ts/decorator-validation";
1
+ import type { Model } from "@decaf-ts/decorator-validation";
2
+ import type { Constructor } from "@decaf-ts/decoration";
2
3
  import type { ZodArray, ZodBigInt, ZodBoolean, ZodDate, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodSet, ZodString, ZodTypeAny } from "zod";
3
4
  type BaseZodSchemaFor<T> = T extends string ? ZodString : T extends number ? ZodNumber : T extends boolean ? ZodBoolean : T extends bigint ? ZodBigInt : T extends Date ? ZodDate : T extends any[] ? ZodArray<ZodTypeAny> : T extends Set<any> ? ZodSet<ZodTypeAny> : T extends Model ? ZodObject<any> : ZodTypeAny;
4
5
  export type ZodSchemaFor<T> = undefined extends T ? ZodOptional<BaseZodSchemaFor<Exclude<T, undefined>>> : null extends T ? ZodNullable<BaseZodSchemaFor<NonNullable<T>>> : BaseZodSchemaFor<T>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decaf-ts/as-zod",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "description": "Zod compatibility library",
5
5
  "type": "module",
6
6
  "exports": {
@@ -77,33 +77,7 @@
77
77
  },
78
78
  "homepage": "https://github.com/decaf-ts/ts-workspace#readme",
79
79
  "devDependencies": {
80
- "@decaf-ts/logging": "latest",
81
- "@decaf-ts/utils": "latest",
82
- "@eslint/js": "^9.25.1",
83
- "@stylistic/eslint-plugin": "^4.2.0",
84
- "@types/jest": "^29.5.14",
85
- "clean-publish": "^5.1.0",
86
- "dpdm": "^3.14.0",
87
- "eslint": "^9.25.1",
88
- "eslint-config-prettier": "^10.1.2",
89
- "eslint-plugin-prettier": "^5.2.6",
90
- "globals": "^16.0.0",
91
- "jest": "^29.7.0",
92
- "jest-html-reporters": "^3.1.7",
93
- "jest-junit": "^16.0.0",
94
- "jsdoc": "^4.0.4",
95
- "jsdoc-mermaid": "^1.0.0",
96
- "markdown-include": "^0.4.3",
97
- "minimist": "^1.2.8",
98
- "nodemon": "^3.1.9",
99
- "npm-check-updates": "^18.0.0",
100
- "prettier": "3.5.3",
101
- "rimraf": "^6.0.1",
102
- "ts-jest": "^29.3.2",
103
- "ts-loader": "^9.5.2",
104
- "ts-node": "^10.9.2",
105
- "typescript": "^5.8.3",
106
- "typescript-eslint": "^8.31.0"
80
+ "@decaf-ts/utils": "latest"
107
81
  },
108
82
  "peerDependencies": {
109
83
  "@decaf-ts/decoration": "latest",