@zyno-io/ts-reflection 26.1029.216 → 26.1029.508

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/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=function(e){return e[e.never=0]=`never`,e[e.any=1]=`any`,e[e.unknown=2]=`unknown`,e[e.void=3]=`void`,e[e.undefined=4]=`undefined`,e[e.null=5]=`null`,e[e.string=6]=`string`,e[e.number=7]=`number`,e[e.boolean=8]=`boolean`,e[e.bigint=9]=`bigint`,e[e.literal=10]=`literal`,e[e.enum=11]=`enum`,e[e.union=12]=`union`,e[e.intersection=13]=`intersection`,e[e.array=14]=`array`,e[e.tuple=15]=`tuple`,e[e.class=16]=`class`,e[e.object=17]=`object`,e[e.objectLiteral=18]=`objectLiteral`,e[e.property=19]=`property`,e[e.propertySignature=20]=`propertySignature`,e[e.method=21]=`method`,e[e.promise=22]=`promise`,e[e.templateLiteral=23]=`templateLiteral`,e}({});function t(e){return!!e&&typeof e==`object`&&typeof e.kind==`number`}var n=class extends Error{code;path;errors;constructor(e,t,n=``){super(t),this.code=e,this.path=n,this.errors=[this]}};Object.defineProperty(n,"name",{configurable:!0,value:`ValidatorError`});var r=class{decorators=[];addDecorator(e,t){this.decorators.push({predicate:e,handler:t})}apply(e,t){let n=t;for(let t of this.decorators){if(!t.predicate(e))continue;let r=new i;t.handler(e,r),n=r.apply(n)}return n}},i=class{transforms=[];addTransform(e){this.transforms.push(e)}apply(e){return this.transforms.reduce((e,t)=>t(e),e)}},a=new r;function o(e){if(typeof e==`boolean`)return e;if(typeof e==`number`)return e!==0;if(typeof e==`bigint`)return e!==0n;if(typeof e==`string`){if(e===`true`||e===`1`)return!0;if(e===`false`||e===`0`)return!1}return e}function s(t){if(t.kind===e.union){let n=t.types.filter(t=>t.kind!==e.undefined&&t.kind!==e.null);return n.length===1?s(n[0]):t}if(t.kind===e.intersection){let e=c(t);if(e)return e;let n=t.types.find(e=>!p(e));return n?s(n):t}return t}function c(t){if(t.kind!==e.intersection||!l(t))return;let n=u(t);if(n.length!==0)return{kind:e.objectLiteral,typeName:t.typeName,types:n}}function l(t){return t.kind===e.intersection&&t.types.every(t=>p(t)?!0:t.kind===e.intersection?l(t):t.kind===e.objectLiteral)}function u(t){let n=[],r=new Map,i=t=>{let i=String(t.name);r.has(i)||n.push(i),r.set(i,{kind:e.propertySignature,name:t.name,type:t.type,optional:t.optional})},a=t=>{if(!p(t)){if(t.kind===e.intersection){for(let e of t.types)a(e);return}if(t.kind===e.objectLiteral){for(let e of d(t))i(e);return}}};return a(t),n.map(e=>r.get(e))}function d(t,n=new Set){if(n.has(t)||p(t))return[];n.add(t);let r=[];for(let i of t.implements??[]){let t=s(i);n.has(t)||(t.kind===e.objectLiteral?r.push(...d(t,n)):t.kind===e.intersection?r.push(...u(t)):t.kind===e.class&&r.push(...C(t)))}return w([...r,...t.types.map(T)])}function f(t,n=new Set){if(t.index)return t.index;if(!n.has(t)){n.add(t);for(let r of t.implements??[]){let t=s(r);if(t.kind===e.objectLiteral){let e=f(t,n);if(e)return e}}}}function p(e){return!!(e.annotations||e.validation||e.database||ee(e)||ne(e))}function ee(t){return te(t.typeName)?t.kind===e.unknown||t.kind===e.class&&!g(t.classType):!1}function te(e){switch(e){case`ApiName`:case`AutoIncrement`:case`DatabaseField`:case`GreaterThan`:case`HasDefault`:case`Index`:case`Length`:case`LessThan`:case`Maximum`:case`MaxLength`:case`Minimum`:case`MinLength`:case`MySQL`:case`OnUpdate`:case`Pattern`:case`PrimaryKey`:case`Reference`:case`TypeAnnotation`:case`Unique`:return!0;default:return!1}}function ne(t){return t.kind===e.objectLiteral&&t.types.length>0&&t.types.every(t=>t.kind===e.propertySignature&&String(t.name)===`typia.tag`)}function m(t){return t.kind===e.any||t.kind===e.undefined||t.kind===e.union&&t.types.some(m)}function h(t){return t.kind===e.any||t.kind===e.null||t.kind===e.union&&t.types.some(h)}function re(e){let t=g(e);if(!t)throw Error(`Target is not a constructor`);return t}function g(e){if(v(e))return e;try{let t=e();return v(t)?t:void 0}catch{return}}function _(t,n=new Set){if(!t||typeof t!=`object`||n.has(t))return;n.add(t);let r=t;if(r.kind===e.class&&typeof r.classType==`function`&&!v(r.classType))try{let e=r.classType();v(e)&&(r.classType=e)}catch{}for(let e of Object.values(r))if(typeof e!=`function`){if(Array.isArray(e))for(let t of e)_(t,n);else _(e,n)}ie(r),ce(r)}function ie(n){if(n.kind!==e.intersection||!Array.isArray(n.types))return;let r=n.types.filter(t);if(r.length!==n.types.length)return;let i=r.filter(t=>t.kind===e.union);if(i.length===0||i.length===1&&r.every(e=>e===i[0]||p(e)))return;let a=[[]];for(let e of r){let t=ae(e);a=a.flatMap(e=>t.map(t=>[...e,...t]))}n.kind=e.union,n.types=a.map(se)}function ae(t){if(t.kind!==e.union)return[[t]];let n=oe(t);return t.types.flatMap(e=>ae(e).map(e=>n?[...e,n]:e))}function oe(t){if(t.annotations||t.validation||t.database)return{kind:e.unknown,annotations:t.annotations,validation:t.validation,database:t.database}}function se(t){return t.some(t=>t.kind===e.never)?{kind:e.never}:t.length===1?t[0]:{kind:e.intersection,types:t}}function v(e){return!!(typeof e==`function`&&e.prototype&&e.prototype.constructor===e)}function ce(n){let r=de(n);if(!r)return;let i=Array.isArray(n.typeArguments)?n.typeArguments:[];if(r===`Record`){if(n.kind!==e.objectLiteral||(n.types??[]).length>0)return;let r=i[0],a=i[1];if(!t(r)||!t(a))return;let o=le(r,a);o.length>0?(n.types=o,delete n.index):n.index=a;return}if((n.types??[]).length>0)return;let a=i[0];if(!t(a))return;if(r===`Extract`){let r=i[1];if(n.kind!==e.union||!t(r))return;n.types=y(a).filter(e=>b(e,r));return}if(n.kind!==e.objectLiteral)return;let o=C(a),s=a.kind===e.objectLiteral?f(a):void 0;if(o.length===0){s&&(n.index=s);return}let c=new Set((Array.isArray(n.utilityKeys)?n.utilityKeys:[]).filter(e=>typeof e==`string`)),l=o.map(T);r===`Pick`?l=l.filter(e=>c.has(String(e.name))):r===`Omit`?l=l.filter(e=>!c.has(String(e.name))):r===`Partial`?l=l.map(e=>({...e,optional:!0})):r===`Required`?l=l.map(e=>({...e,optional:void 0})):r===`OptionalNulls`&&(l=l.map(e=>h(e.type)?{...e,optional:!0}:e)),n.types=l,s&&(n.index=s)}function le(t,n){return ue(t).map(t=>({kind:e.propertySignature,name:t,type:n,optional:void 0}))}function ue(t){let n=[];for(let r of y(t)){if(r.kind!==e.literal||typeof r.literal!=`string`&&typeof r.literal!=`number`)return[];n.push(r.literal)}return n}function y(t){return t.kind===e.union?t.types.flatMap(y):[t]}function b(t,n){let r=s(t),i=s(n);if(i.kind===e.union)return i.types.some(e=>b(r,e));if(r.kind===e.union)return r.types.every(e=>b(e,i));if(i.kind===e.objectLiteral){let t=d(i).filter(e=>!e.optional&&!m(e.type));if(t.length===0)return r.kind===e.objectLiteral||r.kind===e.class;let n=C(r);return n.length!==0&&t.every(e=>{let t=n.find(t=>String(t.name)===String(e.name));return t?x(t.type,e.type):!1})}return x(r,i)}function x(t,n){let r=s(t),i=s(n);return r.kind===e.any||r.kind===e.unknown||i.kind===e.any||i.kind===e.unknown?!0:r.kind===e.union?r.types.some(e=>x(e,i)):i.kind===e.union?i.types.some(e=>x(r,e)):r.kind===e.literal&&i.kind===e.literal?r.literal===i.literal:r.kind===e.literal?S(r.literal,i):i.kind===e.literal?S(i.literal,r):r.kind===i.kind}function S(t,n){return t===null?n.kind===e.null:t===void 0?n.kind===e.undefined:typeof t==`string`?n.kind===e.string||n.kind===e.templateLiteral:typeof t==`number`?n.kind===e.number:typeof t==`boolean`?n.kind===e.boolean:typeof t==`bigint`&&n.kind===e.bigint}function C(t){if(t.kind===e.class){let n=g(t.classType);if(!n)return[];try{return G.from(n).getProperties().map(t=>({kind:e.propertySignature,name:t.name,type:t.getType(),optional:t.isOptional()?!0:void 0,description:t.getDescription()||void 0}))}catch(e){if(e instanceof Error&&e.message.startsWith(`No runtime type metadata for `))return[];throw e}}return t.kind===e.objectLiteral?d(t):t.kind===e.intersection?w(t.types.flatMap(C)):[]}function w(e){let t=[],n=new Map;for(let r of e){let e=String(r.name);n.has(e)||t.push(e),n.set(e,T(r))}return t.map(e=>n.get(e))}function T(t){return{kind:e.propertySignature,name:t.name,type:t.type,optional:t.optional?!0:void 0,description:t.description}}function E(e){return e===`Pick`||e===`Omit`||e===`Partial`||e===`Required`||e===`Extract`||e===`Record`||e===`OptionalNulls`}function de(e){if(E(e.utilityType))return e.utilityType;if(E(e.typeName))return e.typeName}function D(t,n){if(n(t),(t.kind===e.union||t.kind===e.intersection)&&`types`in t)for(let e of t.types)D(e,n);else if((t.kind===e.array||t.kind===e.promise)&&`type`in t)D(t.type,n);else if(t.kind===e.objectLiteral&&`types`in t){for(let e of t.types)D(e.type,n);t.index&&D(t.index,n)}}function O(t,n){if(n(t),(t.kind===e.union||t.kind===e.intersection)&&`types`in t)for(let e of t.types)O(e,n)}function fe(e,t){let n;return D(e,r=>{n===void 0&&r!==e&&(n=t(r))}),n}function k(e,t){let n;return O(e,r=>{n===void 0&&r!==e&&(n=t(r))}),n}function pe(e,t){let n=!1;return D(e,e=>{n||=t(e)}),n}function A(t){return t?.kind===e.literal&&typeof t.literal==`number`?t.literal:void 0}function j(t){if(!t)return;let n=t.runtime;if(n!==void 0)return typeof n==`function`?n():n;if(t.kind===e.literal)return t.literal}function M(e,t){return e?`${e}.${t}`:t}function me(t){let n=N.getType(t,`tsf:type`);return n?.kind===e.literal&&(n.literal===`uuid`||n.literal===`uuidString`)}function he(t){let n=N.getType(t,`tsf:type`);return n?.kind===e.literal&&n.literal===`uuid`}var N={getType(e,t){return e.annotations?.[t]||(k(e,e=>e.annotations?.[t])??ve(e,t))},getOption(e,t){return this.getType(e,t)}},ge={getAnnotations(e){let t=[],n=new Set;return O(e,e=>{if(e.validation)for(let r of e.validation){let e=Ee(r);n.has(e)||(n.add(e),t.push(r))}let r=be(e);if(r){let e=Ee(r);n.has(e)||(n.add(e),t.push(r))}}),t}},P={getDatabase(t,n){let r=t.database?.[n]??(n===`*`?void 0:t.database?.[`*`]);if(r)return r;if(t.kind===e.union){let r=t.types.filter(t=>t.kind!==e.null&&t.kind!==e.undefined);return r.length===1?this.getDatabase(r[0],n):void 0}let i=k(t,e=>e.database?.[n]??(n===`*`?void 0:e.database?.[`*`]));if(i)return i;let a=xe(t,n);if(a)return a}},F={kind:e.undefined};function _e(t){return{kind:e.literal,literal:t}}function I(e,...t){return{name:e,args:t}}function ve(e,t){return we(e,e=>ye(e,t))}function ye(e,t){let n=L(e);if(n&&n.kind===t&&(n.kind.startsWith(`tsf:`)||n.kind.startsWith(`openapi:`)))return n.value??F}function be(e){let t=L(e);if(t)switch(t.kind){case`minLength`:case`maxLength`:case`minimum`:case`greaterThan`:case`maximum`:case`lessThan`:return t.value?I(t.kind,t.value):void 0;case`pattern`:return I(`pattern`,t.value??R(t.schema,`pattern`)??F);case`format`:{let e=B(t.value)??B(R(t.schema,`format`)),n=e?Te(e):void 0;return n?I(`pattern`,_e(n)):void 0}case`tsf:validator`:return I(`validator`,t.value??F);default:return}}function xe(e,t){return we(e,e=>Se(e,t))}function Se(e,t){let n=L(e);if(!n)return;let r=V(n.schema)??V(n.value);if(r&&(n.kind===`database:field`||n.kind===`database:mysql`&&t===`mysql`))return r}function L(t){if(t.kind!==e.objectLiteral)return;let n=t.types.find(e=>String(e.name)===`typia.tag`);if(!n)return;let r=z(n.type);if(r.kind!==e.objectLiteral)return;let i=B(R(r,`kind`));if(i)return{kind:i,value:R(r,`value`),schema:R(r,`schema`)}}function R(t,n){let r=t?z(t):void 0;if(r&&r.kind===e.objectLiteral)return r.types.find(e=>String(e.name)===n)?.type}function z(t){if(t.kind!==e.union)return t;let n=t.types.filter(t=>t.kind!==e.undefined&&t.kind!==e.null);return n.length===1?n[0]:t}function B(t){return t?.kind===e.literal&&typeof t.literal==`string`?t.literal:void 0}function V(t){let n=t?z(t):void 0;if(!n||n.kind!==e.objectLiteral)return;let r={};for(let e of n.types){let t=Ce(e.type);t!==void 0&&(r[String(e.name)]=t)}return r}function Ce(t){let n=z(t);if(n.kind===e.literal)return n.literal;if(n.kind!==e.undefined&&n.kind===e.objectLiteral)return V(n)}function we(e,t){let n;return O(e,e=>{n===void 0&&(n=t(e))}),n}function Te(e){switch(e){case`date`:return`^\\d{4}-\\d{2}-\\d{2}$`;case`email`:return`^[a-zA-Z0-9_+.-]+@[a-zA-Z0-9-.]+\\.[a-zA-Z]+$`;case`uuid`:return`^(?:urn:uuid:)?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$`;default:return}}function Ee(e){return`${e.name}:${e.args.map(De).join(`|`)}`}function De(t){if(t.kind===e.literal&&`literal`in t)return`literal:${String(t.literal)}`;let n=t.runtime;return n?`runtime:${String(n)}`:`${t.kind}:${t.typeName??``}`}function Oe(t){let n=N.getType(t,`tsf:type`);if(n?.kind===e.literal){if(n.literal===`integer`)return e.number;if(typeof n.literal==`string`)return e.string}}var H=new WeakMap,U=new WeakMap;function W(e,t){t&&(t.collectionName&&(e.collectionName=t.collectionName),t.indexes?.length&&(e.indexes=[...t.indexes]),t.excludeMigration&&(e.excludeMigration=!0))}function ke(e){if(!e)throw Error(`typeOf<T>() was not transformed by the metadata compiler`);return _(e),e}function Ae(e,t){t.classType=e,W(t,U.get(e)),H.set(e,t)}var G=class t{classType;name;indexes;metadata;constructor(e,t){this.classType=e,this.metadata=t,this.name=t.name||e.name;let n=t.properties.flatMap(e=>{let t=[];return e.index&&t.push({names:[e.name],options:e.index}),e.unique&&t.push({names:[e.name],options:{...e.unique,unique:!0}}),t});this.indexes=[...t.indexes??[],...n]}static from(e){let n=J(e);if(!n)throw Error(`No runtime type metadata for ${e.name}. Did the tsf metadata compiler run?`);return new t(e,n)}getClassType(){return this.classType}getCollectionName(){return this.metadata.collectionName??U.get(this.classType)?.collectionName}isDatabaseMigrationSkipped(e){return this.metadata.excludeMigration===!0||U.get(this.classType)?.excludeMigration===!0}getProperties(){return Y(this.classType,this.metadata).map(e=>new K(e))}getProperty(e){let t=Y(this.classType,this.metadata).find(t=>t.name===e);if(!t)throw Error(`Property ${String(e)} does not exist on ${this.name}`);return new K(t)}getPrimary(){let e=Y(this.classType,this.metadata).find(e=>e.primaryKey);if(!e)throw Error(`Class ${this.name} has no primary key`);return new K(e)}getMethod(e){let t=Me(this.classType,this.metadata).find(t=>t.name===e||String(t.name)===String(e));if(!t)throw Error(`Method ${String(e)} does not exist on ${this.name}`);return new q(t)}getConstructorOrUndefined(){let t=Ne(this.classType,this.metadata);if(t.length)return new q({name:`constructor`,parameters:t,returnType:{kind:e.void}})}},K=class{metadata;type;name;constructor(e){this.metadata=e,this.type=e.type,this.name=e.name}getNameAsString(){return String(this.name)}getType(){return this.type}getDescription(){return this.metadata.description??``}isPublic(){return!0}isPrimaryKey(){return this.metadata.primaryKey===!0}isAutoIncrement(){return this.metadata.autoIncrement===!0}isOptional(){return this.metadata.optional===!0||m(this.type)}isNullable(){return h(this.type)}getDatabase(e=`*`){return P.getDatabase(this.type,e)||P.getDatabase(this.type,`*`)}isBackReference(){return!1}isDatabaseSkipped(e){return!1}isDatabaseMigrationSkipped(e){return!1}isReference(){return this.metadata.reference!==void 0}getReference(){return this.metadata.reference}getResolvedReflectionClass(){let t=s(this.type);if(t.kind!==e.class)throw Error(`Property ${String(this.name)} is not a class reference`);return G.from(re(t.classType))}},q=class{metadata;constructor(e){this.metadata=e}getDescription(){return this.metadata.description??``}getParameters(){return this.metadata.parameters.map(e=>new je(e))}getReturnType(){return this.metadata.returnType}},je=class{metadata;constructor(e){this.metadata=e}getName(){return this.metadata.name}getType(){return this.metadata.type}isOptional(){return this.metadata.optional===!0||m(this.metadata.type)}hasDefault(){return this.metadata.default===!0}};function J(t){let n=H.get(t);if(n)return _(n),n;let r=Object.prototype.hasOwnProperty.call(t,`__tsfType`)?t.__tsfType:void 0;if(!r){if(!X(t))return;let n={kind:e.class,classType:t,name:t.name,typeName:t.name,properties:[],methods:[],constructorParameters:[],hasConstructor:!0};return W(n,U.get(t)),H.set(t,n),n}return W(r,U.get(t)),_(r),H.set(t,r),r}function Y(e,t){let n=X(e),r=n?Y(n.classType,n.metadata):[],i=new Set(t.properties.map(e=>e.name));return[...r.filter(e=>!i.has(e.name)),...t.properties]}function Me(e,t){let n=X(e),r=n?Me(n.classType,n.metadata):[],i=new Set(t.methods.map(e=>e.name));return[...r.filter(e=>!i.has(e.name)),...t.methods]}function Ne(e,t){if(t.constructorParameters.length||t.hasConstructor)return t.constructorParameters;let n=X(e);return n?Ne(n.classType,n.metadata):[]}function X(e){let t=(e.prototype?Object.getPrototypeOf(e.prototype):void 0)?.constructor;if(!t||t===Object||t===e)return;let n=J(t);return n?{classType:t,metadata:n}:void 0}var Pe=new Map,Z={register(e,t){Pe.set(e,t)},get(e){return Pe.get(e)}};function Fe(e,t){let n=He(e,t);return n?Q(e,n):[]}function Ie(e,t){if(!t)throw Error(`deserialize<T>() was not transformed by the metadata compiler`);return _(t),$(e,t)}function Le(e,t,n,r,i){if(!i)throw Error(`validatedDeserialize<T>() requires reflected type metadata`);_(i);let a=$(e,i),o=Q(a,i);if(o.length)throw o[0];return a}function Re(e,t,n){if(!n)throw Error(`assert<T>() requires explicit reflected type metadata`);_(n);let r=Q(e,n);if(r.length)throw r[0]}function ze(e,t,n){if(!n)throw Error(`is<T>() requires explicit reflected type metadata`);return _(n),Q(e,n).length===0}function Be(e,t,n,r,i){if(!i)throw Error(`cast<T>() requires explicit reflected type metadata`);return _(i),$(e,i)}function Ve(e){if(t(e))return e;throw Error(`Unsupported receive type payload`)}function He(e,n){if(t(n))return _(n),n;if(typeof n==`function`)return J(n);if(e&&typeof e==`object`)return J(e.constructor)}function Q(t,r,i=``){let a=[],o=s(r),c=Oe(o);if(t===void 0)return m(r)||a.push(new n(`required`,`The value is required.`,i)),a;if(t===null)return h(r)||a.push(new n(`required`,`The value cannot be null.`,i)),a;if(c===e.string)typeof t!=`string`&&a.push(new n(`type`,`The value must be a string.`,i));else if(c===e.number)(typeof t!=`number`||Number.isNaN(t))&&a.push(new n(`type`,`The value must be a number.`,i));else if(c===e.boolean)typeof t!=`boolean`&&a.push(new n(`type`,`The value must be a boolean.`,i));else if(o.kind===e.undefined||o.kind===e.null||o.kind===e.never)a.push(new n(`type`,`The value does not match the required type.`,i));else if(o.kind===e.string||o.kind===e.templateLiteral)typeof t!=`string`&&a.push(new n(`type`,`The value must be a string.`,i));else if(o.kind===e.number)(typeof t!=`number`||Number.isNaN(t))&&a.push(new n(`type`,`The value must be a number.`,i));else if(o.kind===e.boolean)typeof t!=`boolean`&&a.push(new n(`type`,`The value must be a boolean.`,i));else if(o.kind===e.array)Array.isArray(t)?t.forEach((e,t)=>{a.push(...Q(e,o.type,M(i,String(t))))}):a.push(new n(`type`,`The value must be an array.`,i));else if(o.kind===e.tuple)Array.isArray(t)?o.types.forEach((e,n)=>{a.push(...Q(t[n],e.type,M(i,String(n))))}):a.push(new n(`type`,`The value must be an array.`,i));else if(o.kind===e.union){let e=o.types.map(e=>Q(t,e,i));if(!e.some(e=>e.length===0)){let t=e.filter(e=>e.length>0).sort((e,t)=>e.length-t.length)[0];t?.length?a.push(...t):a.push(new n(`type`,`The value does not match any allowed type.`,i))}}else if(o.kind===e.objectLiteral){if(!t||typeof t!=`object`||Array.isArray(t))return a.push(new n(`type`,`The value must be an object.`,i)),a;let e=t,r=new Set;for(let t of d(o)){r.add(String(t.name));let n=M(i,String(t.name));e[t.name]===void 0&&t.optional||a.push(...Q(e[t.name],t.type,n))}let s=f(o);if(s)for(let[t,n]of Object.entries(e))r.has(t)||a.push(...Q(n,s,M(i,t)))}else if(o.kind===e.literal)t!==o.literal&&a.push(new n(`type`,`The value must be ${String(o.literal)}.`,i));else if(o.kind===e.enum)o.values.includes(t)||a.push(new n(`type`,`The value does not match any allowed enum value.`,i));else if(o.kind===e.class){let e=g(o.classType);if(!e)return(!t||typeof t!=`object`||Array.isArray(t))&&a.push(new n(`type`,`The value must be an object.`,i)),a;if(e!==Date){let n=G.from(e),r=t;for(let e of n.getProperties())r[String(e.name)]===void 0&&e.isOptional()||a.push(...Q(r[String(e.name)],e.getType(),M(i,String(e.name))))}}for(let e of ge.getAnnotations(r))if(e.name===`minLength`&&typeof t==`string`){let r=A(e.args[0]);r!==void 0&&t.length<r&&a.push(new n(`minLength`,`The value must be at least ${r} characters.`,i))}else if(e.name===`maxLength`&&typeof t==`string`){let r=A(e.args[0]);r!==void 0&&t.length>r&&a.push(new n(`maxLength`,`The value must be at most ${r} characters.`,i))}else if(e.name===`minimum`&&typeof t==`number`){let r=A(e.args[0]);r!==void 0&&t<r&&a.push(new n(`minimum`,`The value must be at least ${r}.`,i))}else if(e.name===`greaterThan`&&typeof t==`number`){let r=A(e.args[0]);r!==void 0&&t<=r&&a.push(new n(`greaterThan`,`The value must be greater than ${r}.`,i))}else if(e.name===`maximum`&&typeof t==`number`){let r=A(e.args[0]);r!==void 0&&t>r&&a.push(new n(`maximum`,`The value must be at most ${r}.`,i))}else if(e.name===`lessThan`&&typeof t==`number`){let r=A(e.args[0]);r!==void 0&&t>=r&&a.push(new n(`lessThan`,`The value must be less than ${r}.`,i))}else if(e.name===`pattern`&&typeof t==`string`){let r=j(e.args[0]),o=typeof r==`string`?new RegExp(r):r instanceof RegExp?r:void 0;o&&!o.test(t)&&a.push(new n(`pattern`,`The value does not match the required pattern.`,i))}else if(e.name===`validate`){let r=j(e.args[0]);if(typeof r==`function`){let e=r(t);e instanceof n&&a.push(new n(e.code,e.message,i))}}else if(e.name===`validator`){let r=j(e.args[0]),o=typeof r==`string`?Z.get(r):void 0;if(o){let e=o(t);e instanceof n&&a.push(new n(e.code,e.message,i))}}return a}function $(t,n){if(t==null)return t;if(n.kind===e.intersection){let e=c(n);if(e&&t&&typeof t==`object`&&!Array.isArray(t)&&!(t instanceof Date))return a.apply(n,$(t,e));let r=t;if(t&&typeof t==`object`&&!Array.isArray(t)&&!(t instanceof Date)){let e={},i=!1;for(let r of n.types){let n=$(t,r);n&&typeof n==`object`&&!Array.isArray(n)&&!(n instanceof Date)&&(Object.assign(e,n),i=!0)}r=i?e:t}else for(let e of n.types)r=$(r,e);return a.apply(n,r)}let r=s(n),i=t;if(r.kind===e.number&&typeof t==`string`&&t.trim()!==``)i=Number(t);else if(r.kind===e.boolean)i=o(t);else if(r.kind===e.enum&&typeof t==`string`){let e=Number(t);!Number.isNaN(e)&&r.values.includes(e)&&(i=e)}else if(r.kind===e.array&&Array.isArray(t))i=t.map(e=>$(e,r.type));else if(r.kind===e.tuple&&Array.isArray(t))i=r.types.map((e,n)=>$(t[n],e.type));else if(r.kind===e.union)for(let e of r.types){let n=$(t,e);if(Q(n,e).length===0){i=n;break}}else if(r.kind===e.class){let e=g(r.classType);if(!e)return a.apply(n,t);if(e===Date)return a.apply(n,t instanceof Date?t:new Date(t));if(typeof t!=`object`)return a.apply(n,t);let o=new e,s=t;for(let t of G.from(e).getProperties())o[String(t.name)]=$(s[String(t.name)],t.getType());i=o}else if(r.kind===e.objectLiteral&&typeof t==`object`){let e=d(r),o=f(r);if(e.length===0&&!o)return a.apply(n,t);let s=t,c={},l=new Set;for(let t of e){let e=String(t.name);l.add(e),c[e]=$(s[e],t.type)}if(o)for(let[e,t]of Object.entries(s))l.has(e)||(c[e]=$(t,o));i=c}return a.apply(n,i)}var Ue=class{x;y};Ae(Ue,{kind:e.class,classType:Ue,name:`Coordinate`,typeName:`Coordinate`,properties:[{name:`x`,type:{kind:e.number}},{name:`y`,type:{kind:e.number}}],methods:[],constructorParameters:[],hasConstructor:!1});function We(e){if(!(e instanceof Date)||Number.isNaN(e.getTime()))return new n(`invalidDate`,`The date is invalid.`)}Z.register(`validDate`,We);function Ge(e,...t){for(let n of t){let t=N.getType(e,n);if(t)return t}}a.addDecorator(e=>Ge(e,`tsf:trim`)!==void 0,(e,t)=>{t.addTransform(e=>typeof e==`string`?e.trim():e)});var Ke=/^[a-z0-9_+.-]+@[a-z0-9-.]+\.[a-z]+$/i;function qe(e){return typeof e==`function`?e.name||`anonymous class`:e&&typeof e==`object`?e.constructor?.name||`anonymous class`:String(e)}exports.Coordinate=Ue,exports.DeserializerRegistry=r,exports.DeserializerState=i,exports.EMAIL_REGEX=Ke,exports.ReflectionClass=G,exports.ReflectionKind=e,exports.ReflectionMethod=q,exports.ReflectionParameter=je,exports.ReflectionProperty=K,exports.ValidationError=n,exports.ValidatorError=n,exports.allowsNull=h,exports.allowsUndefined=m,exports.applyMetadataOptions=W,exports.assert=Re,exports.cast=Be,exports.classMetadata=H,exports.classOptions=U,exports.cloneUtilityProperty=T,exports.coerceBooleanValue=o,exports.databaseAnnotation=P,exports.deserialize=Ie,exports.deserializer=a,exports.expandUtilityTypeMetadata=ce,exports.findNested=fe,exports.findNestedSurface=k,exports.flattenRuntimeUnionTypes=y,exports.getClassName=qe,exports.getFirstTypeAnnotation=Ge,exports.getUtilityTypeName=de,exports.hasNestedType=pe,exports.is=ze,exports.isClass=v,exports.isDatabaseUUIDType=he,exports.isExtractAssignable=b,exports.isMarkerType=p,exports.isReflectedType=t,exports.isUUIDType=me,exports.isUtilityTypeName=E,exports.joinPath=M,exports.knownPrimitiveKind=Oe,exports.literalMatchesType=S,exports.literalNumber=A,exports.mergeStructuredProperties=u,exports.mergeUtilityProperties=w,exports.mergedIntersectionObjectLiteral=c,exports.normalizeTypeMetadata=_,exports.objectLiteralIndexType=f,exports.objectLiteralPropertiesFromType=d,exports.readClassMetadata=J,exports.recordLiteralKeysFromType=ue,exports.recordPropertiesFromKeyType=le,exports.registerClassMetadata=Ae,exports.resolveClassType=re,exports.resolveReceiveType=Ve,exports.resolveRuntimeValue=j,exports.tryResolveClassType=g,exports.typeAnnotation=N,exports.typeOf=ke,exports.typesOverlap=x,exports.unwrapValueType=s,exports.utilitySourcePropertiesFromType=C,exports.validate=Fe,exports.validatedDeserialize=Le,exports.validationAnnotation=ge,exports.validationRegistry=Z,exports.visitType=D,exports.visitTypeSurface=O;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=function(e){return e[e.never=0]=`never`,e[e.any=1]=`any`,e[e.unknown=2]=`unknown`,e[e.void=3]=`void`,e[e.undefined=4]=`undefined`,e[e.null=5]=`null`,e[e.string=6]=`string`,e[e.number=7]=`number`,e[e.boolean=8]=`boolean`,e[e.bigint=9]=`bigint`,e[e.literal=10]=`literal`,e[e.enum=11]=`enum`,e[e.union=12]=`union`,e[e.intersection=13]=`intersection`,e[e.array=14]=`array`,e[e.tuple=15]=`tuple`,e[e.class=16]=`class`,e[e.object=17]=`object`,e[e.objectLiteral=18]=`objectLiteral`,e[e.property=19]=`property`,e[e.propertySignature=20]=`propertySignature`,e[e.method=21]=`method`,e[e.promise=22]=`promise`,e[e.templateLiteral=23]=`templateLiteral`,e}({});function t(e){return!!e&&typeof e==`object`&&typeof e.kind==`number`}var n=class extends Error{code;path;errors;constructor(e,t,n=``){super(t),this.code=e,this.path=n,this.errors=[this]}};Object.defineProperty(n,"name",{configurable:!0,value:`ValidatorError`});var r=class{decorators=[];addDecorator(e,t){this.decorators.push({predicate:e,handler:t})}apply(e,t){let n=t;for(let t of this.decorators){if(!t.predicate(e))continue;let r=new i;t.handler(e,r),n=r.apply(n)}return n}},i=class{transforms=[];addTransform(e){this.transforms.push(e)}apply(e){return this.transforms.reduce((e,t)=>t(e),e)}},a=new r;function o(e){if(typeof e==`boolean`)return e;if(typeof e==`number`)return e!==0;if(typeof e==`bigint`)return e!==0n;if(typeof e==`string`){if(e===`true`||e===`1`)return!0;if(e===`false`||e===`0`)return!1}return e}function s(t){if(t.kind===e.union){let n=t.types.filter(t=>t.kind!==e.undefined&&t.kind!==e.null);return n.length===1?s(n[0]):t}if(t.kind===e.intersection){let e=c(t);if(e)return e;let n=t.types.find(e=>!p(e));return n?s(n):t}return t}function c(t){if(t.kind!==e.intersection||!l(t))return;let n=u(t);if(n.length!==0)return{kind:e.objectLiteral,typeName:t.typeName,types:n}}function l(t){return t.kind===e.intersection&&t.types.every(t=>p(t)?!0:t.kind===e.intersection?l(t):t.kind===e.objectLiteral)}function u(t){let n=[],r=new Map,i=t=>{let i=String(t.name);r.has(i)||n.push(i),r.set(i,{kind:e.propertySignature,name:t.name,type:t.type,optional:t.optional})},a=t=>{if(!p(t)){if(t.kind===e.intersection)for(let e of t.types)a(e);else if(t.kind===e.objectLiteral)for(let e of d(t))i(e)}};return a(t),n.map(e=>r.get(e))}function d(t,n=new Set){if(n.has(t)||p(t))return[];n.add(t);let r=[];for(let i of t.implements??[]){let t=s(i);n.has(t)||(t.kind===e.objectLiteral?r.push(...d(t,n)):t.kind===e.intersection?r.push(...u(t)):t.kind===e.class&&r.push(...C(t)))}return w([...r,...t.types.map(T)])}function f(t,n=new Set){if(t.index)return t.index;if(!n.has(t)){n.add(t);for(let r of t.implements??[]){let t=s(r);if(t.kind===e.objectLiteral){let e=f(t,n);if(e)return e}}}}function p(e){return!!(e.annotations||e.validation||e.database||ee(e)||ne(e))}function ee(t){return te(t.typeName)?t.kind===e.unknown||t.kind===e.class&&!g(t.classType):!1}function te(e){switch(e){case`ApiName`:case`AutoIncrement`:case`DatabaseField`:case`GreaterThan`:case`HasDefault`:case`Index`:case`Length`:case`LessThan`:case`Maximum`:case`MaxLength`:case`Minimum`:case`MinLength`:case`MySQL`:case`OnUpdate`:case`Pattern`:case`PrimaryKey`:case`Reference`:case`TypeAnnotation`:case`Unique`:return!0;default:return!1}}function ne(t){return t.kind===e.objectLiteral&&t.types.length>0&&t.types.every(t=>t.kind===e.propertySignature&&String(t.name)===`typia.tag`)}function m(t){return t.kind===e.any||t.kind===e.undefined||t.kind===e.union&&t.types.some(m)}function h(t){return t.kind===e.any||t.kind===e.null||t.kind===e.union&&t.types.some(h)}function re(e){let t=g(e);if(!t)throw Error(`Target is not a constructor`);return t}function g(e){if(v(e))return e;try{let t=e();return v(t)?t:void 0}catch{return}}function _(t,n=new Set){if(!t||typeof t!=`object`||n.has(t))return;n.add(t);let r=t;if(r.kind===e.class&&typeof r.classType==`function`&&!v(r.classType))try{let e=r.classType();v(e)&&(r.classType=e)}catch{}for(let e of Object.values(r))if(typeof e!=`function`){if(Array.isArray(e))for(let t of e)_(t,n);else _(e,n)}ie(r),ce(r)}function ie(n){if(n.kind!==e.intersection||!Array.isArray(n.types))return;let r=n.types.filter(t);if(r.length!==n.types.length)return;let i=r.filter(t=>t.kind===e.union);if(i.length===0||i.length===1&&r.every(e=>e===i[0]||p(e)))return;let a=[[]];for(let e of r){let t=ae(e);a=a.flatMap(e=>t.map(t=>[...e,...t]))}n.kind=e.union,n.types=a.map(se)}function ae(t){if(t.kind!==e.union)return[[t]];let n=oe(t);return t.types.flatMap(e=>ae(e).map(e=>n?[...e,n]:e))}function oe(t){if(t.annotations||t.validation||t.database)return{kind:e.unknown,annotations:t.annotations,validation:t.validation,database:t.database}}function se(t){return t.some(t=>t.kind===e.never)?{kind:e.never}:t.length===1?t[0]:{kind:e.intersection,types:t}}function v(e){return!!(typeof e==`function`&&e.prototype&&e.prototype.constructor===e)}function ce(n){let r=de(n);if(!r)return;let i=Array.isArray(n.typeArguments)?n.typeArguments:[];if(r===`Record`){if(n.kind!==e.objectLiteral||(n.types??[]).length>0)return;let r=i[0],a=i[1];if(!t(r)||!t(a))return;let o=le(r,a);o.length>0?(n.types=o,delete n.index):n.index=a;return}if((n.types??[]).length>0)return;let a=i[0];if(!t(a))return;if(r===`Extract`){let r=i[1];if(n.kind!==e.union||!t(r))return;n.types=y(a).filter(e=>b(e,r));return}if(n.kind!==e.objectLiteral)return;let o=C(a),s=a.kind===e.objectLiteral?f(a):void 0;if(o.length===0){s&&(n.index=s);return}let c=new Set((Array.isArray(n.utilityKeys)?n.utilityKeys:[]).filter(e=>typeof e==`string`)),l=o.map(T);r===`Pick`?l=l.filter(e=>c.has(String(e.name))):r===`Omit`?l=l.filter(e=>!c.has(String(e.name))):r===`Partial`?l=l.map(e=>({...e,optional:!0})):r===`Required`?l=l.map(e=>({...e,optional:void 0})):r===`OptionalNulls`&&(l=l.map(e=>h(e.type)?{...e,optional:!0}:e)),n.types=l,s&&(n.index=s)}function le(t,n){return ue(t).map(t=>({kind:e.propertySignature,name:t,type:n,optional:void 0}))}function ue(t){let n=[];for(let r of y(t)){if(r.kind!==e.literal||typeof r.literal!=`string`&&typeof r.literal!=`number`)return[];n.push(r.literal)}return n}function y(t){return t.kind===e.union?t.types.flatMap(y):[t]}function b(t,n){let r=s(t),i=s(n);if(i.kind===e.union)return i.types.some(e=>b(r,e));if(r.kind===e.union)return r.types.every(e=>b(e,i));if(i.kind===e.objectLiteral){let t=d(i).filter(e=>!e.optional&&!m(e.type));if(t.length===0)return r.kind===e.objectLiteral||r.kind===e.class;let n=C(r);return n.length!==0&&t.every(e=>{let t=n.find(t=>String(t.name)===String(e.name));return t?x(t.type,e.type):!1})}return x(r,i)}function x(t,n){let r=s(t),i=s(n);return r.kind===e.any||r.kind===e.unknown||i.kind===e.any||i.kind===e.unknown?!0:r.kind===e.union?r.types.some(e=>x(e,i)):i.kind===e.union?i.types.some(e=>x(r,e)):r.kind===e.literal&&i.kind===e.literal?r.literal===i.literal:r.kind===e.literal?S(r.literal,i):i.kind===e.literal?S(i.literal,r):r.kind===i.kind}function S(t,n){return t===null?n.kind===e.null:t===void 0?n.kind===e.undefined:typeof t==`string`?n.kind===e.string||n.kind===e.templateLiteral:typeof t==`number`?n.kind===e.number:typeof t==`boolean`?n.kind===e.boolean:typeof t==`bigint`&&n.kind===e.bigint}function C(t){if(t.kind===e.class){let n=g(t.classType);if(!n)return[];try{return G.from(n).getProperties().map(t=>({kind:e.propertySignature,name:t.name,type:t.getType(),optional:t.isOptional()?!0:void 0,description:t.getDescription()||void 0}))}catch(e){if(e instanceof Error&&e.message.startsWith(`No runtime type metadata for `))return[];throw e}}return t.kind===e.objectLiteral?d(t):t.kind===e.intersection?w(t.types.flatMap(C)):[]}function w(e){let t=[],n=new Map;for(let r of e){let e=String(r.name);n.has(e)||t.push(e),n.set(e,T(r))}return t.map(e=>n.get(e))}function T(t){return{kind:e.propertySignature,name:t.name,type:t.type,optional:t.optional?!0:void 0,description:t.description}}function E(e){return e===`Pick`||e===`Omit`||e===`Partial`||e===`Required`||e===`Extract`||e===`Record`||e===`OptionalNulls`}function de(e){if(E(e.utilityType))return e.utilityType;if(E(e.typeName))return e.typeName}function D(t,n){if(n(t),(t.kind===e.union||t.kind===e.intersection)&&`types`in t)for(let e of t.types)D(e,n);else if((t.kind===e.array||t.kind===e.promise)&&`type`in t)D(t.type,n);else if(t.kind===e.objectLiteral&&`types`in t){for(let e of t.types)D(e.type,n);t.index&&D(t.index,n)}}function O(t,n){if(n(t),(t.kind===e.union||t.kind===e.intersection)&&`types`in t)for(let e of t.types)O(e,n)}function fe(e,t){let n;return D(e,r=>{n===void 0&&r!==e&&(n=t(r))}),n}function k(e,t){let n;return O(e,r=>{n===void 0&&r!==e&&(n=t(r))}),n}function pe(e,t){let n=!1;return D(e,e=>{n||=t(e)}),n}function A(t){return t?.kind===e.literal&&typeof t.literal==`number`?t.literal:void 0}function j(t){if(!t)return;let n=t.runtime;if(n!==void 0)return typeof n==`function`?n():n;if(t.kind===e.literal)return t.literal}function M(e,t){return e?`${e}.${t}`:t}function me(t){let n=N.getType(t,`tsf:type`);return n?.kind===e.literal&&(n.literal===`uuid`||n.literal===`uuidString`)}function he(t){let n=N.getType(t,`tsf:type`);return n?.kind===e.literal&&n.literal===`uuid`}var N={getType(e,t){return e.annotations?.[t]||(k(e,e=>e.annotations?.[t])??ve(e,t))},getOption(e,t){return this.getType(e,t)}},ge={getAnnotations(e){let t=[],n=new Set;return O(e,e=>{if(e.validation)for(let r of e.validation){let e=Ee(r);n.has(e)||(n.add(e),t.push(r))}let r=be(e);if(r){let e=Ee(r);n.has(e)||(n.add(e),t.push(r))}}),t}},P={getDatabase(t,n){let r=t.database?.[n]??(n===`*`?void 0:t.database?.[`*`]);if(r)return r;if(t.kind===e.union){let r=t.types.filter(t=>t.kind!==e.null&&t.kind!==e.undefined);return r.length===1?this.getDatabase(r[0],n):void 0}let i=k(t,e=>e.database?.[n]??(n===`*`?void 0:e.database?.[`*`]));if(i)return i;let a=xe(t,n);if(a)return a}},F={kind:e.undefined};function _e(t){return{kind:e.literal,literal:t}}function I(e,...t){return{name:e,args:t}}function ve(e,t){return we(e,e=>ye(e,t))}function ye(e,t){let n=L(e);if(n&&n.kind===t&&(n.kind.startsWith(`tsf:`)||n.kind.startsWith(`openapi:`)))return n.value??F}function be(e){let t=L(e);if(t)switch(t.kind){case`minLength`:case`maxLength`:case`minimum`:case`greaterThan`:case`maximum`:case`lessThan`:return t.value?I(t.kind,t.value):void 0;case`pattern`:return I(`pattern`,t.value??R(t.schema,`pattern`)??F);case`format`:{let e=B(t.value)??B(R(t.schema,`format`)),n=e?Te(e):void 0;return n?I(`pattern`,_e(n)):void 0}case`tsf:validator`:return I(`validator`,t.value??F);default:return}}function xe(e,t){return we(e,e=>Se(e,t))}function Se(e,t){let n=L(e);if(!n)return;let r=V(n.schema)??V(n.value);if(r&&(n.kind===`database:field`||n.kind===`database:mysql`&&t===`mysql`))return r}function L(t){if(t.kind!==e.objectLiteral)return;let n=t.types.find(e=>String(e.name)===`typia.tag`);if(!n)return;let r=z(n.type);if(r.kind!==e.objectLiteral)return;let i=B(R(r,`kind`));if(i)return{kind:i,value:R(r,`value`),schema:R(r,`schema`)}}function R(t,n){let r=t?z(t):void 0;if(r&&r.kind===e.objectLiteral)return r.types.find(e=>String(e.name)===n)?.type}function z(t){if(t.kind!==e.union)return t;let n=t.types.filter(t=>t.kind!==e.undefined&&t.kind!==e.null);return n.length===1?n[0]:t}function B(t){return t?.kind===e.literal&&typeof t.literal==`string`?t.literal:void 0}function V(t){let n=t?z(t):void 0;if(!n||n.kind!==e.objectLiteral)return;let r={};for(let e of n.types){let t=Ce(e.type);t!==void 0&&(r[String(e.name)]=t)}return r}function Ce(t){let n=z(t);if(n.kind===e.literal)return n.literal;if(n.kind!==e.undefined&&n.kind===e.objectLiteral)return V(n)}function we(e,t){let n;return O(e,e=>{n===void 0&&(n=t(e))}),n}function Te(e){switch(e){case`date`:return`^\\d{4}-\\d{2}-\\d{2}$`;case`email`:return`^[a-zA-Z0-9_+.-]+@[a-zA-Z0-9-.]+\\.[a-zA-Z]+$`;case`uuid`:return`^(?:urn:uuid:)?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$`;default:return}}function Ee(e){return`${e.name}:${e.args.map(De).join(`|`)}`}function De(t){if(t.kind===e.literal&&`literal`in t)return`literal:${String(t.literal)}`;let n=t.runtime;return n?`runtime:${String(n)}`:`${t.kind}:${t.typeName??``}`}function Oe(t){let n=N.getType(t,`tsf:type`);if(n?.kind===e.literal){if(n.literal===`integer`)return e.number;if(typeof n.literal==`string`)return e.string}}var H=new WeakMap,U=new WeakMap;function W(e,t){t&&(t.collectionName&&(e.collectionName=t.collectionName),t.indexes?.length&&(e.indexes=[...t.indexes]),t.excludeMigration&&(e.excludeMigration=!0))}function ke(e){if(!e)throw Error(`typeOf<T>() was not transformed by the metadata compiler`);return _(e),e}function Ae(e,t){t.classType=e,W(t,U.get(e)),H.set(e,t)}var G=class t{classType;name;indexes;metadata;constructor(e,t){this.classType=e,this.metadata=t,this.name=t.name||e.name;let n=t.properties.flatMap(e=>{let t=[];return e.index&&t.push({names:[e.name],options:e.index}),e.unique&&t.push({names:[e.name],options:{...e.unique,unique:!0}}),t});this.indexes=[...t.indexes??[],...n]}static from(e){let n=J(e);if(!n)throw Error(`No runtime type metadata for ${e.name}. Did the tsf metadata compiler run?`);return new t(e,n)}getClassType(){return this.classType}getCollectionName(){return this.metadata.collectionName??U.get(this.classType)?.collectionName}isDatabaseMigrationSkipped(e){return this.metadata.excludeMigration===!0||U.get(this.classType)?.excludeMigration===!0}getProperties(){return Y(this.classType,this.metadata).map(e=>new K(e))}getProperty(e){let t=Y(this.classType,this.metadata).find(t=>t.name===e);if(!t)throw Error(`Property ${String(e)} does not exist on ${this.name}`);return new K(t)}getPrimary(){let e=Y(this.classType,this.metadata).find(e=>e.primaryKey);if(!e)throw Error(`Class ${this.name} has no primary key`);return new K(e)}getMethod(e){let t=Me(this.classType,this.metadata).find(t=>t.name===e||String(t.name)===String(e));if(!t)throw Error(`Method ${String(e)} does not exist on ${this.name}`);return new q(t)}getConstructorOrUndefined(){let t=Ne(this.classType,this.metadata);if(t.length)return new q({name:`constructor`,parameters:t,returnType:{kind:e.void}})}},K=class{metadata;type;name;constructor(e){this.metadata=e,this.type=e.type,this.name=e.name}getNameAsString(){return String(this.name)}getType(){return this.type}getDescription(){return this.metadata.description??``}isPublic(){return!0}isPrimaryKey(){return this.metadata.primaryKey===!0}isAutoIncrement(){return this.metadata.autoIncrement===!0}isOptional(){return this.metadata.optional===!0||m(this.type)}isNullable(){return h(this.type)}getDatabase(e=`*`){return P.getDatabase(this.type,e)||P.getDatabase(this.type,`*`)}isBackReference(){return!1}isDatabaseSkipped(e){return!1}isDatabaseMigrationSkipped(e){return!1}isReference(){return this.metadata.reference!==void 0}getReference(){return this.metadata.reference}getResolvedReflectionClass(){let t=s(this.type);if(t.kind!==e.class)throw Error(`Property ${String(this.name)} is not a class reference`);return G.from(re(t.classType))}},q=class{metadata;constructor(e){this.metadata=e}getDescription(){return this.metadata.description??``}getParameters(){return this.metadata.parameters.map(e=>new je(e))}getReturnType(){return this.metadata.returnType}},je=class{metadata;constructor(e){this.metadata=e}getName(){return this.metadata.name}getType(){return this.metadata.type}isOptional(){return this.metadata.optional===!0||m(this.metadata.type)}hasDefault(){return this.metadata.default===!0}};function J(t){let n=H.get(t);if(n)return _(n),n;let r=Object.prototype.hasOwnProperty.call(t,`__tsfType`)?t.__tsfType:void 0;if(!r){if(!X(t))return;let n={kind:e.class,classType:t,name:t.name,typeName:t.name,properties:[],methods:[],constructorParameters:[],hasConstructor:!0};return W(n,U.get(t)),H.set(t,n),n}return W(r,U.get(t)),_(r),H.set(t,r),r}function Y(e,t){let n=X(e),r=n?Y(n.classType,n.metadata):[],i=new Set(t.properties.map(e=>e.name));return[...r.filter(e=>!i.has(e.name)),...t.properties]}function Me(e,t){let n=X(e),r=n?Me(n.classType,n.metadata):[],i=new Set(t.methods.map(e=>e.name));return[...r.filter(e=>!i.has(e.name)),...t.methods]}function Ne(e,t){if(t.constructorParameters.length||t.hasConstructor)return t.constructorParameters;let n=X(e);return n?Ne(n.classType,n.metadata):[]}function X(e){let t=(e.prototype?Object.getPrototypeOf(e.prototype):void 0)?.constructor;if(!t||t===Object||t===e)return;let n=J(t);return n?{classType:t,metadata:n}:void 0}var Pe=new Map,Z={register(e,t){Pe.set(e,t)},get(e){return Pe.get(e)}};function Fe(e,t){let n=He(e,t);return n?Q(e,n):[]}function Ie(e,t){if(!t)throw Error(`deserialize<T>() was not transformed by the metadata compiler`);return _(t),$(e,t)}function Le(e,t,n,r,i){if(!i)throw Error(`validatedDeserialize<T>() requires reflected type metadata`);_(i);let a=$(e,i),o=Q(a,i);if(o.length)throw o[0];return a}function Re(e,t,n){if(!n)throw Error(`assert<T>() requires explicit reflected type metadata`);_(n);let r=Q(e,n);if(r.length)throw r[0]}function ze(e,t,n){if(!n)throw Error(`is<T>() requires explicit reflected type metadata`);return _(n),Q(e,n).length===0}function Be(e,t,n,r,i){if(!i)throw Error(`cast<T>() requires explicit reflected type metadata`);return _(i),$(e,i)}function Ve(e){if(t(e))return e;throw Error(`Unsupported receive type payload`)}function He(e,n){if(t(n))return _(n),n;if(typeof n==`function`)return J(n);if(e&&typeof e==`object`)return J(e.constructor)}function Q(t,r,i=``){let a=[],o=s(r),c=Oe(o);if(t===void 0)return m(r)||a.push(new n(`required`,`The value is required.`,i)),a;if(t===null)return h(r)||a.push(new n(`required`,`The value cannot be null.`,i)),a;if(c===e.string)typeof t!=`string`&&a.push(new n(`type`,`The value must be a string.`,i));else if(c===e.number)(typeof t!=`number`||Number.isNaN(t))&&a.push(new n(`type`,`The value must be a number.`,i));else if(c===e.boolean)typeof t!=`boolean`&&a.push(new n(`type`,`The value must be a boolean.`,i));else if(o.kind===e.undefined||o.kind===e.null||o.kind===e.never)a.push(new n(`type`,`The value does not match the required type.`,i));else if(o.kind===e.string||o.kind===e.templateLiteral)typeof t!=`string`&&a.push(new n(`type`,`The value must be a string.`,i));else if(o.kind===e.number)(typeof t!=`number`||Number.isNaN(t))&&a.push(new n(`type`,`The value must be a number.`,i));else if(o.kind===e.boolean)typeof t!=`boolean`&&a.push(new n(`type`,`The value must be a boolean.`,i));else if(o.kind===e.array)Array.isArray(t)?t.forEach((e,t)=>{a.push(...Q(e,o.type,M(i,String(t))))}):a.push(new n(`type`,`The value must be an array.`,i));else if(o.kind===e.tuple)Array.isArray(t)?o.types.forEach((e,n)=>{a.push(...Q(t[n],e.type,M(i,String(n))))}):a.push(new n(`type`,`The value must be an array.`,i));else if(o.kind===e.union){let e=o.types.map(e=>Q(t,e,i));if(!e.some(e=>e.length===0)){let t=e.filter(e=>e.length>0).sort((e,t)=>e.length-t.length)[0];t?.length?a.push(...t):a.push(new n(`type`,`The value does not match any allowed type.`,i))}}else if(o.kind===e.objectLiteral){if(!t||typeof t!=`object`||Array.isArray(t))return a.push(new n(`type`,`The value must be an object.`,i)),a;let e=t,r=new Set;for(let t of d(o)){r.add(String(t.name));let n=M(i,String(t.name));e[t.name]===void 0&&t.optional||a.push(...Q(e[t.name],t.type,n))}let s=f(o);if(s)for(let[t,n]of Object.entries(e))r.has(t)||a.push(...Q(n,s,M(i,t)))}else if(o.kind===e.literal)t!==o.literal&&a.push(new n(`type`,`The value must be ${String(o.literal)}.`,i));else if(o.kind===e.enum)o.values.includes(t)||a.push(new n(`type`,`The value does not match any allowed enum value.`,i));else if(o.kind===e.class){let e=g(o.classType);if(!e)return(!t||typeof t!=`object`||Array.isArray(t))&&a.push(new n(`type`,`The value must be an object.`,i)),a;if(e!==Date){let n=G.from(e),r=t;for(let e of n.getProperties())r[String(e.name)]===void 0&&e.isOptional()||a.push(...Q(r[String(e.name)],e.getType(),M(i,String(e.name))))}}for(let e of ge.getAnnotations(r))if(e.name===`minLength`&&typeof t==`string`){let r=A(e.args[0]);r!==void 0&&t.length<r&&a.push(new n(`minLength`,`The value must be at least ${r} characters.`,i))}else if(e.name===`maxLength`&&typeof t==`string`){let r=A(e.args[0]);r!==void 0&&t.length>r&&a.push(new n(`maxLength`,`The value must be at most ${r} characters.`,i))}else if(e.name===`minimum`&&typeof t==`number`){let r=A(e.args[0]);r!==void 0&&t<r&&a.push(new n(`minimum`,`The value must be at least ${r}.`,i))}else if(e.name===`greaterThan`&&typeof t==`number`){let r=A(e.args[0]);r!==void 0&&t<=r&&a.push(new n(`greaterThan`,`The value must be greater than ${r}.`,i))}else if(e.name===`maximum`&&typeof t==`number`){let r=A(e.args[0]);r!==void 0&&t>r&&a.push(new n(`maximum`,`The value must be at most ${r}.`,i))}else if(e.name===`lessThan`&&typeof t==`number`){let r=A(e.args[0]);r!==void 0&&t>=r&&a.push(new n(`lessThan`,`The value must be less than ${r}.`,i))}else if(e.name===`pattern`&&typeof t==`string`){let r=j(e.args[0]),o=typeof r==`string`?new RegExp(r):r instanceof RegExp?r:void 0;o&&!o.test(t)&&a.push(new n(`pattern`,`The value does not match the required pattern.`,i))}else if(e.name===`validate`){let r=j(e.args[0]);if(typeof r==`function`){let e=r(t);e instanceof n&&a.push(new n(e.code,e.message,i))}}else if(e.name===`validator`){let r=j(e.args[0]),o=typeof r==`string`?Z.get(r):void 0;if(o){let e=o(t);e instanceof n&&a.push(new n(e.code,e.message,i))}}return a}function $(t,n){if(t==null)return t;if(n.kind===e.intersection){let e=c(n);if(e&&t&&typeof t==`object`&&!Array.isArray(t)&&!(t instanceof Date))return a.apply(n,$(t,e));let r=t;if(t&&typeof t==`object`&&!Array.isArray(t)&&!(t instanceof Date)){let e={},i=!1;for(let r of n.types){let n=$(t,r);n&&typeof n==`object`&&!Array.isArray(n)&&!(n instanceof Date)&&(Object.assign(e,n),i=!0)}r=i?e:t}else for(let e of n.types)r=$(r,e);return a.apply(n,r)}let r=s(n),i=t;if(r.kind===e.number&&typeof t==`string`&&t.trim()!==``)i=Number(t);else if(r.kind===e.boolean)i=o(t);else if(r.kind===e.enum&&typeof t==`string`){let e=Number(t);!Number.isNaN(e)&&r.values.includes(e)&&(i=e)}else if(r.kind===e.array&&Array.isArray(t))i=t.map(e=>$(e,r.type));else if(r.kind===e.tuple&&Array.isArray(t))i=r.types.map((e,n)=>$(t[n],e.type));else if(r.kind===e.union)for(let e of r.types){let n=$(t,e);if(Q(n,e).length===0){i=n;break}}else if(r.kind===e.class){let e=g(r.classType);if(!e)return a.apply(n,t);if(e===Date)return a.apply(n,t instanceof Date?t:new Date(t));if(typeof t!=`object`)return a.apply(n,t);let o=new e,s=t;for(let t of G.from(e).getProperties())o[String(t.name)]=$(s[String(t.name)],t.getType());i=o}else if(r.kind===e.objectLiteral&&typeof t==`object`){let e=d(r),o=f(r);if(e.length===0&&!o)return a.apply(n,t);let s=t,c={},l=new Set;for(let t of e){let e=String(t.name);l.add(e),c[e]=$(s[e],t.type)}if(o)for(let[e,t]of Object.entries(s))l.has(e)||(c[e]=$(t,o));i=c}return a.apply(n,i)}var Ue=class{x;y};Ae(Ue,{kind:e.class,classType:Ue,name:`Coordinate`,typeName:`Coordinate`,properties:[{name:`x`,type:{kind:e.number}},{name:`y`,type:{kind:e.number}}],methods:[],constructorParameters:[],hasConstructor:!1});function We(e){if(!(e instanceof Date)||Number.isNaN(e.getTime()))return new n(`invalidDate`,`The date is invalid.`)}Z.register(`validDate`,We);function Ge(e,...t){for(let n of t){let t=N.getType(e,n);if(t)return t}}a.addDecorator(e=>Ge(e,`tsf:trim`)!==void 0,(e,t)=>{t.addTransform(e=>typeof e==`string`?e.trim():e)});var Ke=/^[a-z0-9_+.-]+@[a-z0-9-.]+\.[a-z]+$/i;function qe(e){return typeof e==`function`?e.name||`anonymous class`:e&&typeof e==`object`?e.constructor?.name||`anonymous class`:String(e)}exports.Coordinate=Ue,exports.DeserializerRegistry=r,exports.DeserializerState=i,exports.EMAIL_REGEX=Ke,exports.ReflectionClass=G,exports.ReflectionKind=e,exports.ReflectionMethod=q,exports.ReflectionParameter=je,exports.ReflectionProperty=K,exports.ValidationError=n,exports.ValidatorError=n,exports.allowsNull=h,exports.allowsUndefined=m,exports.applyMetadataOptions=W,exports.assert=Re,exports.cast=Be,exports.classMetadata=H,exports.classOptions=U,exports.cloneUtilityProperty=T,exports.coerceBooleanValue=o,exports.databaseAnnotation=P,exports.deserialize=Ie,exports.deserializer=a,exports.expandUtilityTypeMetadata=ce,exports.findNested=fe,exports.findNestedSurface=k,exports.flattenRuntimeUnionTypes=y,exports.getClassName=qe,exports.getFirstTypeAnnotation=Ge,exports.getUtilityTypeName=de,exports.hasNestedType=pe,exports.is=ze,exports.isClass=v,exports.isDatabaseUUIDType=he,exports.isExtractAssignable=b,exports.isMarkerType=p,exports.isReflectedType=t,exports.isUUIDType=me,exports.isUtilityTypeName=E,exports.joinPath=M,exports.knownPrimitiveKind=Oe,exports.literalMatchesType=S,exports.literalNumber=A,exports.mergeStructuredProperties=u,exports.mergeUtilityProperties=w,exports.mergedIntersectionObjectLiteral=c,exports.normalizeTypeMetadata=_,exports.objectLiteralIndexType=f,exports.objectLiteralPropertiesFromType=d,exports.readClassMetadata=J,exports.recordLiteralKeysFromType=ue,exports.recordPropertiesFromKeyType=le,exports.registerClassMetadata=Ae,exports.resolveClassType=re,exports.resolveReceiveType=Ve,exports.resolveRuntimeValue=j,exports.tryResolveClassType=g,exports.typeAnnotation=N,exports.typeOf=ke,exports.typesOverlap=x,exports.unwrapValueType=s,exports.utilitySourcePropertiesFromType=C,exports.validate=Fe,exports.validatedDeserialize=Le,exports.validationAnnotation=ge,exports.validationRegistry=Z,exports.visitType=D,exports.visitTypeSurface=O;
package/dist/index.js CHANGED
@@ -1,12 +1,11 @@
1
- //#region src/reflection/model.ts
1
+ // src/reflection/model.ts
2
2
  var e = /* @__PURE__ */ function(e) {
3
3
  return e[e.never = 0] = "never", e[e.any = 1] = "any", e[e.unknown = 2] = "unknown", e[e.void = 3] = "void", e[e.undefined = 4] = "undefined", e[e.null = 5] = "null", e[e.string = 6] = "string", e[e.number = 7] = "number", e[e.boolean = 8] = "boolean", e[e.bigint = 9] = "bigint", e[e.literal = 10] = "literal", e[e.enum = 11] = "enum", e[e.union = 12] = "union", e[e.intersection = 13] = "intersection", e[e.array = 14] = "array", e[e.tuple = 15] = "tuple", e[e.class = 16] = "class", e[e.object = 17] = "object", e[e.objectLiteral = 18] = "objectLiteral", e[e.property = 19] = "property", e[e.propertySignature = 20] = "propertySignature", e[e.method = 21] = "method", e[e.promise = 22] = "promise", e[e.templateLiteral = 23] = "templateLiteral", e;
4
4
  }({});
