valleyed 4.5.19 → 4.5.20

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/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [4.5.20](https://github.com/kevinand11/valleyed/compare/v4.5.19...v4.5.20) (2026-05-15)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * schema for optionals ([5f64648](https://github.com/kevinand11/valleyed/commit/5f646483d82d4835e8d218eb54f2d840b1427f6a))
11
+
5
12
  ### [4.5.19](https://github.com/kevinand11/valleyed/compare/v4.5.18...v4.5.19) (2026-03-02)
6
13
 
7
14
 
@@ -42,7 +42,8 @@ const nullable = (branch) => partial(branch, (i) => i === null, {
42
42
  schema: () => ({ oneOf: [(0, import_pipes.schema)(branch), { type: "null" }] })
43
43
  });
44
44
  const optional = (branch) => partial(branch, (i) => i === void 0, {
45
- context: { optional: true }
45
+ context: { optional: true },
46
+ schema: () => (0, import_pipes.schema)(branch)
46
47
  });
47
48
  const nullish = (branch) => partial(branch, (i) => i === null || i === void 0, {
48
49
  schema: () => ({ oneOf: [(0, import_pipes.schema)(branch), { type: "null" }] }),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/optionals.ts"],"sourcesContent":["import type { Pipe, PipeInput, PipeOutput } from './base'\nimport { standard, compileNested, context, schema } from './base/pipes'\nimport type { DeepPartial } from '../utils/types'\n\nconst partial = <T extends Pipe<any, any>, P>(\n\tbranch: T,\n\tpartialCondition: (i: unknown) => boolean,\n\tconfig: Parameters<typeof standard<PipeInput<T> | P, PipeOutput<T> | P>>[1],\n) =>\n\tstandard<PipeInput<T> | P, PipeOutput<T> | P>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (!${context}.partialCondition(${input})) {`,\n\t\t\t...compileNested({ opts, pipe: branch, input }).map((l) => ` ${l}`),\n\t\t\t`}`,\n\t\t],\n\t\t{\n\t\t\t...config,\n\t\t\tcontext: { ...config?.context, partialCondition },\n\t\t},\n\t)\n\nexport const nullable = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null>(branch, (i) => i === null, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t})\n\nexport const optional = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, undefined>(branch, (i) => i === undefined, {\n\t\tcontext: { optional: true },\n\t})\n\nexport const nullish = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null | undefined>(branch, (i) => i === null || i === undefined, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\nexport const conditional = <T extends Pipe<any, any>>(branch: T, condition: () => boolean) =>\n\tpartial<T, never>(branch, () => !condition(), {\n\t\tschema: () => schema(branch),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\ntype DefaultValue<T> = T extends object ? DeepPartial<T> : T\n\nexport const defaults = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T> | undefined, Exclude<PipeOutput<T>, undefined>>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (${input} === undefined) ${input} = ${context}.defaults`,\n\t\t\t...compileNested({ opts, pipe: branch, input }),\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.defaults ?? def }),\n\t\t\tcontext: { ...context(branch), defaults: def, optional: true },\n\t\t},\n\t)\n\nconst onCatch = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T>, PipeOutput<T>>(\n\t\t({ input, context }, opts) => [\n\t\t\t...compileNested({ opts, pipe: branch, input, errorType: 'assign' }),\n\t\t\t`if (${input} instanceof PipeError) ${input} = ${context}.catch`,\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.catch ?? def }),\n\t\t\tcontext: { ...context(branch), catch: def },\n\t\t},\n\t)\n\nexport { onCatch as catch }\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAyD;AAGzD,MAAM,UAAU,CACf,QACA,kBACA,eAEA;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,QAAQA,QAAO,qBAAqB,KAAK;AAAA,IACzC,OAAG,4BAAc,EAAE,MAAM,MAAM,QAAQ,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAAA,IACnE;AAAA,EACD;AAAA,EACA;AAAA,IACC,GAAG;AAAA,IACH,SAAS,EAAE,GAAG,QAAQ,SAAS,iBAAiB;AAAA,EACjD;AACD;AAEM,MAAM,WAAW,CAA2B,WAClD,QAAiB,QAAQ,CAAC,MAAM,MAAM,MAAM;AAAA,EAC3C,QAAQ,OAAO,EAAE,OAAO,KAAC,qBAAO,MAAM,GAAG,EAAE,MAAM,OAAO,CAAC,EAAE;AAC5D,CAAC;AAEK,MAAM,WAAW,CAA2B,WAClD,QAAsB,QAAQ,CAAC,MAAM,MAAM,QAAW;AAAA,EACrD,SAAS,EAAE,UAAU,KAAK;AAC3B,CAAC;AAEK,MAAM,UAAU,CAA2B,WACjD,QAA6B,QAAQ,CAAC,MAAM,MAAM,QAAQ,MAAM,QAAW;AAAA,EAC1E,QAAQ,OAAO,EAAE,OAAO,KAAC,qBAAO,MAAM,GAAG,EAAE,MAAM,OAAO,CAAC,EAAE;AAAA,EAC3D,SAAS,EAAE,OAAG,sBAAQ,MAAM,GAAG,UAAU,KAAK;AAC/C,CAAC;AAEK,MAAM,cAAc,CAA2B,QAAW,cAChE,QAAkB,QAAQ,MAAM,CAAC,UAAU,GAAG;AAAA,EAC7C,QAAQ,UAAM,qBAAO,MAAM;AAAA,EAC3B,SAAS,EAAE,OAAG,sBAAQ,MAAM,GAAG,UAAU,KAAK;AAC/C,CAAC;AAIK,MAAM,WAAW,CAA2B,QAAW,YAC7D;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,OAAO,KAAK,mBAAmB,KAAK,MAAMA,QAAO;AAAA,IACjD,OAAG,4BAAc,EAAE,MAAM,MAAM,QAAQ,MAAM,CAAC;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,QAAQ,CAAC,OAAO,EAAE,OAAG,qBAAO,MAAM,GAAG,SAAS,EAAE,YAAY,IAAI;AAAA,IAChE,SAAS,EAAE,OAAG,sBAAQ,MAAM,GAAG,UAAU,KAAK,UAAU,KAAK;AAAA,EAC9D;AACD;AAED,MAAM,UAAU,CAA2B,QAAW,YACrD;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,OAAG,4BAAc,EAAE,MAAM,MAAM,QAAQ,OAAO,WAAW,SAAS,CAAC;AAAA,IACnE,OAAO,KAAK,0BAA0B,KAAK,MAAMA,QAAO;AAAA,EACzD;AAAA,EACA;AAAA,IACC,QAAQ,CAAC,OAAO,EAAE,OAAG,qBAAO,MAAM,GAAG,SAAS,EAAE,SAAS,IAAI;AAAA,IAC7D,SAAS,EAAE,OAAG,sBAAQ,MAAM,GAAG,OAAO,IAAI;AAAA,EAC3C;AACD;","names":["context"]}
