hi-datatype-operation
Version:
TypeScript 原生类型守卫生成器,自动同步类型定义与运行时验证逻辑。支持装饰器语法、类型谓词组合与泛型约束验证,提供 VS Code 智能提示插件。
2 lines • 1.41 kB
JavaScript
var r=n=>typeof n=="string",i=n=>typeof n=="number"&&!Number.isNaN(n),a=n=>typeof n=="boolean",b=n=>n===null,y=n=>n===void 0,f=n=>i(n)||r(n)&&!Number.isNaN(Number(n)),c=n=>n===null||typeof n!="object"&&typeof n!="function",m=n=>n!=null&&c(n),x=n=>n===null?void 0:n;var w=(...n)=>e=>n.some(t=>t(e)),u=class{constructor(e){this.value=e;}get isString(){return r(this.value)}get isNumber(){return i(this.value)}matches(e){return e(this.value)}},v=n=>new u(n);var g=n=>n!=null&&typeof n[Symbol.iterator]=="function",N=(n,e)=>Array.isArray(n)&&n.every(e),j=(n,...e)=>Array.isArray(n)&&n.length===e.length&&e.every((t,o)=>t(n[o]));var p=Object.prototype.toString;function l(n){return p.call(n).slice(8,-1).toLowerCase()}var S=n=>typeof n=="object"&&n!==null,s=n=>l(n)==="object",h=n=>s(n)?Object.keys(n).length===0:false,A=n=>s(n)?Object.keys(n).length>0:false,P=(n,e)=>s(n)?Object.entries(e).every(([t,o])=>t in n&&o(n[t])):false,E=n=>l(n)==="function";export{u as TypeDetector,x as checkNullToUndefined,v as detect,l as getDataType,g as isArrayLike,a as isBoolean,h as isEmptyObject,E as isFunction,m as isNonNullablePrimitive,A as isNotEmptyObject,b as isNull,i as isNumber,f as isNumeric,S as isObjectLike,w as isOneOf,c as isPrimitive,s as isStrictObject,r as isString,j as isTuple,y as isUndefined,N as isUniformArray,P as matchStructure};//# sourceMappingURL=index.js.map
//# sourceMappingURL=index.js.map