5
5
  function t(e) {
6
6
  return !!e && typeof e == "object" && typeof e.kind == "number";
7
7
  }
8
- //#endregion
9
- //#region src/reflection/errors.ts
8
+ // src/reflection/errors.ts
10
9
  var n = class extends Error {
11
10
  code;
12
11
  path;
@@ -19,8 +18,7 @@ Object.defineProperty(n, "name", {
19
18
  configurable: !0,
20
19
  value: "ValidatorError"
21
20
  });
22
- //#endregion
23
- //#region src/reflection/deserializer.ts
21
+ // src/reflection/deserializer.ts
24
22
  var r = class {
25
23
  decorators = [];
26
24
  addDecorator(e, t) {
@@ -47,8 +45,7 @@ var r = class {
47
45
  return this.transforms.reduce((e, t) => t(e), e);
48
46
  }
49
47
  }, a = new r();
50
- //#endregion
51
- //#region src/reflection/primitive-conversion.ts
48
+ // src/reflection/primitive-conversion.ts
52
49
  function o(e) {
53
50
  if (typeof e == "boolean") return e;
54
51
  if (typeof e == "number") return e !== 0;
@@ -59,8 +56,7 @@ function o(e) {
59
56
  }
60
57
  return e;
61
58
  }
62
- //#endregion
63
- //#region src/reflection/type-utils.ts
59
+ // src/reflection/type-utils.ts
64
60
  function s(t) {
65
61
  if (t.kind === e.union) {
66
62
  let n = t.types.filter((t) => t.kind !== e.undefined && t.kind !== e.null);
@@ -97,14 +93,8 @@ function u(t) {
97
93
  });
98
94
  }, a = (t) => {
99
95
  if (!p(t)) {
100
- if (t.kind === e.intersection) {
101
- for (let e of t.types) a(e);
102
- return;
103
- }
104
- if (t.kind === e.objectLiteral) {
105
- for (let e of d(t)) i(e);
106
- return;
107
- }
96
+ if (t.kind === e.intersection) for (let e of t.types) a(e);
97
+ else if (t.kind === e.objectLiteral) for (let e of d(t)) i(e);
108
98
  }
109
99
  };
110
100
  return a(t), n.map((e) => r.get(e));
@@ -398,8 +388,7 @@ function j(t) {
398
388
  function M(e, t) {
399
389
  return e ? `${e}.${t}` : t;
400
390
  }
401
- //#endregion
402
- //#region src/reflection/annotations.ts
391
+ // src/reflection/annotations.ts
403
392
  function me(t) {
404
393
  let n = N.getType(t, "tsf:type");
405
394
  return n?.kind === e.literal && (n.literal === "uuid" || n.literal === "uuidString");
@@ -555,14 +544,12 @@ function Oe(t) {
555
544
  if (typeof n.literal == "string") return e.string;
556
545
  }
557
546
  }
558
- //#endregion
559
- //#region src/reflection/metadata-store.ts
547
+ // src/reflection/metadata-store.ts
560
548
  var H = /* @__PURE__ */ new WeakMap(), U = /* @__PURE__ */ new WeakMap();
561
549
  function W(e, t) {
562
550
  t && (t.collectionName && (e.collectionName = t.collectionName), t.indexes?.length && (e.indexes = [...t.indexes]), t.excludeMigration && (e.excludeMigration = !0));
563
551
  }
564
- //#endregion
565
- //#region src/reflection/reflection-class.ts
552
+ // src/reflection/reflection-class.ts
566
553
  function ke(e) {
567
554
  if (!e) throw Error("typeOf<T>() was not transformed by the metadata compiler");
568
555
  return _(e), e;
@@ -760,8 +747,7 @@ function X(e) {
760
747
  metadata: n
761
748
  } : void 0;
762
749
  }
763
- //#endregion
764
- //#region src/reflection/conversion.ts
750
+ // src/reflection/conversion.ts
765
751
  var Pe = /* @__PURE__ */ new Map(), Z = {
766
752
  register(e, t) {
767
753
  Pe.set(e, t);
@@ -939,8 +925,7 @@ function $(t, n) {
939
925
  }
940
926
  return a.apply(n, i);
941
927
  }
942
- //#endregion
943
- //#region src/types/type-annotations.ts
928
+ // src/types/type-annotations.ts
944
929
  var Ue = class {
945
930
  x;
946
931
  y;
@@ -975,10 +960,8 @@ a.addDecorator((e) => Ge(e, "tsf:trim") !== void 0, (e, t) => {
975
960
  t.addTransform((e) => typeof e == "string" ? e.trim() : e);
976
961
  });
977
962
  var Ke = /^[a-z0-9_+.-]+@[a-z0-9-.]+\.[a-z]+$/i;
978
- //#endregion
979
- //#region src/types/runtime.ts
963
+ // src/types/runtime.ts
980
964
  function qe(e) {
981
965
  return typeof e == "function" ? e.name || "anonymous class" : e && typeof e == "object" ? e.constructor?.name || "anonymous class" : String(e);
982
966
  }
983
- //#endregion
984
967
  export { Ue as Coordinate, r as DeserializerRegistry, i as DeserializerState, Ke as EMAIL_REGEX, G as ReflectionClass, e as ReflectionKind, q as ReflectionMethod, je as ReflectionParameter, K as ReflectionProperty, n as ValidationError, n as ValidatorError, h as allowsNull, m as allowsUndefined, W as applyMetadataOptions, Re as assert, Be as cast, H as classMetadata, U as classOptions, T as cloneUtilityProperty, o as coerceBooleanValue, P as databaseAnnotation, Ie as deserialize, a as deserializer, ce as expandUtilityTypeMetadata, fe as findNested, k as findNestedSurface, y as flattenRuntimeUnionTypes, qe as getClassName, Ge as getFirstTypeAnnotation, de as getUtilityTypeName, pe as hasNestedType, ze as is, v as isClass, he as isDatabaseUUIDType, b as isExtractAssignable, p as isMarkerType, t as isReflectedType, me as isUUIDType, E as isUtilityTypeName, M as joinPath, Oe as knownPrimitiveKind, S as literalMatchesType, A as literalNumber, u as mergeStructuredProperties, w as mergeUtilityProperties, c as mergedIntersectionObjectLiteral, _ as normalizeTypeMetadata, f as objectLiteralIndexType, d as objectLiteralPropertiesFromType, J as readClassMetadata, ue as recordLiteralKeysFromType, le as recordPropertiesFromKeyType, Ae as registerClassMetadata, re as resolveClassType, Ve as resolveReceiveType, j as resolveRuntimeValue, g as tryResolveClassType, N as typeAnnotation, ke as typeOf, x as typesOverlap, s as unwrapValueType, C as utilitySourcePropertiesFromType, Fe as validate, Le as validatedDeserialize, ge as validationAnnotation, Z as validationRegistry, D as visitType, O as visitTypeSurface };
@@ -137,15 +137,21 @@ function resolveTtscBuild(projectRoot, source) {
137
137
  const projectRequire = createRequire(path.join(projectRoot, 'package.json'));
138
138
  const ttscPackageJson = projectRequire.resolve('ttsc/package.json');
139
139
  const ttscRoot = path.dirname(ttscPackageJson);
140
- const internalsPath = path.join(ttscRoot, 'lib', 'plugin', 'internal', 'buildSourcePlugin.js');
141
- const internals = require(internalsPath);
142
- if (typeof internals.computeCacheKey !== 'function' || typeof internals.resolveSourceBuildCachePaths !== 'function') {
140
+ const legacyInternalsPath = path.join(ttscRoot, 'lib', 'plugin', 'internal', 'buildSourcePlugin.js');
141
+ const sourceInternalsRoot = path.join(ttscRoot, 'lib', 'plugin', 'internal', 'source');
142
+ // ttsc 0.34 split the source-build helpers into individual modules.
143
+ const internalsPath = fs.existsSync(legacyInternalsPath) ? legacyInternalsPath : path.join(sourceInternalsRoot, 'computeCacheKey.js');
144
+ const { computeCacheKey } = require(internalsPath);
145
+ const { resolveSourceBuildCachePaths } = require(
146
+ fs.existsSync(legacyInternalsPath) ? legacyInternalsPath : path.join(sourceInternalsRoot, 'resolveSourceBuildCachePaths.js')
147
+ );
148
+ if (typeof computeCacheKey !== 'function' || typeof resolveSourceBuildCachePaths !== 'function') {
143
149
  throw new Error('installed ttsc does not expose compatible cache helpers');
144
150
  }
145
151
 
146
152
  const { ttscVersion, typescriptVersion } = resolveToolchainVersions(projectRoot);
147
153
  const goBinary = resolveGoBinary(ttscRoot, internalsPath);
148
- const cacheKey = internals.computeCacheKey({
154
+ const cacheKey = computeCacheKey({
149
155
  dir: source,
150
156
  entry: '.',
151
157
  goBinary,
@@ -155,7 +161,7 @@ function resolveTtscBuild(projectRoot, source) {
155
161
  });
156
162
  return {
157
163
  cacheKey,
158
- cachePaths: internals.resolveSourceBuildCachePaths(projectRoot),
164
+ cachePaths: resolveSourceBuildCachePaths(projectRoot),
159
165
  ttscVersion,
160
166
  typescriptVersion
161
167
  };
@@ -1,4 +1,4 @@
1
- //#region src/reflection/compact-metadata.ts
1
+ // src/reflection/compact-metadata.ts
2
2
  var e = "$tsf", t = "$tsfImport", n = "$tsfAlias", r = "$tsfType", i = "$tsfNode";
3
3
  function a(e, t, n) {
4
4
  return f(u(e), t, n);
@@ -190,5 +190,4 @@ function x(e) {
190
190
  let t = Object.keys(e);
191
191
  return t.length === 1 && t[0] === i && Number.isSafeInteger(e[i]);
192
192
  }
193
- //#endregion
194
193
  export { s as createCompactMetadataRegistryV1, c as createCompactMetadataRegistryV2, a as decodeCompactMetadataV1, o as decodeCompactMetadataV2, l as resolveCompactMetadataAliasV1 };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zyno-io/ts-reflection",
3
- "version": "26.1029.216",
3
+ "version": "26.1029.508",
4
4
  "description": "Browser-neutral TypeScript reflection and runtime metadata",
5
5
  "license": "MIT",
6
6
  "repository": {