1
+ {"version":3,"sources":["../../../src/api/optionals.ts"],"sourcesContent":["import type { DeepPartial } from '../utils/types'\nimport type { Pipe, PipeInput, PipeOutput } from './base'\nimport { compileNested, context, schema, standard } from './base/pipes'\n\nconst partial = <T extends Pipe<any, any>, P>(\n\tbranch: T,\n\tpartialCondition: (i: unknown) => boolean,\n\tconfig: Parameters<typeof standard<PipeInput<T> | P, PipeOutput<T> | P>>[1],\n) =>\n\tstandard<PipeInput<T> | P, PipeOutput<T> | P>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (!${context}.partialCondition(${input})) {`,\n\t\t\t...compileNested({ opts, pipe: branch, input }).map((l) => ` ${l}`),\n\t\t\t`}`,\n\t\t],\n\t\t{\n\t\t\t...config,\n\t\t\tcontext: { ...config?.context, partialCondition },\n\t\t},\n\t)\n\nexport const nullable = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null>(branch, (i) => i === null, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t})\n\nexport const optional = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, undefined>(branch, (i) => i === undefined, {\n\t\tcontext: { optional: true },\n\t\tschema: () => schema(branch),\n\t})\n\nexport const nullish = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null | undefined>(branch, (i) => i === null || i === undefined, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\nexport const conditional = <T extends Pipe<any, any>>(branch: T, condition: () => boolean) =>\n\tpartial<T, never>(branch, () => !condition(), {\n\t\tschema: () => schema(branch),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\ntype DefaultValue<T> = T extends object ? DeepPartial<T> : T\n\nexport const defaults = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T> | undefined, Exclude<PipeOutput<T>, undefined>>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (${input} === undefined) ${input} = ${context}.defaults`,\n\t\t\t...compileNested({ opts, pipe: branch, input }),\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.defaults ?? def }),\n\t\t\tcontext: { ...context(branch), defaults: def, optional: true },\n\t\t},\n\t)\n\nconst onCatch = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T>, PipeOutput<T>>(\n\t\t({ input, context }, opts) => [\n\t\t\t...compileNested({ opts, pipe: branch, input, errorType: 'assign' }),\n\t\t\t`if (${input} instanceof PipeError) ${input} = ${context}.catch`,\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.catch ?? def }),\n\t\t\tcontext: { ...context(branch), catch: def },\n\t\t},\n\t)\n\nexport { onCatch as catch }\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,mBAAyD;AAEzD,MAAM,UAAU,CACf,QACA,kBACA,eAEA;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,QAAQA,QAAO,qBAAqB,KAAK;AAAA,IACzC,OAAG,4BAAc,EAAE,MAAM,MAAM,QAAQ,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAAA,IACnE;AAAA,EACD;AAAA,EACA;AAAA,IACC,GAAG;AAAA,IACH,SAAS,EAAE,GAAG,QAAQ,SAAS,iBAAiB;AAAA,EACjD;AACD;AAEM,MAAM,WAAW,CAA2B,WAClD,QAAiB,QAAQ,CAAC,MAAM,MAAM,MAAM;AAAA,EAC3C,QAAQ,OAAO,EAAE,OAAO,KAAC,qBAAO,MAAM,GAAG,EAAE,MAAM,OAAO,CAAC,EAAE;AAC5D,CAAC;AAEK,MAAM,WAAW,CAA2B,WAClD,QAAsB,QAAQ,CAAC,MAAM,MAAM,QAAW;AAAA,EACrD,SAAS,EAAE,UAAU,KAAK;AAAA,EAC1B,QAAQ,UAAM,qBAAO,MAAM;AAC5B,CAAC;AAEK,MAAM,UAAU,CAA2B,WACjD,QAA6B,QAAQ,CAAC,MAAM,MAAM,QAAQ,MAAM,QAAW;AAAA,EAC1E,QAAQ,OAAO,EAAE,OAAO,KAAC,qBAAO,MAAM,GAAG,EAAE,MAAM,OAAO,CAAC,EAAE;AAAA,EAC3D,SAAS,EAAE,OAAG,sBAAQ,MAAM,GAAG,UAAU,KAAK;AAC/C,CAAC;AAEK,MAAM,cAAc,CAA2B,QAAW,cAChE,QAAkB,QAAQ,MAAM,CAAC,UAAU,GAAG;AAAA,EAC7C,QAAQ,UAAM,qBAAO,MAAM;AAAA,EAC3B,SAAS,EAAE,OAAG,sBAAQ,MAAM,GAAG,UAAU,KAAK;AAC/C,CAAC;AAIK,MAAM,WAAW,CAA2B,QAAW,YAC7D;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,OAAO,KAAK,mBAAmB,KAAK,MAAMA,QAAO;AAAA,IACjD,OAAG,4BAAc,EAAE,MAAM,MAAM,QAAQ,MAAM,CAAC;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,QAAQ,CAAC,OAAO,EAAE,OAAG,qBAAO,MAAM,GAAG,SAAS,EAAE,YAAY,IAAI;AAAA,IAChE,SAAS,EAAE,OAAG,sBAAQ,MAAM,GAAG,UAAU,KAAK,UAAU,KAAK;AAAA,EAC9D;AACD;AAED,MAAM,UAAU,CAA2B,QAAW,YACrD;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,OAAG,4BAAc,EAAE,MAAM,MAAM,QAAQ,OAAO,WAAW,SAAS,CAAC;AAAA,IACnE,OAAO,KAAK,0BAA0B,KAAK,MAAMA,QAAO;AAAA,EACzD;AAAA,EACA;AAAA,IACC,QAAQ,CAAC,OAAO,EAAE,OAAG,qBAAO,MAAM,GAAG,SAAS,EAAE,SAAS,IAAI;AAAA,IAC7D,SAAS,EAAE,OAAG,sBAAQ,MAAM,GAAG,OAAO,IAAI;AAAA,EAC3C;AACD;","names":["context"]}
@@ -1,2 +1,2 @@
1
- "use strict";var u=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var f=(e,t)=>{for(var n in t)u(e,n,{get:t[n],enumerable:!0})},x=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of P(t))!c.call(e,a)&&a!==n&&u(e,a,{get:()=>t[a],enumerable:!(o=T(t,a))||o.enumerable});return e};var r=e=>x(u({},"__esModule",{value:!0}),e);var D={};f(D,{catch:()=>l,conditional:()=>I,defaults:()=>O,nullable:()=>y,nullish:()=>$,optional:()=>m});module.exports=r(D);var p=require('./base/pipes.min.cjs');const i=(e,t,n)=>(0,p.standard)(({input:o,context:a},s)=>[`if (!${a}.partialCondition(${o})) {`,...(0,p.compileNested)({opts:s,pipe:e,input:o}).map(d=>` ${d}`),"}"],{...n,context:{...n?.context,partialCondition:t}}),y=e=>i(e,t=>t===null,{schema:()=>({oneOf:[(0,p.schema)(e),{type:"null"}]})}),m=e=>i(e,t=>t===void 0,{context:{optional:!0}}),$=e=>i(e,t=>t==null,{schema:()=>({oneOf:[(0,p.schema)(e),{type:"null"}]}),context:{...(0,p.context)(e),optional:!0}}),I=(e,t)=>i(e,()=>!t(),{schema:()=>(0,p.schema)(e),context:{...(0,p.context)(e),optional:!0}}),O=(e,t)=>(0,p.standard)(({input:n,context:o},a)=>[`if (${n} === undefined) ${n} = ${o}.defaults`,...(0,p.compileNested)({opts:a,pipe:e,input:n})],{schema:n=>({...(0,p.schema)(e),default:n.defaults??t}),context:{...(0,p.context)(e),defaults:t,optional:!0}}),l=(e,t)=>(0,p.standard)(({input:n,context:o},a)=>[...(0,p.compileNested)({opts:a,pipe:e,input:n,errorType:"assign"}),`if (${n} instanceof PipeError) ${n} = ${o}.catch`],{schema:n=>({...(0,p.schema)(e),default:n.catch??t}),context:{...(0,p.context)(e),catch:t}});0&&(module.exports={catch:null,conditional,defaults,nullable,nullish,optional});
1
+ "use strict";var u=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var f=(e,t)=>{for(var p in t)u(e,p,{get:t[p],enumerable:!0})},x=(e,t,p,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let a of P(t))!c.call(e,a)&&a!==p&&u(e,a,{get:()=>t[a],enumerable:!(o=T(t,a))||o.enumerable});return e};var y=e=>x(u({},"__esModule",{value:!0}),e);var D={};f(D,{catch:()=>l,conditional:()=>I,defaults:()=>O,nullable:()=>r,nullish:()=>$,optional:()=>m});module.exports=y(D);var n=require('./base/pipes.min.cjs');const i=(e,t,p)=>(0,n.standard)(({input:o,context:a},s)=>[`if (!${a}.partialCondition(${o})) {`,...(0,n.compileNested)({opts:s,pipe:e,input:o}).map(d=>` ${d}`),"}"],{...p,context:{...p?.context,partialCondition:t}}),r=e=>i(e,t=>t===null,{schema:()=>({oneOf:[(0,n.schema)(e),{type:"null"}]})}),m=e=>i(e,t=>t===void 0,{context:{optional:!0},schema:()=>(0,n.schema)(e)}),$=e=>i(e,t=>t==null,{schema:()=>({oneOf:[(0,n.schema)(e),{type:"null"}]}),context:{...(0,n.context)(e),optional:!0}}),I=(e,t)=>i(e,()=>!t(),{schema:()=>(0,n.schema)(e),context:{...(0,n.context)(e),optional:!0}}),O=(e,t)=>(0,n.standard)(({input:p,context:o},a)=>[`if (${p} === undefined) ${p} = ${o}.defaults`,...(0,n.compileNested)({opts:a,pipe:e,input:p})],{schema:p=>({...(0,n.schema)(e),default:p.defaults??t}),context:{...(0,n.context)(e),defaults:t,optional:!0}}),l=(e,t)=>(0,n.standard)(({input:p,context:o},a)=>[...(0,n.compileNested)({opts:a,pipe:e,input:p,errorType:"assign"}),`if (${p} instanceof PipeError) ${p} = ${o}.catch`],{schema:p=>({...(0,n.schema)(e),default:p.catch??t}),context:{...(0,n.context)(e),catch:t}});0&&(module.exports={catch:null,conditional,defaults,nullable,nullish,optional});
2
2
  //# sourceMappingURL=optionals.min.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/optionals.ts"],"sourcesContent":["import type { Pipe, PipeInput, PipeOutput } from './base'\nimport { standard, compileNested, context, schema } from './base/pipes'\nimport type { DeepPartial } from '../utils/types'\n\nconst partial = <T extends Pipe<any, any>, P>(\n\tbranch: T,\n\tpartialCondition: (i: unknown) => boolean,\n\tconfig: Parameters<typeof standard<PipeInput<T> | P, PipeOutput<T> | P>>[1],\n) =>\n\tstandard<PipeInput<T> | P, PipeOutput<T> | P>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (!${context}.partialCondition(${input})) {`,\n\t\t\t...compileNested({ opts, pipe: branch, input }).map((l) => ` ${l}`),\n\t\t\t`}`,\n\t\t],\n\t\t{\n\t\t\t...config,\n\t\t\tcontext: { ...config?.context, partialCondition },\n\t\t},\n\t)\n\nexport const nullable = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null>(branch, (i) => i === null, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t})\n\nexport const optional = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, undefined>(branch, (i) => i === undefined, {\n\t\tcontext: { optional: true },\n\t})\n\nexport const nullish = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null | undefined>(branch, (i) => i === null || i === undefined, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\nexport const conditional = <T extends Pipe<any, any>>(branch: T, condition: () => boolean) =>\n\tpartial<T, never>(branch, () => !condition(), {\n\t\tschema: () => schema(branch),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\ntype DefaultValue<T> = T extends object ? DeepPartial<T> : T\n\nexport const defaults = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T> | undefined, Exclude<PipeOutput<T>, undefined>>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (${input} === undefined) ${input} = ${context}.defaults`,\n\t\t\t...compileNested({ opts, pipe: branch, input }),\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.defaults ?? def }),\n\t\t\tcontext: { ...context(branch), defaults: def, optional: true },\n\t\t},\n\t)\n\nconst onCatch = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T>, PipeOutput<T>>(\n\t\t({ input, context }, opts) => [\n\t\t\t...compileNested({ opts, pipe: branch, input, errorType: 'assign' }),\n\t\t\t`if (${input} instanceof PipeError) ${input} = ${context}.catch`,\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.catch ?? def }),\n\t\t\tcontext: { ...context(branch), catch: def },\n\t\t},\n\t)\n\nexport { onCatch as catch }\n"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,WAAAE,EAAA,gBAAAC,EAAA,aAAAC,EAAA,aAAAC,EAAA,YAAAC,EAAA,aAAAC,IAAA,eAAAC,EAAAR,GACA,IAAAS,EAAyD,wBAGzD,MAAMC,EAAU,CACfC,EACAC,EACAC,OAEA,YACC,CAAC,CAAE,MAAAC,EAAO,QAAAC,CAAQ,EAAGC,IAAS,CAC7B,QAAQD,CAAO,qBAAqBD,CAAK,OACzC,MAAG,iBAAc,CAAE,KAAAE,EAAM,KAAML,EAAQ,MAAAG,CAAM,CAAC,EAAE,IAAKG,GAAM,KAAKA,CAAC,EAAE,EACnE,GACD,EACA,CACC,GAAGJ,EACH,QAAS,CAAE,GAAGA,GAAQ,QAAS,iBAAAD,CAAiB,CACjD,CACD,EAEYP,EAAsCM,GAClDD,EAAiBC,EAASO,GAAMA,IAAM,KAAM,CAC3C,OAAQ,KAAO,CAAE,MAAO,IAAC,UAAOP,CAAM,EAAG,CAAE,KAAM,MAAO,CAAC,CAAE,EAC5D,CAAC,EAEWJ,EAAsCI,GAClDD,EAAsBC,EAASO,GAAMA,IAAM,OAAW,CACrD,QAAS,CAAE,SAAU,EAAK,CAC3B,CAAC,EAEWZ,EAAqCK,GACjDD,EAA6BC,EAASO,GAAMA,GAAM,KAAyB,CAC1E,OAAQ,KAAO,CAAE,MAAO,IAAC,UAAOP,CAAM,EAAG,CAAE,KAAM,MAAO,CAAC,CAAE,GAC3D,QAAS,CAAE,MAAG,WAAQA,CAAM,EAAG,SAAU,EAAK,CAC/C,CAAC,EAEWR,EAAc,CAA2BQ,EAAWQ,IAChET,EAAkBC,EAAQ,IAAM,CAACQ,EAAU,EAAG,CAC7C,OAAQ,OAAM,UAAOR,CAAM,EAC3B,QAAS,CAAE,MAAG,WAAQA,CAAM,EAAG,SAAU,EAAK,CAC/C,CAAC,EAIWP,EAAW,CAA2BO,EAAWS,OAC7D,YACC,CAAC,CAAE,MAAAN,EAAO,QAAAC,CAAQ,EAAGC,IAAS,CAC7B,OAAOF,CAAK,mBAAmBA,CAAK,MAAMC,CAAO,YACjD,MAAG,iBAAc,CAAE,KAAAC,EAAM,KAAML,EAAQ,MAAAG,CAAM,CAAC,CAC/C,EACA,CACC,OAASO,IAAO,CAAE,MAAG,UAAOV,CAAM,EAAG,QAASU,EAAE,UAAYD,CAAI,GAChE,QAAS,CAAE,MAAG,WAAQT,CAAM,EAAG,SAAUS,EAAK,SAAU,EAAK,CAC9D,CACD,EAEKlB,EAAU,CAA2BS,EAAWS,OACrD,YACC,CAAC,CAAE,MAAAN,EAAO,QAAAC,CAAQ,EAAGC,IAAS,CAC7B,MAAG,iBAAc,CAAE,KAAAA,EAAM,KAAML,EAAQ,MAAAG,EAAO,UAAW,QAAS,CAAC,EACnE,OAAOA,CAAK,0BAA0BA,CAAK,MAAMC,CAAO,QACzD,EACA,CACC,OAASM,IAAO,CAAE,MAAG,UAAOV,CAAM,EAAG,QAASU,EAAE,OAASD,CAAI,GAC7D,QAAS,CAAE,MAAG,WAAQT,CAAM,EAAG,MAAOS,CAAI,CAC3C,CACD","names":["optionals_exports","__export","onCatch","conditional","defaults","nullable","nullish","optional","__toCommonJS","import_pipes","partial","branch","partialCondition","config","input","context","opts","l","i","condition","def","c"]}
