runcheck 0.19.0 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -2
- package/dist/autofixable.cjs +1 -1
- package/dist/autofixable.js +1 -1
- package/dist/chunk-NNEEJPIK.js +1 -0
- package/dist/runcheck.cjs +1 -1
- package/dist/runcheck.d.ts +5 -2
- package/dist/runcheck.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-OEIPIHQO.js +0 -1
package/README.md
CHANGED
|
@@ -283,13 +283,13 @@ const result = rc_parse(
|
|
|
283
283
|
|
|
284
284
|
# Advanced object types
|
|
285
285
|
|
|
286
|
-
## `
|
|
286
|
+
## `rc_rename_from_key`
|
|
287
287
|
|
|
288
288
|
Allows to rename a key in a object. Example:
|
|
289
289
|
|
|
290
290
|
```ts
|
|
291
291
|
const shape = rc_object({
|
|
292
|
-
name:
|
|
292
|
+
name: rc_rename_from_key('oldName', rc_string), // oldName will be renamed to name
|
|
293
293
|
age: rc_number,
|
|
294
294
|
isCool: rc_boolean,
|
|
295
295
|
})
|
|
@@ -325,3 +325,21 @@ const shape = rc_object({
|
|
|
325
325
|
|
|
326
326
|
const nameSchema = rc_get_obj_schema(shape).name
|
|
327
327
|
```
|
|
328
|
+
|
|
329
|
+
## `rc_extends_obj`
|
|
330
|
+
|
|
331
|
+
Don't strip unchecked keys from the result. Example:
|
|
332
|
+
|
|
333
|
+
```ts
|
|
334
|
+
const shape = rc_object({
|
|
335
|
+
name: rc_string,
|
|
336
|
+
})
|
|
337
|
+
|
|
338
|
+
const result = rc_parse(
|
|
339
|
+
{ name: 'John', age: 20, is_cool: true },
|
|
340
|
+
rc_extends_obj(shape),
|
|
341
|
+
)
|
|
342
|
+
|
|
343
|
+
// keys `age` and `is_cool` will be present in the result
|
|
344
|
+
result.data // { name: 'John', age: 20, is_cool: true }
|
|
345
|
+
```
|
package/dist/autofixable.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var c=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var d=(e,r)=>{for(var t in r)c(e,t,{get:r[t],enumerable:!0})},R=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of T(r))!p.call(e,n)&&n!==t&&c(e,n,{get:()=>r[n],enumerable:!(i=y(r,n))||i.enumerable});return e};var h=e=>R(c({},"__esModule",{value:!0}),e);var P={};d(P,{rc_boolean_autofix:()=>
|
|
1
|
+
"use strict";var c=Object.defineProperty;var y=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var d=(e,r)=>{for(var t in r)c(e,t,{get:r[t],enumerable:!0})},R=(e,r,t,i)=>{if(r&&typeof r=="object"||typeof r=="function")for(let n of T(r))!p.call(e,n)&&n!==t&&c(e,n,{get:()=>r[n],enumerable:!(i=y(r,n))||i.enumerable});return e};var h=e=>R(c({},"__esModule",{value:!0}),e);var P={};d(P,{rc_boolean_autofix:()=>k,rc_number_autofix:()=>A,rc_string_autofix:()=>O});module.exports=h(P);function _(e){return{...this,o:e}}function a(e,r,t,i){if(e.c&&r===void 0)return[!0,r];if(e.u&&r==null)return[!0,r];if(e.l&&r===null)return[!0,r];let n=i();if(n&&(n===!0||"data"in n)){let s=n===!0?r:n.data;return e.s&&!e.s(s)?[!1,[e.n(s)]]:[!0,s]}if(e.o!==void 0)return t.warnings.push(`Fallback used, ${e.n(r)}`),[!0,e.o];if(e.f&&e.i){let s=e.i(r);if(s)return e.s&&!e.s(s.fixed)?[!1,[e.n(s.fixed)]]:(t.warnings.push(`${t.path?`$${t.path}: `:""}Autofixed from error "${e.n(r)}"`),[!0,s.fixed])}return[!1,n&&"errors"in n?n.errors:[e.n(r)]]}function b(e){return{...this,f:!0,i:e}}function g(e){return{...this,s:e,e:`${this.e}_with_predicate`}}function x(){return{...this,c:!0}}function w(e){return`Type '${j(e)}' is not assignable to '${this.e}'`}function m(){return{...this,l:!0,e:`${this.e}_or_nullable`}}function $(){return{...this,u:!0,e:`${this.e}_or_nullish`}}var o={withFallback:_,where:g,optional:x,n:w,nullable:m,withAutofix:b,nullish:$},N={...o,r(e,r){return a(this,e,r,()=>e===void 0)},e:"undefined"},V={...o,r(e,r){return a(this,e,r,()=>e===null)},e:"null"},I={...o,r(e,r){return a(this,e,r,()=>!0)},e:"any"},q={...o,r(e,r){return a(this,e,r,()=>!0)},e:"unknown"},u={...o,r(e,r){return a(this,e,r,()=>typeof e=="boolean")},e:"boolean"},l={...o,r(e,r){return a(this,e,r,()=>typeof e=="string")},e:"string"},f={...o,r(e,r){return a(this,e,r,()=>typeof e=="number"&&!Number.isNaN(e))},e:"number"},E={...o,r(e,r){return a(this,e,r,()=>typeof e=="object"&&e instanceof Date&&!Number.isNaN(e.getTime()))},e:"date"};function j(e){if(typeof e=="object"){if(Array.isArray(e))return"array";if(!e)return"null"}return typeof e}var k=u.withAutofix(e=>e==null||e===0||e===1?{fixed:!!e}:e==="true"||e==="false"?{fixed:e==="true"}:!1),O=l.withAutofix(e=>typeof e=="number"&&!Number.isNaN(e)?{fixed:e.toString()}:!1),A=f.withAutofix(e=>{if(typeof e=="string"){let r=Number(e);if(!Number.isNaN(r))return{fixed:r}}return!1});0&&(module.exports={rc_boolean_autofix,rc_number_autofix,rc_string_autofix});
|
package/dist/autofixable.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as f,f as t,g as o}from"./chunk-
|
|
1
|
+
import{e as f,f as t,g as o}from"./chunk-NNEEJPIK.js";var s=f.withAutofix(r=>r==null||r===0||r===1?{fixed:!!r}:r==="true"||r==="false"?{fixed:r==="true"}:!1),n=t.withAutofix(r=>typeof r=="number"&&!Number.isNaN(r)?{fixed:r.toString()}:!1),u=o.withAutofix(r=>{if(typeof r=="string"){let e=Number(r);if(!Number.isNaN(e))return{fixed:e}}return!1});export{s as rc_boolean_autofix,u as rc_number_autofix,n as rc_string_autofix};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function S(e){return{...this,o:e}}function i(e,r,n,t){if(e.c&&r===void 0)return[!0,r];if(e.u&&r==null)return[!0,r];if(e.l&&r===null)return[!0,r];let s=t();if(s&&(s===!0||"data"in s)){let a=s===!0?r:s.data;return e.s&&!e.s(a)?[!1,[e.n(a)]]:[!0,a]}if(e.o!==void 0)return n.warnings.push(`Fallback used, ${e.n(r)}`),[!0,e.o];if(e.f&&e.i){let a=e.i(r);if(a)return e.s&&!e.s(a.fixed)?[!1,[e.n(a.fixed)]]:(n.warnings.push(`${n.path?`$${n.path}: `:""}Autofixed from error "${e.n(r)}"`),[!0,a.fixed])}return[!1,s&&"errors"in s?s.errors:[e.n(r)]]}function V(e){return{...this,f:!0,i:e}}function I(e){return{...this,s:e,e:`${this.e}_with_predicate`}}function q(){return{...this,c:!0}}function E(e){return`Type '${A(e)}' is not assignable to '${this.e}'`}function K(){return{...this,l:!0,e:`${this.e}_or_nullable`}}function N(){return{...this,u:!0,e:`${this.e}_or_nullish`}}var o={withFallback:S,where:I,optional:q,n:E,nullable:K,withAutofix:V,nullish:N},U={...o,r(e,r){return i(this,e,r,()=>e===void 0)},e:"undefined"},z={...o,r(e,r){return i(this,e,r,()=>e===null)},e:"null"},B={...o,r(e,r){return i(this,e,r,()=>!0)},e:"any"},W={...o,r(e,r){return i(this,e,r,()=>!0)},e:"unknown"},D={...o,r(e,r){return i(this,e,r,()=>typeof e=="boolean")},e:"boolean"},M={...o,r(e,r){return i(this,e,r,()=>typeof e=="string")},e:"string"},L={...o,r(e,r){return i(this,e,r,()=>typeof e=="number"&&!Number.isNaN(e))},e:"number"},Z={...o,r(e,r){return i(this,e,r,()=>typeof e=="object"&&e instanceof Date&&!Number.isNaN(e.getTime()))},e:"date"};function G(e){return{...o,r(r,n){return i(this,r,n,()=>r instanceof e)},e:`instanceof_${e.name?`_${e.name}`:""}`}}function H(...e){if(e.length===0)throw new Error("rc_literal requires at least one literal");return{...o,r(r,n){return i(this,r,n,()=>{for(let t of e)if(r===t)return!0;return!1})},e:e.length==1?`${A(e[0])}_literal`:"literals"}}function J(...e){if(e.length===0)throw new Error("Unions should have at least one type");return{...o,r(r,n){return i(this,r,n,()=>{for(let t of e)if(t.r(r,n)[0])return!0;return!1})},e:e.map(r=>r.e).join(" | ")}}function v(e,r){return{...r,a:e}}var Q=v;function h(e,r){if(!r)return e;if(e.startsWith("$[")||e.startsWith("$.")){let[n="",t]=e.split(": "),s=n.slice(1);return`$${r}${s}: ${t}`}return`$${r}: ${e}`}function $(e,{normalizeKeysFrom:r}={}){return{...o,t:e,e:"object",y:!0,r(n,t){return i(this,n,t,()=>{if(!P(n))return!1;let s=new Set(Object.keys(n)),a={},c=[],y=t.path;for(let[u,p]of Object.entries(e)){let _=u,d=`.${u}`;t.path=`${y}${d}`;let l,f=u;if(p.a&&(l=n[p.a],f=p.a),l===void 0&&(l=n[u],f=u),l===void 0&&r==="snake_case"){let T=F(u);l=n[T],f=T}s.delete(f);let[b,g]=p.r(l,t);if(b)a[_]=g;else{let T=g;for(let x of T)c.push(h(x,d))}}if(this.e==="strict_obj"&&s.size>0)for(let u of s)c.push(`Key '${u}' is not defined in the object shape`);return c.length>0?{errors:c}:this.e.startsWith("extends_object")?{data:{...n,...a}}:{data:a}})}}}function X(e){return{...$(e),e:"extends_object"}}function Y(e){return e.t}function ee(e){return{...$(e),e:"strict_obj"}}function re(e,r){return $({...e.t,...r.t})}function ne(e,{checkKey:r,looseCheck:n}={}){return{...o,e:`record<string, ${e.e}>`,r(t,s){return i(this,t,s,()=>{if(!P(t))return!1;let a={},c=[];for(let[y,u]of Object.entries(t)){let p=`.${y}`;if(r&&!r(y)){c.push(h(`Key '${y}' is not allowed`,p));continue}let _=t[y],[d,l]=e.r(u,s);if(d)a[y]=_;else{let f=l;for(let b of f)c.push(h(b,p))}}if(c.length>0)if(n)s.warnings.push(...c);else return{errors:c};return{data:a}})}}}function m(e,r){if(typeof r=="string"&&!e.t?.[r])throw new Error(`${e.e} can't be used with unique key option`)}function j(e,r,n,t=!1,s){let a=-1,c=[],y=[],u=new Set,p=n.path;for(let _ of e){a++;let d=Array.isArray(r)?r[a]:r,l=`[${a}]`;n.path=`${p}${l}`;let f=d.r(_,n),[b,g]=f,T=s?.unique;if(b&&T){let R=g,k=typeof T=="string";k&&(R=g[T]),u.has(R)?f=[!1,[k?h(`Type '${d.t?.[T]?.e}' with value "${R}" is not unique`,`.${T}`):`${d.e} value is not unique`]]:u.add(R)}let[x,w]=f;if(x)y.push(w);else if(t){c.push(w.map(R=>h(R,l)));continue}else return{errors:w.map(R=>h(R,l))}}if(c.length>0){if(y.length===0)return{errors:c.slice(0,5).flat()};n.warnings.push(...c.flat())}return{data:y}}function te(e,r){return m(e,r?.unique),{...o,e:`${e.e}[]`,r(n,t){return i(this,n,t,()=>Array.isArray(n)?n.length===0?!0:j.call(this,n,e,t,!1,r):!1)}}}function se(e,r){return m(e,r?.unique),{...o,e:`${e.e}[]`,r(n,t){return i(this,n,t,()=>Array.isArray(n)?n.length===0?!0:j.call(this,n,e,t,!0,r):!1)}}}function ae(e){return{...o,e:`[${e.map(r=>r.e).join(", ")}]`,r(r,n){return i(this,r,n,()=>!Array.isArray(r)||r.length!==e.length?!1:j.call(this,r,e,n))}}}function O(e,r){let n={warnings:[],path:""},[t,s]=r.r(e,n);return t?{error:!1,data:s,warnings:n.warnings.length>0?n.warnings:!1}:{error:!0,errors:s}}function oe(e){return r=>O(r,e)}function ie(e,r){let n=O(e,r);return n.error?{data:null,errors:n.errors,warnings:!1}:{data:n.data,errors:!1,warnings:n.warnings}}function C(e,r){let n={warnings:[],path:""};return!!r.r(e,n)[0]}function ce(e){return r=>C(r,e)}function ue(e){return{...o,e:"recursive",r(r,n){return e().r(r,n)}}}function le(e,r){return{...o,e:`transform_from_${e.e}`,r(n,t){let[s,a]=e.r(n,t);return s?[!0,r(a)]:[!1,a]}}}function A(e){if(typeof e=="object"){if(Array.isArray(e))return"array";if(!e)return"null"}return typeof e}function P(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function F(e){return e.replace(/\W+/g," ").split(/ |\B(?=[A-Z])/).map(r=>r.toLowerCase()).join("_")}export{U as a,z as b,B as c,W as d,D as e,M as f,L as g,Z as h,G as i,H as j,J as k,v as l,Q as m,$ as n,X as o,Y as p,ee as q,re as r,ne as s,te as t,se as u,ae as v,O as w,oe as x,ie as y,C as z,ce as A,ue as B,le as C,F as D};
|
package/dist/runcheck.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var j=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var K=Object.getOwnPropertyNames;var N=Object.prototype.hasOwnProperty;var v=(e,r)=>{for(var n in r)j(e,n,{get:r[n],enumerable:!0})},C=(e,r,n,t)=>{if(r&&typeof r=="object"||typeof r=="function")for(let s of K(r))!N.call(e,s)&&s!==n&&j(e,s,{get:()=>r[s],enumerable:!(t=E(r,s))||t.enumerable});return e};var F=e=>C(j({},"__esModule",{value:!0}),e);var _e={};v(_e,{rc_any:()=>H,rc_array:()=>le,rc_boolean:()=>Q,rc_date:()=>ee,rc_extends_obj:()=>ae,rc_get_obj_schema:()=>oe,rc_instanceof:()=>re,rc_is_valid:()=>S,rc_literals:()=>ne,rc_loose_array:()=>ye,rc_loose_parse:()=>pe,rc_null:()=>G,rc_number:()=>Y,rc_obj_intersection:()=>ce,rc_object:()=>x,rc_parse:()=>m,rc_parser:()=>Te,rc_record:()=>ue,rc_recursive:()=>Re,rc_rename_from_key:()=>A,rc_rename_key:()=>se,rc_strict_obj:()=>ie,rc_string:()=>X,rc_transform:()=>he,rc_tuple:()=>fe,rc_undefined:()=>Z,rc_union:()=>te,rc_unknown:()=>J,rc_validator:()=>de,snakeCase:()=>q});module.exports=F(_e);function U(e){return{...this,o:e}}function i(e,r,n,t){if(e.c&&r===void 0)return[!0,r];if(e.u&&r==null)return[!0,r];if(e.l&&r===null)return[!0,r];let s=t();if(s&&(s===!0||"data"in s)){let a=s===!0?r:s.data;return e.s&&!e.s(a)?[!1,[e.n(a)]]:[!0,a]}if(e.o!==void 0)return n.warnings.push(`Fallback used, ${e.n(r)}`),[!0,e.o];if(e.y&&e.i){let a=e.i(r);if(a)return e.s&&!e.s(a.fixed)?[!1,[e.n(a.fixed)]]:(n.warnings.push(`${n.path?`$${n.path}: `:""}Autofixed from error "${e.n(r)}"`),[!0,a.fixed])}return[!1,s&&"errors"in s?s.errors:[e.n(r)]]}function z(e){return{...this,y:!0,i:e}}function B(e){return{...this,s:e,e:`${this.e}_with_predicate`}}function W(){return{...this,c:!0}}function D(e){return`Type '${V(e)}' is not assignable to '${this.e}'`}function M(){return{...this,l:!0,e:`${this.e}_or_nullable`}}function L(){return{...this,u:!0,e:`${this.e}_or_nullish`}}var o={withFallback:U,where:B,optional:W,n:D,nullable:M,withAutofix:z,nullish:L},Z={...o,r(e,r){return i(this,e,r,()=>e===void 0)},e:"undefined"},G={...o,r(e,r){return i(this,e,r,()=>e===null)},e:"null"},H={...o,r(e,r){return i(this,e,r,()=>!0)},e:"any"},J={...o,r(e,r){return i(this,e,r,()=>!0)},e:"unknown"},Q={...o,r(e,r){return i(this,e,r,()=>typeof e=="boolean")},e:"boolean"},X={...o,r(e,r){return i(this,e,r,()=>typeof e=="string")},e:"string"},Y={...o,r(e,r){return i(this,e,r,()=>typeof e=="number"&&!Number.isNaN(e))},e:"number"},ee={...o,r(e,r){return i(this,e,r,()=>typeof e=="object"&&e instanceof Date&&!Number.isNaN(e.getTime()))},e:"date"};function re(e){return{...o,r(r,n){return i(this,r,n,()=>r instanceof e)},e:`instanceof_${e.name?`_${e.name}`:""}`}}function ne(...e){if(e.length===0)throw new Error("rc_literal requires at least one literal");return{...o,r(r,n){return i(this,r,n,()=>{for(let t of e)if(r===t)return!0;return!1})},e:e.length==1?`${V(e[0])}_literal`:"literals"}}function te(...e){if(e.length===0)throw new Error("Unions should have at least one type");return{...o,r(r,n){return i(this,r,n,()=>{for(let t of e)if(t.r(r,n)[0])return!0;return!1})},e:e.map(r=>r.e).join(" | ")}}function A(e,r){return{...r,a:e}}var se=A;function h(e,r){if(!r)return e;if(e.startsWith("$[")||e.startsWith("$.")){let[n="",t]=e.split(": "),s=n.slice(1);return`$${r}${s}: ${t}`}return`$${r}: ${e}`}function x(e,{normalizeKeysFrom:r}={}){return{...o,t:e,e:"object",f:!0,r(n,t){return i(this,n,t,()=>{if(!I(n))return!1;let s=new Set(Object.keys(n)),a={},c=[],y=t.path;for(let[u,p]of Object.entries(e)){let _=u,d=`.${u}`;t.path=`${y}${d}`;let l,f=u;if(p.a&&(l=n[p.a],f=p.a),l===void 0&&(l=n[u],f=u),l===void 0&&r==="snake_case"){let T=q(u);l=n[T],f=T}s.delete(f);let[b,g]=p.r(l,t);if(b)a[_]=g;else{let T=g;for(let w of T)c.push(h(w,d))}}if(this.e==="strict_obj"&&s.size>0)for(let u of s)c.push(`Key '${u}' is not defined in the object shape`);return c.length>0?{errors:c}:this.e.startsWith("extends_object")?{data:{...n,...a}}:{data:a}})}}}function ae(e){return{...x(e),e:"extends_object"}}function oe(e){return e.t}function ie(e){return{...x(e),e:"strict_obj"}}function ce(e,r){return x({...e.t,...r.t})}function ue(e,{checkKey:r,looseCheck:n}={}){return{...o,e:`record<string, ${e.e}>`,r(t,s){return i(this,t,s,()=>{if(!I(t))return!1;let a={},c=[];for(let[y,u]of Object.entries(t)){let p=`.${y}`;if(r&&!r(y)){c.push(h(`Key '${y}' is not allowed`,p));continue}let _=t[y],[d,l]=e.r(u,s);if(d)a[y]=_;else{let f=l;for(let b of f)c.push(h(b,p))}}if(c.length>0)if(n)s.warnings.push(...c);else return{errors:c};return{data:a}})}}}function P(e,r){if(typeof r=="string"&&!e.t?.[r])throw new Error(`${e.e} can't be used with unique key option`)}function k(e,r,n,t=!1,s){let a=-1,c=[],y=[],u=new Set,p=n.path;for(let _ of e){a++;let d=Array.isArray(r)?r[a]:r,l=`[${a}]`;n.path=`${p}${l}`;let f=d.r(_,n),[b,g]=f,T=s?.unique;if(b&&T){let R=g,O=typeof T=="string";O&&(R=g[T]),u.has(R)?f=[!1,[O?h(`Type '${d.t?.[T]?.e}' with value "${R}" is not unique`,`.${T}`):`${d.e} value is not unique`]]:u.add(R)}let[w,$]=f;if(w)y.push($);else if(t){c.push($.map(R=>h(R,l)));continue}else return{errors:$.map(R=>h(R,l))}}if(c.length>0){if(y.length===0)return{errors:c.slice(0,5).flat()};n.warnings.push(...c.flat())}return{data:y}}function le(e,r){return P(e,r?.unique),{...o,e:`${e.e}[]`,r(n,t){return i(this,n,t,()=>Array.isArray(n)?n.length===0?!0:k.call(this,n,e,t,!1,r):!1)}}}function ye(e,r){return P(e,r?.unique),{...o,e:`${e.e}[]`,r(n,t){return i(this,n,t,()=>Array.isArray(n)?n.length===0?!0:k.call(this,n,e,t,!0,r):!1)}}}function fe(e){return{...o,e:`[${e.map(r=>r.e).join(", ")}]`,r(r,n){return i(this,r,n,()=>!Array.isArray(r)||r.length!==e.length?!1:k.call(this,r,e,n))}}}function m(e,r){let n={warnings:[],path:""},[t,s]=r.r(e,n);return t?{error:!1,data:s,warnings:n.warnings.length>0?n.warnings:!1}:{error:!0,errors:s}}function Te(e){return r=>m(r,e)}function pe(e,r){let n=m(e,r);return n.error?{data:null,errors:n.errors,warnings:!1}:{data:n.data,errors:!1,warnings:n.warnings}}function S(e,r){let n={warnings:[],path:""};return!!r.r(e,n)[0]}function de(e){return r=>S(r,e)}function Re(e){return{...o,e:"recursive",r(r,n){return e().r(r,n)}}}function he(e,r){return{...o,e:`transform_from_${e.e}`,r(n,t){let[s,a]=e.r(n,t);return s?[!0,r(a)]:[!1,a]}}}function V(e){if(typeof e=="object"){if(Array.isArray(e))return"array";if(!e)return"null"}return typeof e}function I(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function q(e){return e.replace(/\W+/g," ").split(/ |\B(?=[A-Z])/).map(r=>r.toLowerCase()).join("_")}0&&(module.exports={rc_any,rc_array,rc_boolean,rc_date,rc_extends_obj,rc_get_obj_schema,rc_instanceof,rc_is_valid,rc_literals,rc_loose_array,rc_loose_parse,rc_null,rc_number,rc_obj_intersection,rc_object,rc_parse,rc_parser,rc_record,rc_recursive,rc_rename_from_key,rc_rename_key,rc_strict_obj,rc_string,rc_transform,rc_tuple,rc_undefined,rc_union,rc_unknown,rc_validator,snakeCase});
|
package/dist/runcheck.d.ts
CHANGED
|
@@ -32,7 +32,9 @@ declare const rc_date: RcType<Date>;
|
|
|
32
32
|
declare function rc_instanceof<T extends Function>(classToCheck: T): RcType<T>;
|
|
33
33
|
declare function rc_literals<T extends (string | number | boolean)[]>(...literals: T): RcType<T[number]>;
|
|
34
34
|
declare function rc_union<T extends RcType<any>[]>(...types: T): RcType<RcInferType<T[number]>>;
|
|
35
|
-
declare function
|
|
35
|
+
declare function rc_rename_from_key<T extends RcType<any>>(alternativeNames: string, type: T): RcType<RcInferType<T>>;
|
|
36
|
+
/** @deprecated use `rc_rename_from_key` instead */
|
|
37
|
+
declare const rc_rename_key: typeof rc_rename_from_key;
|
|
36
38
|
type RcObject = Record<string, RcType<any>>;
|
|
37
39
|
type TypeOfObjectType<T extends RcObject> = {
|
|
38
40
|
[K in keyof T]: RcInferType<T[K]>;
|
|
@@ -41,6 +43,7 @@ type RcObjType<T extends RcObject> = RcType<TypeOfObjectType<T>>;
|
|
|
41
43
|
declare function rc_object<T extends RcObject>(shape: T, { normalizeKeysFrom }?: {
|
|
42
44
|
normalizeKeysFrom?: 'snake_case';
|
|
43
45
|
}): RcObjType<T>;
|
|
46
|
+
declare function rc_extends_obj<T extends RcObject>(shape: T): RcObjType<T>;
|
|
44
47
|
declare function rc_get_obj_schema<T extends RcObject>(type: RcObjType<T>): T;
|
|
45
48
|
/** return an error if the obj has more keys than the expected type */
|
|
46
49
|
declare function rc_strict_obj<T extends RcObject>(shape: T): RcObjType<T>;
|
|
@@ -87,4 +90,4 @@ declare function rc_recursive(type: () => RcType<any>): RcType<any>;
|
|
|
87
90
|
/** validate a input or subset of input and transform the valid result */
|
|
88
91
|
declare function rc_transform<Input, Transformed>(type: RcType<Input>, transform: (input: Input) => Transformed): RcType<Transformed>;
|
|
89
92
|
|
|
90
|
-
export { RcInferType, RcParseResult, RcParser, RcType, rc_any, rc_array, rc_boolean, rc_date, rc_get_obj_schema, rc_instanceof, rc_is_valid, rc_literals, rc_loose_array, rc_loose_parse, rc_null, rc_number, rc_obj_intersection, rc_object, rc_parse, rc_parser, rc_record, rc_recursive, rc_rename_key, rc_strict_obj, rc_string, rc_transform, rc_tuple, rc_undefined, rc_union, rc_unknown, rc_validator };
|
|
93
|
+
export { RcInferType, RcParseResult, RcParser, RcType, rc_any, rc_array, rc_boolean, rc_date, rc_extends_obj, rc_get_obj_schema, rc_instanceof, rc_is_valid, rc_literals, rc_loose_array, rc_loose_parse, rc_null, rc_number, rc_obj_intersection, rc_object, rc_parse, rc_parser, rc_record, rc_recursive, rc_rename_from_key, rc_rename_key, rc_strict_obj, rc_string, rc_transform, rc_tuple, rc_undefined, rc_union, rc_unknown, rc_validator };
|
package/dist/runcheck.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{A,B,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-
|
|
1
|
+
import{A,B,C,D,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z}from"./chunk-NNEEJPIK.js";export{c as rc_any,t as rc_array,e as rc_boolean,h as rc_date,o as rc_extends_obj,p as rc_get_obj_schema,i as rc_instanceof,z as rc_is_valid,j as rc_literals,u as rc_loose_array,y as rc_loose_parse,b as rc_null,g as rc_number,r as rc_obj_intersection,n as rc_object,w as rc_parse,x as rc_parser,s as rc_record,B as rc_recursive,l as rc_rename_from_key,m as rc_rename_key,q as rc_strict_obj,f as rc_string,C as rc_transform,v as rc_tuple,a as rc_undefined,k as rc_union,d as rc_unknown,A as rc_validator,D as snakeCase};
|
package/package.json
CHANGED
package/dist/chunk-OEIPIHQO.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function S(e){return{...this,o:e}}function i(e,r,n,t){if(e.c&&r===void 0)return[!0,r];if(e.u&&r==null)return[!0,r];if(e.l&&r===null)return[!0,r];let s=t();if(s&&(s===!0||"data"in s)){let a=s===!0?r:s.data;return e.s&&!e.s(a)?[!1,[e.n(a)]]:[!0,a]}if(e.o!==void 0)return n.warnings.push(`Fallback used, ${e.n(r)}`),[!0,e.o];if(e.f&&e.i){let a=e.i(r);if(a)return e.s&&!e.s(a.fixed)?[!1,[e.n(a.fixed)]]:(n.warnings.push(`${n.path?`$${n.path}: `:""}Autofixed from error "${e.n(r)}"`),[!0,a.fixed])}return[!1,s&&"errors"in s?s.errors:[e.n(r)]]}function V(e){return{...this,f:!0,i:e}}function I(e){return{...this,s:e,e:`${this.e}_with_predicate`}}function q(){return{...this,c:!0}}function E(e){return`Type '${A(e)}' is not assignable to '${this.e}'`}function K(){return{...this,l:!0,e:`${this.e}_or_nullable`}}function N(){return{...this,u:!0,e:`${this.e}_or_nullish`}}var o={withFallback:S,where:I,optional:q,n:E,nullable:K,withAutofix:V,nullish:N},F={...o,r(e,r){return i(this,e,r,()=>e===void 0)},e:"undefined"},U={...o,r(e,r){return i(this,e,r,()=>e===null)},e:"null"},z={...o,r(e,r){return i(this,e,r,()=>!0)},e:"any"},B={...o,r(e,r){return i(this,e,r,()=>!0)},e:"unknown"},D={...o,r(e,r){return i(this,e,r,()=>typeof e=="boolean")},e:"boolean"},M={...o,r(e,r){return i(this,e,r,()=>typeof e=="string")},e:"string"},W={...o,r(e,r){return i(this,e,r,()=>typeof e=="number"&&!Number.isNaN(e))},e:"number"},L={...o,r(e,r){return i(this,e,r,()=>typeof e=="object"&&e instanceof Date&&!Number.isNaN(e.getTime()))},e:"date"};function Z(e){return{...o,r(r,n){return i(this,r,n,()=>r instanceof e)},e:`instanceof_${e.name?`_${e.name}`:""}`}}function G(...e){if(e.length===0)throw new Error("rc_literal requires at least one literal");return{...o,r(r,n){return i(this,r,n,()=>{for(let t of e)if(r===t)return!0;return!1})},e:e.length==1?`${A(e[0])}_literal`:"literals"}}function H(...e){if(e.length===0)throw new Error("Unions should have at least one type");return{...o,r(r,n){return i(this,r,n,()=>{for(let t of e)if(t.r(r,n)[0])return!0;return!1})},e:e.map(r=>r.e).join(" | ")}}function J(e,r){return{...r,a:e}}function h(e,r){if(!r)return e;if(e.startsWith("$[")||e.startsWith("$.")){let[n="",t]=e.split(": "),s=n.slice(1);return`$${r}${s}: ${t}`}return`$${r}: ${e}`}function j(e,{normalizeKeysFrom:r}={}){return{...o,t:e,e:"object",y:!0,r(n,t){return i(this,n,t,()=>{if(!P(n))return!1;let s=new Set(Object.keys(n)),a={},c=[],y=t.path;for(let[u,p]of Object.entries(e)){let _=u,d=`.${u}`;t.path=`${y}${d}`;let l,f=u;if(p.a&&(l=n[p.a],f=p.a),l===void 0&&(l=n[u],f=u),l===void 0&&r==="snake_case"){let T=C(u);l=n[T],f=T}s.delete(f);let[b,g]=p.r(l,t);if(b)a[_]=g;else{let T=g;for(let x of T)c.push(h(x,d))}}if(this.e==="strict_obj"&&s.size>0)for(let u of s)c.push(`Key '${u}' is not defined in the object shape`);return c.length>0?{errors:c}:{data:a}})}}}function Q(e){return e.t}function X(e){return{...j(e),e:"strict_obj"}}function Y(e,r){return j({...e.t,...r.t})}function ee(e,{checkKey:r,looseCheck:n}={}){return{...o,e:`record<string, ${e.e}>`,r(t,s){return i(this,t,s,()=>{if(!P(t))return!1;let a={},c=[];for(let[y,u]of Object.entries(t)){let p=`.${y}`;if(r&&!r(y)){c.push(h(`Key '${y}' is not allowed`,p));continue}let _=t[y],[d,l]=e.r(u,s);if(d)a[y]=_;else{let f=l;for(let b of f)c.push(h(b,p))}}if(c.length>0)if(n)s.warnings.push(...c);else return{errors:c};return{data:a}})}}}function m(e,r){if(typeof r=="string"&&!e.t?.[r])throw new Error(`${e.e} can't be used with unique key option`)}function $(e,r,n,t=!1,s){let a=-1,c=[],y=[],u=new Set,p=n.path;for(let _ of e){a++;let d=Array.isArray(r)?r[a]:r,l=`[${a}]`;n.path=`${p}${l}`;let f=d.r(_,n),[b,g]=f,T=s?.unique;if(b&&T){let R=g,k=typeof T=="string";k&&(R=g[T]),u.has(R)?f=[!1,[k?h(`Type '${d.t?.[T]?.e}' with value "${R}" is not unique`,`.${T}`):`${d.e} value is not unique`]]:u.add(R)}let[x,w]=f;if(x)y.push(w);else if(t){c.push(w.map(R=>h(R,l)));continue}else return{errors:w.map(R=>h(R,l))}}if(c.length>0){if(y.length===0)return{errors:c.slice(0,5).flat()};n.warnings.push(...c.flat())}return{data:y}}function re(e,r){return m(e,r?.unique),{...o,e:`${e.e}[]`,r(n,t){return i(this,n,t,()=>Array.isArray(n)?n.length===0?!0:$.call(this,n,e,t,!1,r):!1)}}}function ne(e,r){return m(e,r?.unique),{...o,e:`${e.e}[]`,r(n,t){return i(this,n,t,()=>Array.isArray(n)?n.length===0?!0:$.call(this,n,e,t,!0,r):!1)}}}function te(e){return{...o,e:`[${e.map(r=>r.e).join(", ")}]`,r(r,n){return i(this,r,n,()=>!Array.isArray(r)||r.length!==e.length?!1:$.call(this,r,e,n))}}}function O(e,r){let n={warnings:[],path:""},[t,s]=r.r(e,n);return t?{error:!1,data:s,warnings:n.warnings.length>0?n.warnings:!1}:{error:!0,errors:s}}function se(e){return r=>O(r,e)}function ae(e,r){let n=O(e,r);return n.error?{data:null,errors:n.errors,warnings:!1}:{data:n.data,errors:!1,warnings:n.warnings}}function v(e,r){let n={warnings:[],path:""};return!!r.r(e,n)[0]}function oe(e){return r=>v(r,e)}function ie(e){return{...o,e:"recursive",r(r,n){return e().r(r,n)}}}function ce(e,r){return{...o,e:`transform_from_${e.e}`,r(n,t){let[s,a]=e.r(n,t);return s?[!0,r(a)]:[!1,a]}}}function A(e){if(typeof e=="object"){if(Array.isArray(e))return"array";if(!e)return"null"}return typeof e}function P(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function C(e){return e.replace(/\W+/g," ").split(/ |\B(?=[A-Z])/).map(r=>r.toLowerCase()).join("_")}export{F as a,U as b,z as c,B as d,D as e,M as f,W as g,L as h,Z as i,G as j,H as k,J as l,j as m,Q as n,X as o,Y as p,ee as q,re as r,ne as s,te as t,O as u,se as v,ae as w,v as x,oe as y,ie as z,ce as A,C as B};
|