1
+ {"version":3,"sources":["../../../src/api/optionals.ts"],"sourcesContent":["import type { DeepPartial } from '../utils/types'\nimport type { Pipe, PipeInput, PipeOutput } from './base'\nimport { compileNested, context, schema, standard } from './base/pipes'\n\nconst partial = <T extends Pipe<any, any>, P>(\n\tbranch: T,\n\tpartialCondition: (i: unknown) => boolean,\n\tconfig: Parameters<typeof standard<PipeInput<T> | P, PipeOutput<T> | P>>[1],\n) =>\n\tstandard<PipeInput<T> | P, PipeOutput<T> | P>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (!${context}.partialCondition(${input})) {`,\n\t\t\t...compileNested({ opts, pipe: branch, input }).map((l) => ` ${l}`),\n\t\t\t`}`,\n\t\t],\n\t\t{\n\t\t\t...config,\n\t\t\tcontext: { ...config?.context, partialCondition },\n\t\t},\n\t)\n\nexport const nullable = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null>(branch, (i) => i === null, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t})\n\nexport const optional = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, undefined>(branch, (i) => i === undefined, {\n\t\tcontext: { optional: true },\n\t\tschema: () => schema(branch),\n\t})\n\nexport const nullish = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null | undefined>(branch, (i) => i === null || i === undefined, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\nexport const conditional = <T extends Pipe<any, any>>(branch: T, condition: () => boolean) =>\n\tpartial<T, never>(branch, () => !condition(), {\n\t\tschema: () => schema(branch),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\ntype DefaultValue<T> = T extends object ? DeepPartial<T> : T\n\nexport const defaults = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T> | undefined, Exclude<PipeOutput<T>, undefined>>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (${input} === undefined) ${input} = ${context}.defaults`,\n\t\t\t...compileNested({ opts, pipe: branch, input }),\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.defaults ?? def }),\n\t\t\tcontext: { ...context(branch), defaults: def, optional: true },\n\t\t},\n\t)\n\nconst onCatch = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T>, PipeOutput<T>>(\n\t\t({ input, context }, opts) => [\n\t\t\t...compileNested({ opts, pipe: branch, input, errorType: 'assign' }),\n\t\t\t`if (${input} instanceof PipeError) ${input} = ${context}.catch`,\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.catch ?? def }),\n\t\t\tcontext: { ...context(branch), catch: def },\n\t\t},\n\t)\n\nexport { onCatch as catch }\n"],"mappings":"yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,WAAAE,EAAA,gBAAAC,EAAA,aAAAC,EAAA,aAAAC,EAAA,YAAAC,EAAA,aAAAC,IAAA,eAAAC,EAAAR,GAEA,IAAAS,EAAyD,wBAEzD,MAAMC,EAAU,CACfC,EACAC,EACAC,OAEA,YACC,CAAC,CAAE,MAAAC,EAAO,QAAAC,CAAQ,EAAGC,IAAS,CAC7B,QAAQD,CAAO,qBAAqBD,CAAK,OACzC,MAAG,iBAAc,CAAE,KAAAE,EAAM,KAAML,EAAQ,MAAAG,CAAM,CAAC,EAAE,IAAKG,GAAM,KAAKA,CAAC,EAAE,EACnE,GACD,EACA,CACC,GAAGJ,EACH,QAAS,CAAE,GAAGA,GAAQ,QAAS,iBAAAD,CAAiB,CACjD,CACD,EAEYP,EAAsCM,GAClDD,EAAiBC,EAASO,GAAMA,IAAM,KAAM,CAC3C,OAAQ,KAAO,CAAE,MAAO,IAAC,UAAOP,CAAM,EAAG,CAAE,KAAM,MAAO,CAAC,CAAE,EAC5D,CAAC,EAEWJ,EAAsCI,GAClDD,EAAsBC,EAASO,GAAMA,IAAM,OAAW,CACrD,QAAS,CAAE,SAAU,EAAK,EAC1B,OAAQ,OAAM,UAAOP,CAAM,CAC5B,CAAC,EAEWL,EAAqCK,GACjDD,EAA6BC,EAASO,GAAMA,GAAM,KAAyB,CAC1E,OAAQ,KAAO,CAAE,MAAO,IAAC,UAAOP,CAAM,EAAG,CAAE,KAAM,MAAO,CAAC,CAAE,GAC3D,QAAS,CAAE,MAAG,WAAQA,CAAM,EAAG,SAAU,EAAK,CAC/C,CAAC,EAEWR,EAAc,CAA2BQ,EAAWQ,IAChET,EAAkBC,EAAQ,IAAM,CAACQ,EAAU,EAAG,CAC7C,OAAQ,OAAM,UAAOR,CAAM,EAC3B,QAAS,CAAE,MAAG,WAAQA,CAAM,EAAG,SAAU,EAAK,CAC/C,CAAC,EAIWP,EAAW,CAA2BO,EAAWS,OAC7D,YACC,CAAC,CAAE,MAAAN,EAAO,QAAAC,CAAQ,EAAGC,IAAS,CAC7B,OAAOF,CAAK,mBAAmBA,CAAK,MAAMC,CAAO,YACjD,MAAG,iBAAc,CAAE,KAAAC,EAAM,KAAML,EAAQ,MAAAG,CAAM,CAAC,CAC/C,EACA,CACC,OAASO,IAAO,CAAE,MAAG,UAAOV,CAAM,EAAG,QAASU,EAAE,UAAYD,CAAI,GAChE,QAAS,CAAE,MAAG,WAAQT,CAAM,EAAG,SAAUS,EAAK,SAAU,EAAK,CAC9D,CACD,EAEKlB,EAAU,CAA2BS,EAAWS,OACrD,YACC,CAAC,CAAE,MAAAN,EAAO,QAAAC,CAAQ,EAAGC,IAAS,CAC7B,MAAG,iBAAc,CAAE,KAAAA,EAAM,KAAML,EAAQ,MAAAG,EAAO,UAAW,QAAS,CAAC,EACnE,OAAOA,CAAK,0BAA0BA,CAAK,MAAMC,CAAO,QACzD,EACA,CACC,OAASM,IAAO,CAAE,MAAG,UAAOV,CAAM,EAAG,QAASU,EAAE,OAASD,CAAI,GAC7D,QAAS,CAAE,MAAG,WAAQT,CAAM,EAAG,MAAOS,CAAI,CAC3C,CACD","names":["optionals_exports","__export","onCatch","conditional","defaults","nullable","nullish","optional","__toCommonJS","import_pipes","partial","branch","partialCondition","config","input","context","opts","l","i","condition","def","c"]}
@@ -1,2 +1,2 @@
1
- import{standard as l,compileNested as s,context as i,schema as o}from "./base/pipes.min.mjs";const u=(e,t,n)=>l(({input:p,context:a},d)=>[`if (!${a}.partialCondition(${p})) {`,...s({opts:d,pipe:e,input:p}).map(T=>` ${T}`),"}"],{...n,context:{...n?.context,partialCondition:t}}),f=e=>u(e,t=>t===null,{schema:()=>({oneOf:[o(e),{type:"null"}]})}),x=e=>u(e,t=>t===void 0,{context:{optional:!0}}),r=e=>u(e,t=>t==null,{schema:()=>({oneOf:[o(e),{type:"null"}]}),context:{...i(e),optional:!0}}),y=(e,t)=>u(e,()=>!t(),{schema:()=>o(e),context:{...i(e),optional:!0}}),m=(e,t)=>l(({input:n,context:p},a)=>[`if (${n} === undefined) ${n} = ${p}.defaults`,...s({opts:a,pipe:e,input:n})],{schema:n=>({...o(e),default:n.defaults??t}),context:{...i(e),defaults:t,optional:!0}}),P=(e,t)=>l(({input:n,context:p},a)=>[...s({opts:a,pipe:e,input:n,errorType:"assign"}),`if (${n} instanceof PipeError) ${n} = ${p}.catch`],{schema:n=>({...o(e),default:n.catch??t}),context:{...i(e),catch:t}});export{P as catch,y as conditional,m as defaults,f as nullable,r as nullish,x as optional};
1
+ import{compileNested as l,context as i,schema as a,standard as s}from "./base/pipes.min.mjs";const u=(e,t,n)=>s(({input:p,context:o},d)=>[`if (!${o}.partialCondition(${p})) {`,...l({opts:d,pipe:e,input:p}).map(T=>` ${T}`),"}"],{...n,context:{...n?.context,partialCondition:t}}),f=e=>u(e,t=>t===null,{schema:()=>({oneOf:[a(e),{type:"null"}]})}),x=e=>u(e,t=>t===void 0,{context:{optional:!0},schema:()=>a(e)}),y=e=>u(e,t=>t==null,{schema:()=>({oneOf:[a(e),{type:"null"}]}),context:{...i(e),optional:!0}}),r=(e,t)=>u(e,()=>!t(),{schema:()=>a(e),context:{...i(e),optional:!0}}),m=(e,t)=>s(({input:n,context:p},o)=>[`if (${n} === undefined) ${n} = ${p}.defaults`,...l({opts:o,pipe:e,input:n})],{schema:n=>({...a(e),default:n.defaults??t}),context:{...i(e),defaults:t,optional:!0}}),P=(e,t)=>s(({input:n,context:p},o)=>[...l({opts:o,pipe:e,input:n,errorType:"assign"}),`if (${n} instanceof PipeError) ${n} = ${p}.catch`],{schema:n=>({...a(e),default:n.catch??t}),context:{...i(e),catch:t}});export{P as catch,r as conditional,m as defaults,f as nullable,y as nullish,x as optional};
2
2
  //# sourceMappingURL=optionals.min.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/optionals.ts"],"sourcesContent":["import type { Pipe, PipeInput, PipeOutput } from './base'\nimport { standard, compileNested, context, schema } from './base/pipes'\nimport type { DeepPartial } from '../utils/types'\n\nconst partial = <T extends Pipe<any, any>, P>(\n\tbranch: T,\n\tpartialCondition: (i: unknown) => boolean,\n\tconfig: Parameters<typeof standard<PipeInput<T> | P, PipeOutput<T> | P>>[1],\n) =>\n\tstandard<PipeInput<T> | P, PipeOutput<T> | P>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (!${context}.partialCondition(${input})) {`,\n\t\t\t...compileNested({ opts, pipe: branch, input }).map((l) => ` ${l}`),\n\t\t\t`}`,\n\t\t],\n\t\t{\n\t\t\t...config,\n\t\t\tcontext: { ...config?.context, partialCondition },\n\t\t},\n\t)\n\nexport const nullable = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null>(branch, (i) => i === null, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t})\n\nexport const optional = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, undefined>(branch, (i) => i === undefined, {\n\t\tcontext: { optional: true },\n\t})\n\nexport const nullish = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null | undefined>(branch, (i) => i === null || i === undefined, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\nexport const conditional = <T extends Pipe<any, any>>(branch: T, condition: () => boolean) =>\n\tpartial<T, never>(branch, () => !condition(), {\n\t\tschema: () => schema(branch),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\ntype DefaultValue<T> = T extends object ? DeepPartial<T> : T\n\nexport const defaults = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T> | undefined, Exclude<PipeOutput<T>, undefined>>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (${input} === undefined) ${input} = ${context}.defaults`,\n\t\t\t...compileNested({ opts, pipe: branch, input }),\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.defaults ?? def }),\n\t\t\tcontext: { ...context(branch), defaults: def, optional: true },\n\t\t},\n\t)\n\nconst onCatch = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T>, PipeOutput<T>>(\n\t\t({ input, context }, opts) => [\n\t\t\t...compileNested({ opts, pipe: branch, input, errorType: 'assign' }),\n\t\t\t`if (${input} instanceof PipeError) ${input} = ${context}.catch`,\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.catch ?? def }),\n\t\t\tcontext: { ...context(branch), catch: def },\n\t\t},\n\t)\n\nexport { onCatch as catch }\n"],"mappings":"AACA,OAAS,YAAAA,EAAU,iBAAAC,EAAe,WAAAC,EAAS,UAAAC,MAAc,eAGzD,MAAMC,EAAU,CACfC,EACAC,EACAC,IAEAP,EACC,CAAC,CAAE,MAAAQ,EAAO,QAAAN,CAAQ,EAAGO,IAAS,CAC7B,QAAQP,CAAO,qBAAqBM,CAAK,OACzC,GAAGP,EAAc,CAAE,KAAAQ,EAAM,KAAMJ,EAAQ,MAAAG,CAAM,CAAC,EAAE,IAAKE,GAAM,KAAKA,CAAC,EAAE,EACnE,GACD,EACA,CACC,GAAGH,EACH,QAAS,CAAE,GAAGA,GAAQ,QAAS,iBAAAD,CAAiB,CACjD,CACD,EAEYK,EAAsCN,GAClDD,EAAiBC,EAASO,GAAMA,IAAM,KAAM,CAC3C,OAAQ,KAAO,CAAE,MAAO,CAACT,EAAOE,CAAM,EAAG,CAAE,KAAM,MAAO,CAAC,CAAE,EAC5D,CAAC,EAEWQ,EAAsCR,GAClDD,EAAsBC,EAASO,GAAMA,IAAM,OAAW,CACrD,QAAS,CAAE,SAAU,EAAK,CAC3B,CAAC,EAEWE,EAAqCT,GACjDD,EAA6BC,EAASO,GAAMA,GAAM,KAAyB,CAC1E,OAAQ,KAAO,CAAE,MAAO,CAACT,EAAOE,CAAM,EAAG,CAAE,KAAM,MAAO,CAAC,CAAE,GAC3D,QAAS,CAAE,GAAGH,EAAQG,CAAM,EAAG,SAAU,EAAK,CAC/C,CAAC,EAEWU,EAAc,CAA2BV,EAAWW,IAChEZ,EAAkBC,EAAQ,IAAM,CAACW,EAAU,EAAG,CAC7C,OAAQ,IAAMb,EAAOE,CAAM,EAC3B,QAAS,CAAE,GAAGH,EAAQG,CAAM,EAAG,SAAU,EAAK,CAC/C,CAAC,EAIWY,EAAW,CAA2BZ,EAAWa,IAC7DlB,EACC,CAAC,CAAE,MAAAQ,EAAO,QAAAN,CAAQ,EAAGO,IAAS,CAC7B,OAAOD,CAAK,mBAAmBA,CAAK,MAAMN,CAAO,YACjD,GAAGD,EAAc,CAAE,KAAAQ,EAAM,KAAMJ,EAAQ,MAAAG,CAAM,CAAC,CAC/C,EACA,CACC,OAASW,IAAO,CAAE,GAAGhB,EAAOE,CAAM,EAAG,QAASc,EAAE,UAAYD,CAAI,GAChE,QAAS,CAAE,GAAGhB,EAAQG,CAAM,EAAG,SAAUa,EAAK,SAAU,EAAK,CAC9D,CACD,EAEKE,EAAU,CAA2Bf,EAAWa,IACrDlB,EACC,CAAC,CAAE,MAAAQ,EAAO,QAAAN,CAAQ,EAAGO,IAAS,CAC7B,GAAGR,EAAc,CAAE,KAAAQ,EAAM,KAAMJ,EAAQ,MAAAG,EAAO,UAAW,QAAS,CAAC,EACnE,OAAOA,CAAK,0BAA0BA,CAAK,MAAMN,CAAO,QACzD,EACA,CACC,OAASiB,IAAO,CAAE,GAAGhB,EAAOE,CAAM,EAAG,QAASc,EAAE,OAASD,CAAI,GAC7D,QAAS,CAAE,GAAGhB,EAAQG,CAAM,EAAG,MAAOa,CAAI,CAC3C,CACD","names":["standard","compileNested","context","schema","partial","branch","partialCondition","config","input","opts","l","nullable","i","optional","nullish","conditional","condition","defaults","def","c","onCatch"]}
1
+ {"version":3,"sources":["../../../src/api/optionals.ts"],"sourcesContent":["import type { DeepPartial } from '../utils/types'\nimport type { Pipe, PipeInput, PipeOutput } from './base'\nimport { compileNested, context, schema, standard } from './base/pipes'\n\nconst partial = <T extends Pipe<any, any>, P>(\n\tbranch: T,\n\tpartialCondition: (i: unknown) => boolean,\n\tconfig: Parameters<typeof standard<PipeInput<T> | P, PipeOutput<T> | P>>[1],\n) =>\n\tstandard<PipeInput<T> | P, PipeOutput<T> | P>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (!${context}.partialCondition(${input})) {`,\n\t\t\t...compileNested({ opts, pipe: branch, input }).map((l) => ` ${l}`),\n\t\t\t`}`,\n\t\t],\n\t\t{\n\t\t\t...config,\n\t\t\tcontext: { ...config?.context, partialCondition },\n\t\t},\n\t)\n\nexport const nullable = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null>(branch, (i) => i === null, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t})\n\nexport const optional = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, undefined>(branch, (i) => i === undefined, {\n\t\tcontext: { optional: true },\n\t\tschema: () => schema(branch),\n\t})\n\nexport const nullish = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null | undefined>(branch, (i) => i === null || i === undefined, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\nexport const conditional = <T extends Pipe<any, any>>(branch: T, condition: () => boolean) =>\n\tpartial<T, never>(branch, () => !condition(), {\n\t\tschema: () => schema(branch),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\ntype DefaultValue<T> = T extends object ? DeepPartial<T> : T\n\nexport const defaults = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T> | undefined, Exclude<PipeOutput<T>, undefined>>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (${input} === undefined) ${input} = ${context}.defaults`,\n\t\t\t...compileNested({ opts, pipe: branch, input }),\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.defaults ?? def }),\n\t\t\tcontext: { ...context(branch), defaults: def, optional: true },\n\t\t},\n\t)\n\nconst onCatch = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T>, PipeOutput<T>>(\n\t\t({ input, context }, opts) => [\n\t\t\t...compileNested({ opts, pipe: branch, input, errorType: 'assign' }),\n\t\t\t`if (${input} instanceof PipeError) ${input} = ${context}.catch`,\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.catch ?? def }),\n\t\t\tcontext: { ...context(branch), catch: def },\n\t\t},\n\t)\n\nexport { onCatch as catch }\n"],"mappings":"AAEA,OAAS,iBAAAA,EAAe,WAAAC,EAAS,UAAAC,EAAQ,YAAAC,MAAgB,eAEzD,MAAMC,EAAU,CACfC,EACAC,EACAC,IAEAJ,EACC,CAAC,CAAE,MAAAK,EAAO,QAAAP,CAAQ,EAAGQ,IAAS,CAC7B,QAAQR,CAAO,qBAAqBO,CAAK,OACzC,GAAGR,EAAc,CAAE,KAAAS,EAAM,KAAMJ,EAAQ,MAAAG,CAAM,CAAC,EAAE,IAAKE,GAAM,KAAKA,CAAC,EAAE,EACnE,GACD,EACA,CACC,GAAGH,EACH,QAAS,CAAE,GAAGA,GAAQ,QAAS,iBAAAD,CAAiB,CACjD,CACD,EAEYK,EAAsCN,GAClDD,EAAiBC,EAASO,GAAMA,IAAM,KAAM,CAC3C,OAAQ,KAAO,CAAE,MAAO,CAACV,EAAOG,CAAM,EAAG,CAAE,KAAM,MAAO,CAAC,CAAE,EAC5D,CAAC,EAEWQ,EAAsCR,GAClDD,EAAsBC,EAASO,GAAMA,IAAM,OAAW,CACrD,QAAS,CAAE,SAAU,EAAK,EAC1B,OAAQ,IAAMV,EAAOG,CAAM,CAC5B,CAAC,EAEWS,EAAqCT,GACjDD,EAA6BC,EAASO,GAAMA,GAAM,KAAyB,CAC1E,OAAQ,KAAO,CAAE,MAAO,CAACV,EAAOG,CAAM,EAAG,CAAE,KAAM,MAAO,CAAC,CAAE,GAC3D,QAAS,CAAE,GAAGJ,EAAQI,CAAM,EAAG,SAAU,EAAK,CAC/C,CAAC,EAEWU,EAAc,CAA2BV,EAAWW,IAChEZ,EAAkBC,EAAQ,IAAM,CAACW,EAAU,EAAG,CAC7C,OAAQ,IAAMd,EAAOG,CAAM,EAC3B,QAAS,CAAE,GAAGJ,EAAQI,CAAM,EAAG,SAAU,EAAK,CAC/C,CAAC,EAIWY,EAAW,CAA2BZ,EAAWa,IAC7Df,EACC,CAAC,CAAE,MAAAK,EAAO,QAAAP,CAAQ,EAAGQ,IAAS,CAC7B,OAAOD,CAAK,mBAAmBA,CAAK,MAAMP,CAAO,YACjD,GAAGD,EAAc,CAAE,KAAAS,EAAM,KAAMJ,EAAQ,MAAAG,CAAM,CAAC,CAC/C,EACA,CACC,OAASW,IAAO,CAAE,GAAGjB,EAAOG,CAAM,EAAG,QAASc,EAAE,UAAYD,CAAI,GAChE,QAAS,CAAE,GAAGjB,EAAQI,CAAM,EAAG,SAAUa,EAAK,SAAU,EAAK,CAC9D,CACD,EAEKE,EAAU,CAA2Bf,EAAWa,IACrDf,EACC,CAAC,CAAE,MAAAK,EAAO,QAAAP,CAAQ,EAAGQ,IAAS,CAC7B,GAAGT,EAAc,CAAE,KAAAS,EAAM,KAAMJ,EAAQ,MAAAG,EAAO,UAAW,QAAS,CAAC,EACnE,OAAOA,CAAK,0BAA0BA,CAAK,MAAMP,CAAO,QACzD,EACA,CACC,OAASkB,IAAO,CAAE,GAAGjB,EAAOG,CAAM,EAAG,QAASc,EAAE,OAASD,CAAI,GAC7D,QAAS,CAAE,GAAGjB,EAAQI,CAAM,EAAG,MAAOa,CAAI,CAC3C,CACD","names":["compileNested","context","schema","standard","partial","branch","partialCondition","config","input","opts","l","nullable","i","optional","nullish","conditional","condition","defaults","def","c","onCatch"]}
@@ -1,4 +1,4 @@
1
- import { standard, compileNested, context, schema } from "./base/pipes.mjs";
1
+ import { compileNested, context, schema, standard } from "./base/pipes.mjs";
2
2
  const partial = (branch, partialCondition, config) => standard(
3
3
  ({ input, context: context2 }, opts) => [
4
4
  `if (!${context2}.partialCondition(${input})) {`,
@@ -14,7 +14,8 @@ const nullable = (branch) => partial(branch, (i) => i === null, {
14
14
  schema: () => ({ oneOf: [schema(branch), { type: "null" }] })
15
15
  });
16
16
  const optional = (branch) => partial(branch, (i) => i === void 0, {
17
- context: { optional: true }
17
+ context: { optional: true },
18
+ schema: () => schema(branch)
18
19
  });
19
20
  const nullish = (branch) => partial(branch, (i) => i === null || i === void 0, {
20
21
  schema: () => ({ oneOf: [schema(branch), { type: "null" }] }),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/optionals.ts"],"sourcesContent":["import type { Pipe, PipeInput, PipeOutput } from './base'\nimport { standard, compileNested, context, schema } from './base/pipes'\nimport type { DeepPartial } from '../utils/types'\n\nconst partial = <T extends Pipe<any, any>, P>(\n\tbranch: T,\n\tpartialCondition: (i: unknown) => boolean,\n\tconfig: Parameters<typeof standard<PipeInput<T> | P, PipeOutput<T> | P>>[1],\n) =>\n\tstandard<PipeInput<T> | P, PipeOutput<T> | P>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (!${context}.partialCondition(${input})) {`,\n\t\t\t...compileNested({ opts, pipe: branch, input }).map((l) => ` ${l}`),\n\t\t\t`}`,\n\t\t],\n\t\t{\n\t\t\t...config,\n\t\t\tcontext: { ...config?.context, partialCondition },\n\t\t},\n\t)\n\nexport const nullable = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null>(branch, (i) => i === null, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t})\n\nexport const optional = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, undefined>(branch, (i) => i === undefined, {\n\t\tcontext: { optional: true },\n\t})\n\nexport const nullish = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null | undefined>(branch, (i) => i === null || i === undefined, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\nexport const conditional = <T extends Pipe<any, any>>(branch: T, condition: () => boolean) =>\n\tpartial<T, never>(branch, () => !condition(), {\n\t\tschema: () => schema(branch),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\ntype DefaultValue<T> = T extends object ? DeepPartial<T> : T\n\nexport const defaults = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T> | undefined, Exclude<PipeOutput<T>, undefined>>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (${input} === undefined) ${input} = ${context}.defaults`,\n\t\t\t...compileNested({ opts, pipe: branch, input }),\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.defaults ?? def }),\n\t\t\tcontext: { ...context(branch), defaults: def, optional: true },\n\t\t},\n\t)\n\nconst onCatch = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T>, PipeOutput<T>>(\n\t\t({ input, context }, opts) => [\n\t\t\t...compileNested({ opts, pipe: branch, input, errorType: 'assign' }),\n\t\t\t`if (${input} instanceof PipeError) ${input} = ${context}.catch`,\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.catch ?? def }),\n\t\t\tcontext: { ...context(branch), catch: def },\n\t\t},\n\t)\n\nexport { onCatch as catch }\n"],"mappings":"AACA,SAAS,UAAU,eAAe,SAAS,cAAc;AAGzD,MAAM,UAAU,CACf,QACA,kBACA,WAEA;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,QAAQA,QAAO,qBAAqB,KAAK;AAAA,IACzC,GAAG,cAAc,EAAE,MAAM,MAAM,QAAQ,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAAA,IACnE;AAAA,EACD;AAAA,EACA;AAAA,IACC,GAAG;AAAA,IACH,SAAS,EAAE,GAAG,QAAQ,SAAS,iBAAiB;AAAA,EACjD;AACD;AAEM,MAAM,WAAW,CAA2B,WAClD,QAAiB,QAAQ,CAAC,MAAM,MAAM,MAAM;AAAA,EAC3C,QAAQ,OAAO,EAAE,OAAO,CAAC,OAAO,MAAM,GAAG,EAAE,MAAM,OAAO,CAAC,EAAE;AAC5D,CAAC;AAEK,MAAM,WAAW,CAA2B,WAClD,QAAsB,QAAQ,CAAC,MAAM,MAAM,QAAW;AAAA,EACrD,SAAS,EAAE,UAAU,KAAK;AAC3B,CAAC;AAEK,MAAM,UAAU,CAA2B,WACjD,QAA6B,QAAQ,CAAC,MAAM,MAAM,QAAQ,MAAM,QAAW;AAAA,EAC1E,QAAQ,OAAO,EAAE,OAAO,CAAC,OAAO,MAAM,GAAG,EAAE,MAAM,OAAO,CAAC,EAAE;AAAA,EAC3D,SAAS,EAAE,GAAG,QAAQ,MAAM,GAAG,UAAU,KAAK;AAC/C,CAAC;AAEK,MAAM,cAAc,CAA2B,QAAW,cAChE,QAAkB,QAAQ,MAAM,CAAC,UAAU,GAAG;AAAA,EAC7C,QAAQ,MAAM,OAAO,MAAM;AAAA,EAC3B,SAAS,EAAE,GAAG,QAAQ,MAAM,GAAG,UAAU,KAAK;AAC/C,CAAC;AAIK,MAAM,WAAW,CAA2B,QAAW,QAC7D;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,OAAO,KAAK,mBAAmB,KAAK,MAAMA,QAAO;AAAA,IACjD,GAAG,cAAc,EAAE,MAAM,MAAM,QAAQ,MAAM,CAAC;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,QAAQ,CAAC,OAAO,EAAE,GAAG,OAAO,MAAM,GAAG,SAAS,EAAE,YAAY,IAAI;AAAA,IAChE,SAAS,EAAE,GAAG,QAAQ,MAAM,GAAG,UAAU,KAAK,UAAU,KAAK;AAAA,EAC9D;AACD;AAED,MAAM,UAAU,CAA2B,QAAW,QACrD;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,GAAG,cAAc,EAAE,MAAM,MAAM,QAAQ,OAAO,WAAW,SAAS,CAAC;AAAA,IACnE,OAAO,KAAK,0BAA0B,KAAK,MAAMA,QAAO;AAAA,EACzD;AAAA,EACA;AAAA,IACC,QAAQ,CAAC,OAAO,EAAE,GAAG,OAAO,MAAM,GAAG,SAAS,EAAE,SAAS,IAAI;AAAA,IAC7D,SAAS,EAAE,GAAG,QAAQ,MAAM,GAAG,OAAO,IAAI;AAAA,EAC3C;AACD;","names":["context"]}
1
+ {"version":3,"sources":["../../../src/api/optionals.ts"],"sourcesContent":["import type { DeepPartial } from '../utils/types'\nimport type { Pipe, PipeInput, PipeOutput } from './base'\nimport { compileNested, context, schema, standard } from './base/pipes'\n\nconst partial = <T extends Pipe<any, any>, P>(\n\tbranch: T,\n\tpartialCondition: (i: unknown) => boolean,\n\tconfig: Parameters<typeof standard<PipeInput<T> | P, PipeOutput<T> | P>>[1],\n) =>\n\tstandard<PipeInput<T> | P, PipeOutput<T> | P>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (!${context}.partialCondition(${input})) {`,\n\t\t\t...compileNested({ opts, pipe: branch, input }).map((l) => ` ${l}`),\n\t\t\t`}`,\n\t\t],\n\t\t{\n\t\t\t...config,\n\t\t\tcontext: { ...config?.context, partialCondition },\n\t\t},\n\t)\n\nexport const nullable = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null>(branch, (i) => i === null, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t})\n\nexport const optional = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, undefined>(branch, (i) => i === undefined, {\n\t\tcontext: { optional: true },\n\t\tschema: () => schema(branch),\n\t})\n\nexport const nullish = <T extends Pipe<any, any>>(branch: T) =>\n\tpartial<T, null | undefined>(branch, (i) => i === null || i === undefined, {\n\t\tschema: () => ({ oneOf: [schema(branch), { type: 'null' }] }),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\nexport const conditional = <T extends Pipe<any, any>>(branch: T, condition: () => boolean) =>\n\tpartial<T, never>(branch, () => !condition(), {\n\t\tschema: () => schema(branch),\n\t\tcontext: { ...context(branch), optional: true },\n\t})\n\ntype DefaultValue<T> = T extends object ? DeepPartial<T> : T\n\nexport const defaults = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T> | undefined, Exclude<PipeOutput<T>, undefined>>(\n\t\t({ input, context }, opts) => [\n\t\t\t`if (${input} === undefined) ${input} = ${context}.defaults`,\n\t\t\t...compileNested({ opts, pipe: branch, input }),\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.defaults ?? def }),\n\t\t\tcontext: { ...context(branch), defaults: def, optional: true },\n\t\t},\n\t)\n\nconst onCatch = <T extends Pipe<any, any>>(branch: T, def: DefaultValue<PipeInput<T>>) =>\n\tstandard<PipeInput<T>, PipeOutput<T>>(\n\t\t({ input, context }, opts) => [\n\t\t\t...compileNested({ opts, pipe: branch, input, errorType: 'assign' }),\n\t\t\t`if (${input} instanceof PipeError) ${input} = ${context}.catch`,\n\t\t],\n\t\t{\n\t\t\tschema: (c) => ({ ...schema(branch), default: c.catch ?? def }),\n\t\t\tcontext: { ...context(branch), catch: def },\n\t\t},\n\t)\n\nexport { onCatch as catch }\n"],"mappings":"AAEA,SAAS,eAAe,SAAS,QAAQ,gBAAgB;AAEzD,MAAM,UAAU,CACf,QACA,kBACA,WAEA;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,QAAQA,QAAO,qBAAqB,KAAK;AAAA,IACzC,GAAG,cAAc,EAAE,MAAM,MAAM,QAAQ,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;AAAA,IACnE;AAAA,EACD;AAAA,EACA;AAAA,IACC,GAAG;AAAA,IACH,SAAS,EAAE,GAAG,QAAQ,SAAS,iBAAiB;AAAA,EACjD;AACD;AAEM,MAAM,WAAW,CAA2B,WAClD,QAAiB,QAAQ,CAAC,MAAM,MAAM,MAAM;AAAA,EAC3C,QAAQ,OAAO,EAAE,OAAO,CAAC,OAAO,MAAM,GAAG,EAAE,MAAM,OAAO,CAAC,EAAE;AAC5D,CAAC;AAEK,MAAM,WAAW,CAA2B,WAClD,QAAsB,QAAQ,CAAC,MAAM,MAAM,QAAW;AAAA,EACrD,SAAS,EAAE,UAAU,KAAK;AAAA,EAC1B,QAAQ,MAAM,OAAO,MAAM;AAC5B,CAAC;AAEK,MAAM,UAAU,CAA2B,WACjD,QAA6B,QAAQ,CAAC,MAAM,MAAM,QAAQ,MAAM,QAAW;AAAA,EAC1E,QAAQ,OAAO,EAAE,OAAO,CAAC,OAAO,MAAM,GAAG,EAAE,MAAM,OAAO,CAAC,EAAE;AAAA,EAC3D,SAAS,EAAE,GAAG,QAAQ,MAAM,GAAG,UAAU,KAAK;AAC/C,CAAC;AAEK,MAAM,cAAc,CAA2B,QAAW,cAChE,QAAkB,QAAQ,MAAM,CAAC,UAAU,GAAG;AAAA,EAC7C,QAAQ,MAAM,OAAO,MAAM;AAAA,EAC3B,SAAS,EAAE,GAAG,QAAQ,MAAM,GAAG,UAAU,KAAK;AAC/C,CAAC;AAIK,MAAM,WAAW,CAA2B,QAAW,QAC7D;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,OAAO,KAAK,mBAAmB,KAAK,MAAMA,QAAO;AAAA,IACjD,GAAG,cAAc,EAAE,MAAM,MAAM,QAAQ,MAAM,CAAC;AAAA,EAC/C;AAAA,EACA;AAAA,IACC,QAAQ,CAAC,OAAO,EAAE,GAAG,OAAO,MAAM,GAAG,SAAS,EAAE,YAAY,IAAI;AAAA,IAChE,SAAS,EAAE,GAAG,QAAQ,MAAM,GAAG,UAAU,KAAK,UAAU,KAAK;AAAA,EAC9D;AACD;AAED,MAAM,UAAU,CAA2B,QAAW,QACrD;AAAA,EACC,CAAC,EAAE,OAAO,SAAAA,SAAQ,GAAG,SAAS;AAAA,IAC7B,GAAG,cAAc,EAAE,MAAM,MAAM,QAAQ,OAAO,WAAW,SAAS,CAAC;AAAA,IACnE,OAAO,KAAK,0BAA0B,KAAK,MAAMA,QAAO;AAAA,EACzD;AAAA,EACA;AAAA,IACC,QAAQ,CAAC,OAAO,EAAE,GAAG,OAAO,MAAM,GAAG,SAAS,EAAE,SAAS,IAAI;AAAA,IAC7D,SAAS,EAAE,GAAG,QAAQ,MAAM,GAAG,OAAO,IAAI;AAAA,EAC3C;AACD;","names":["context"]}
@@ -1,5 +1,5 @@
1
- import { i as Pipe, f as PipeInput, g as PipeOutput } from '../errors-B5taetnA.js';
2
1
  import { DeepPartial } from '../utils/types.js';
2
+ import { i as Pipe, f as PipeInput, g as PipeOutput } from '../errors-B5taetnA.js';
3
3
  import '@standard-schema/spec';
4
4
 
5
5
  declare const nullable: <T extends Pipe<any, any>>(branch: T) => Pipe<PipeInput<T> | null, PipeOutput<T> | null>;
@@ -1,4 +1,4 @@
1
- import { standard, compileNested, context, schema } from "./base/pipes.js";
1
+ import { compileNested, context, schema, standard } from "./base/pipes.js";
2
2
  const partial = (branch, partialCondition, config) => standard(
3
3
  ({ input, context: context2 }, opts) => [
4
4
  `if (!${context2}.partialCondition(${input})) {`,
@@ -14,7 +14,8 @@ const nullable = (branch) => partial(branch, (i) => i === null, {
14
14
  schema: () => ({ oneOf: [schema(branch), { type: "null" }] })
15
15
  });
16
16
  const optional = (branch) => partial(branch, (i) => i === void 0, {
17
- context: { optional: true }
17
+ context: { optional: true },
18
+ schema: () => schema(branch)
18
19
  });
19
20
  const nullish = (branch) => partial(branch, (i) => i === null || i === void 0, {
20
21
  schema: () => ({ oneOf: [schema(branch), { type: "null" }] }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "valleyed",
3
- "version": "4.5.19",
3
+ "version": "4.5.20",
4
4
  "description": "A lightweight package with definitions for various validation rules, and helper services to consume said rules.",
5
5
  "type": "module",
6
6
  "sideEffects": false,