@pro-functional/objects
Advanced tools
| "use strict";var r=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var h=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var u=(e,t)=>{for(var n in t)r(e,n,{get:t[n],enumerable:!0})},T=(e,t,n,c)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of h(t))!p.call(e,o)&&o!==n&&r(e,o,{get:()=>t[o],enumerable:!(c=a(t,o))||c.enumerable});return e};var b=e=>T(r({},"__esModule",{value:!0}),e);var y={};u(y,{checkObject:()=>x,isObject:()=>i,isObjectWithProps:()=>m,makeEnumResolver:()=>k,matchesEnum:()=>g,matchesList:()=>w,matchesNumber:()=>d,matchesOneOf:()=>j,matchesString:()=>s});module.exports=b(y);var k=(e,t)=>n=>new Map(Object.values(e).map(o=>[o.toString(),o])).get(n)||t;var i=e=>typeof e=="object"&&!!e,m=(e,...t)=>i(e)&&t.every(n=>n in e),x=e=>{let t=(c,o)=>n(o(e[c]),e),n=(c,o)=>({isMatch:()=>c,object:o,withProp:t});return n(!!e,e)},s=e=>typeof e=="string",d=e=>typeof e=="number",j=(e,t)=>s(e)&&t.some(n=>e===n),g=e=>t=>s(t)&&Object.keys(e).includes(t),w=e=>t=>Array.isArray(t)&&t.every(e); | ||
| //# sourceMappingURL=index.cjs.map |
| { | ||
| "version": 3, | ||
| "sources": ["../../src/index.ts", "../../src/enum.ts", "../../src/objects.ts"], | ||
| "sourcesContent": ["export * from './enum'\nexport * from './objects'\n", "export const makeEnumResolver =\n <T extends string>(record: Record<string, T>, fallback: T) =>\n (value: string) => {\n const resolver = new Map(\n Object.values(record).map((item) => [item.toString(), item])\n )\n\n return resolver.get(value) || fallback\n }\n", "export const isObject = (value?: unknown): value is Record<string, unknown> =>\n typeof value === 'object' && !!value\n\nexport const isObjectWithProps = <K extends string>(\n value?: unknown,\n ...props: K[]\n): value is { [k in K]: unknown } =>\n isObject(value) && props.every((prop) => prop in value)\n\ntype MatchFunc<T> = (param: T) => boolean\n\ninterface MatchWithPropFunc<T extends object> {\n <K extends keyof T>(\n key: K,\n match: MatchFunc<T[K]>\n ): CheckObjectIntermediate<T>\n}\n\ninterface CheckObjectIntermediate<T extends object> {\n isMatch: () => boolean\n object: T\n withProp: MatchWithPropFunc<T>\n}\n\nexport const checkObject = <T extends object>(\n value: T\n): CheckObjectIntermediate<T> => {\n const withProp = <K extends keyof T>(key: K, matchFunc: MatchFunc<T[K]>) =>\n next(matchFunc(value[key]), value)\n\n const next = (result: boolean, object: T): CheckObjectIntermediate<T> => ({\n isMatch: () => result,\n object,\n withProp,\n })\n\n return next(!!value, value)\n}\n\nexport const matchesString = (value: unknown): value is string =>\n typeof value === 'string'\n\nexport const matchesNumber = (value: unknown): value is number =>\n typeof value === 'number'\n\nexport const matchesOneOf = <K extends string>(\n value: unknown,\n sample: K[]\n): value is K => matchesString(value) && sample.some((key) => value === key)\n\nexport const matchesEnum =\n (enumerated: Record<string, string>) => (value: unknown) =>\n matchesString(value) && Object.keys(enumerated).includes(value)\n\nexport const matchesList =\n <T>(matchFunc: MatchFunc<T>) =>\n (value: unknown) =>\n Array.isArray(value) && value.every(matchFunc)\n"], | ||
| "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,EAAA,aAAAC,EAAA,sBAAAC,EAAA,qBAAAC,EAAA,gBAAAC,EAAA,gBAAAC,EAAA,kBAAAC,EAAA,iBAAAC,EAAA,kBAAAC,IAAA,eAAAC,EAAAX,GCAO,IAAMY,EACT,CAAmBC,EAA2BC,IAC7CC,GACoB,IAAI,IACjB,OAAO,OAAOF,CAAM,EAAE,IAAKG,GAAS,CAACA,EAAK,SAAS,EAAGA,CAAI,CAAC,CAC/D,EAEgB,IAAID,CAAK,GAAKD,ECP/B,IAAMG,EAAYC,GACrB,OAAOA,GAAU,UAAY,CAAC,CAACA,EAEtBC,EAAoB,CAC7BD,KACGE,IAEHH,EAASC,CAAK,GAAKE,EAAM,MAAOC,GAASA,KAAQH,CAAK,EAiB7CI,EACTJ,GAC6B,CAC7B,IAAMK,EAAW,CAAoBC,EAAQC,IACzCC,EAAKD,EAAUP,EAAMM,CAAG,CAAC,EAAGN,CAAK,EAE/BQ,EAAO,CAACC,EAAiBC,KAA2C,CACtE,QAAS,IAAMD,EACf,OAAAC,EACA,SAAAL,CACJ,GAEA,OAAOG,EAAK,CAAC,CAACR,EAAOA,CAAK,CAC9B,EAEaW,EAAiBX,GAC1B,OAAOA,GAAU,SAERY,EAAiBZ,GAC1B,OAAOA,GAAU,SAERa,EAAe,CACxBb,EACAc,IACaH,EAAcX,CAAK,GAAKc,EAAO,KAAMR,GAAQN,IAAUM,CAAG,EAE9DS,EACRC,GAAwChB,GACrCW,EAAcX,CAAK,GAAK,OAAO,KAAKgB,CAAU,EAAE,SAAShB,CAAK,EAEzDiB,EACLV,GACHP,GACG,MAAM,QAAQA,CAAK,GAAKA,EAAM,MAAMO,CAAS", | ||
| "names": ["index_exports", "__export", "checkObject", "isObject", "isObjectWithProps", "makeEnumResolver", "matchesEnum", "matchesList", "matchesNumber", "matchesOneOf", "matchesString", "__toCommonJS", "makeEnumResolver", "record", "fallback", "value", "item", "isObject", "value", "isObjectWithProps", "props", "prop", "checkObject", "withProp", "key", "matchFunc", "next", "result", "object", "matchesString", "matchesNumber", "matchesOneOf", "sample", "matchesEnum", "enumerated", "matchesList"] | ||
| } |
| export declare const makeEnumResolver: <T extends string>(record: Record<string, T>, fallback: T) => (value: string) => T; |
| export * from './enum'; | ||
| export * from './objects'; |
| export declare const isObject: (value?: unknown) => value is Record<string, unknown>; | ||
| export declare const isObjectWithProps: <K extends string>(value?: unknown, ...props: K[]) => value is { [k in K]: unknown; }; | ||
| type MatchFunc<T> = (param: T) => boolean; | ||
| interface MatchWithPropFunc<T extends object> { | ||
| <K extends keyof T>(key: K, match: MatchFunc<T[K]>): CheckObjectIntermediate<T>; | ||
| } | ||
| interface CheckObjectIntermediate<T extends object> { | ||
| isMatch: () => boolean; | ||
| object: T; | ||
| withProp: MatchWithPropFunc<T>; | ||
| } | ||
| export declare const checkObject: <T extends object>(value: T) => CheckObjectIntermediate<T>; | ||
| export declare const matchesString: (value: unknown) => value is string; | ||
| export declare const matchesNumber: (value: unknown) => value is number; | ||
| export declare const matchesOneOf: <K extends string>(value: unknown, sample: K[]) => value is K; | ||
| export declare const matchesEnum: (enumerated: Record<string, string>) => (value: unknown) => boolean; | ||
| export declare const matchesList: <T>(matchFunc: MatchFunc<T>) => (value: unknown) => boolean; | ||
| export {}; |
Sorry, the diff of this file is not supported yet
| var i=(e,t)=>n=>new Map(Object.values(e).map(o=>[o.toString(),o])).get(n)||t;var s=e=>typeof e=="object"&&!!e,h=(e,...t)=>s(e)&&t.every(n=>n in e),p=e=>{let t=(c,o)=>n(o(e[c]),e),n=(c,o)=>({isMatch:()=>c,object:o,withProp:t});return n(!!e,e)},r=e=>typeof e=="string",u=e=>typeof e=="number",T=(e,t)=>r(e)&&t.some(n=>e===n),b=e=>t=>r(t)&&Object.keys(e).includes(t),k=e=>t=>Array.isArray(t)&&t.every(e);export{p as checkObject,s as isObject,h as isObjectWithProps,i as makeEnumResolver,b as matchesEnum,k as matchesList,u as matchesNumber,T as matchesOneOf,r as matchesString}; | ||
| //# sourceMappingURL=index.mjs.map |
| { | ||
| "version": 3, | ||
| "sources": ["../../src/enum.ts", "../../src/objects.ts"], | ||
| "sourcesContent": ["export const makeEnumResolver =\n <T extends string>(record: Record<string, T>, fallback: T) =>\n (value: string) => {\n const resolver = new Map(\n Object.values(record).map((item) => [item.toString(), item])\n )\n\n return resolver.get(value) || fallback\n }\n", "export const isObject = (value?: unknown): value is Record<string, unknown> =>\n typeof value === 'object' && !!value\n\nexport const isObjectWithProps = <K extends string>(\n value?: unknown,\n ...props: K[]\n): value is { [k in K]: unknown } =>\n isObject(value) && props.every((prop) => prop in value)\n\ntype MatchFunc<T> = (param: T) => boolean\n\ninterface MatchWithPropFunc<T extends object> {\n <K extends keyof T>(\n key: K,\n match: MatchFunc<T[K]>\n ): CheckObjectIntermediate<T>\n}\n\ninterface CheckObjectIntermediate<T extends object> {\n isMatch: () => boolean\n object: T\n withProp: MatchWithPropFunc<T>\n}\n\nexport const checkObject = <T extends object>(\n value: T\n): CheckObjectIntermediate<T> => {\n const withProp = <K extends keyof T>(key: K, matchFunc: MatchFunc<T[K]>) =>\n next(matchFunc(value[key]), value)\n\n const next = (result: boolean, object: T): CheckObjectIntermediate<T> => ({\n isMatch: () => result,\n object,\n withProp,\n })\n\n return next(!!value, value)\n}\n\nexport const matchesString = (value: unknown): value is string =>\n typeof value === 'string'\n\nexport const matchesNumber = (value: unknown): value is number =>\n typeof value === 'number'\n\nexport const matchesOneOf = <K extends string>(\n value: unknown,\n sample: K[]\n): value is K => matchesString(value) && sample.some((key) => value === key)\n\nexport const matchesEnum =\n (enumerated: Record<string, string>) => (value: unknown) =>\n matchesString(value) && Object.keys(enumerated).includes(value)\n\nexport const matchesList =\n <T>(matchFunc: MatchFunc<T>) =>\n (value: unknown) =>\n Array.isArray(value) && value.every(matchFunc)\n"], | ||
| "mappings": "AAAO,IAAMA,EACT,CAAmBC,EAA2BC,IAC7CC,GACoB,IAAI,IACjB,OAAO,OAAOF,CAAM,EAAE,IAAKG,GAAS,CAACA,EAAK,SAAS,EAAGA,CAAI,CAAC,CAC/D,EAEgB,IAAID,CAAK,GAAKD,ECP/B,IAAMG,EAAYC,GACrB,OAAOA,GAAU,UAAY,CAAC,CAACA,EAEtBC,EAAoB,CAC7BD,KACGE,IAEHH,EAASC,CAAK,GAAKE,EAAM,MAAOC,GAASA,KAAQH,CAAK,EAiB7CI,EACTJ,GAC6B,CAC7B,IAAMK,EAAW,CAAoBC,EAAQC,IACzCC,EAAKD,EAAUP,EAAMM,CAAG,CAAC,EAAGN,CAAK,EAE/BQ,EAAO,CAACC,EAAiBC,KAA2C,CACtE,QAAS,IAAMD,EACf,OAAAC,EACA,SAAAL,CACJ,GAEA,OAAOG,EAAK,CAAC,CAACR,EAAOA,CAAK,CAC9B,EAEaW,EAAiBX,GAC1B,OAAOA,GAAU,SAERY,EAAiBZ,GAC1B,OAAOA,GAAU,SAERa,EAAe,CACxBb,EACAc,IACaH,EAAcX,CAAK,GAAKc,EAAO,KAAMR,GAAQN,IAAUM,CAAG,EAE9DS,EACRC,GAAwChB,GACrCW,EAAcX,CAAK,GAAK,OAAO,KAAKgB,CAAU,EAAE,SAAShB,CAAK,EAEzDiB,EACLV,GACHP,GACG,MAAM,QAAQA,CAAK,GAAKA,EAAM,MAAMO,CAAS", | ||
| "names": ["makeEnumResolver", "record", "fallback", "value", "item", "isObject", "value", "isObjectWithProps", "props", "prop", "checkObject", "withProp", "key", "matchFunc", "next", "result", "object", "matchesString", "matchesNumber", "matchesOneOf", "sample", "matchesEnum", "enumerated", "matchesList"] | ||
| } |
| export declare const makeEnumResolver: <T extends string>(record: Record<string, T>, fallback: T) => (value: string) => T; |
| export * from './enum'; | ||
| export * from './objects'; |
| export declare const isObject: (value?: unknown) => value is Record<string, unknown>; | ||
| export declare const isObjectWithProps: <K extends string>(value?: unknown, ...props: K[]) => value is { [k in K]: unknown; }; | ||
| type MatchFunc<T> = (param: T) => boolean; | ||
| interface MatchWithPropFunc<T extends object> { | ||
| <K extends keyof T>(key: K, match: MatchFunc<T[K]>): CheckObjectIntermediate<T>; | ||
| } | ||
| interface CheckObjectIntermediate<T extends object> { | ||
| isMatch: () => boolean; | ||
| object: T; | ||
| withProp: MatchWithPropFunc<T>; | ||
| } | ||
| export declare const checkObject: <T extends object>(value: T) => CheckObjectIntermediate<T>; | ||
| export declare const matchesString: (value: unknown) => value is string; | ||
| export declare const matchesNumber: (value: unknown) => value is number; | ||
| export declare const matchesOneOf: <K extends string>(value: unknown, sample: K[]) => value is K; | ||
| export declare const matchesEnum: (enumerated: Record<string, string>) => (value: unknown) => boolean; | ||
| export declare const matchesList: <T>(matchFunc: MatchFunc<T>) => (value: unknown) => boolean; | ||
| export {}; |
Sorry, the diff of this file is not supported yet
| export declare const makeEnumResolver: <T extends string>(record: Record<string, T>, fallback: T) => (value: string) => T; |
| export * from './enum'; | ||
| export * from './objects'; |
| export declare const isObject: (value?: unknown) => value is Record<string, unknown>; | ||
| export declare const isObjectWithProps: <K extends string>(value?: unknown, ...props: K[]) => value is { [k in K]: unknown; }; | ||
| type MatchFunc<T> = (param: T) => boolean; | ||
| interface MatchWithPropFunc<T extends object> { | ||
| <K extends keyof T>(key: K, match: MatchFunc<T[K]>): CheckObjectIntermediate<T>; | ||
| } | ||
| interface CheckObjectIntermediate<T extends object> { | ||
| isMatch: () => boolean; | ||
| object: T; | ||
| withProp: MatchWithPropFunc<T>; | ||
| } | ||
| export declare const checkObject: <T extends object>(value: T) => CheckObjectIntermediate<T>; | ||
| export declare const matchesString: (value: unknown) => value is string; | ||
| export declare const matchesNumber: (value: unknown) => value is number; | ||
| export declare const matchesOneOf: <K extends string>(value: unknown, sample: K[]) => value is K; | ||
| export declare const matchesEnum: (enumerated: Record<string, string>) => (value: unknown) => boolean; | ||
| export declare const matchesList: <T>(matchFunc: MatchFunc<T>) => (value: unknown) => boolean; | ||
| export {}; |
Sorry, the diff of this file is not supported yet
+13
-12
| { | ||
| "$schema": "https://json.schemastore.org/package.json", | ||
| "name": "@pro-functional/objects", | ||
| "version": "0.10.0", | ||
| "version": "0.11.0", | ||
| "author": { | ||
@@ -11,6 +11,6 @@ "name": "Harish Prakash", | ||
| "scripts": { | ||
| "build:base": "esbuild src/**/*.ts --sourcemap --minify --tsconfig=tsconfig.build.json", | ||
| "build:cjs": "yarn build:base --outdir=dist/cjs --format=cjs", | ||
| "build:esm": "yarn build:base --outdir=dist/esm --format=esm", | ||
| "build:types": "tsc --project tsconfig.build.json", | ||
| "build:base": "esbuild src/index.ts --sourcemap --bundle --packages=external --minify --tsconfig=tsconfig.build.json", | ||
| "build:cjs": "yarn build:base --outfile=dist/cjs/index.cjs --format=cjs", | ||
| "build:esm": "yarn build:base --outfile=dist/esm/index.mjs --format=esm", | ||
| "build:types": "tsc --project tsconfig.types.json", | ||
| "build": "yarn build:cjs && yarn build:esm && yarn build:types", | ||
@@ -37,4 +37,5 @@ "clean": "rimraf ./dist" | ||
| }, | ||
| "main": "./dist/cjs/index.js", | ||
| "types": "./dist/src/index.d.ts", | ||
| "main": "./dist/cjs/index.cjs", | ||
| "module": "./dist/esm/index.mjs", | ||
| "types": "./dist/types/src/index.d.ts", | ||
| "files": [ | ||
@@ -46,6 +47,6 @@ "./dist", | ||
| ".": { | ||
| "require": "./dist/cjs/index.js", | ||
| "types": "./dist/src/index.d.ts", | ||
| "import": "./dist/esm/index.js", | ||
| "default": "./dist/cjs/index.js" | ||
| "types": "./dist/types/src/index.d.ts", | ||
| "require": "./dist/cjs/index.cjs", | ||
| "import": "./dist/esm/index.mjs", | ||
| "default": "./dist/esm/index.mjs" | ||
| } | ||
@@ -58,3 +59,3 @@ }, | ||
| }, | ||
| "gitHead": "7bb8ed9c76608c6fa4046b3d73fceb6509d1301b" | ||
| "gitHead": "ea1233557fade51dc08dd1f683dc88fcdbb8a78c" | ||
| } |
| "use strict";var o=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var l=(r,e)=>{for(var n in e)o(r,n,{get:e[n],enumerable:!0})},v=(r,e,n,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of a(e))!c.call(r,t)&&t!==n&&o(r,t,{get:()=>e[t],enumerable:!(s=g(e,t))||s.enumerable});return r};var i=r=>v(o({},"__esModule",{value:!0}),r);var u={};l(u,{makeEnumResolver:()=>p});module.exports=i(u);const p=(r,e)=>n=>new Map(Object.values(r).map(t=>[t.toString(),t])).get(n)||e; | ||
| //# sourceMappingURL=enum.js.map |
| { | ||
| "version": 3, | ||
| "sources": ["../../src/enum.ts"], | ||
| "sourcesContent": ["export const makeEnumResolver =\n <T extends string>(record: Record<string, T>, fallback: T) =>\n (value: string) => {\n const resolver = new Map(\n Object.values(record).map((item) => [item.toString(), item])\n )\n\n return resolver.get(value) || fallback\n }\n"], | ||
| "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,IAAA,eAAAC,EAAAH,GAAO,MAAME,EACT,CAAmBE,EAA2BC,IAC7CC,GACoB,IAAI,IACjB,OAAO,OAAOF,CAAM,EAAE,IAAKG,GAAS,CAACA,EAAK,SAAS,EAAGA,CAAI,CAAC,CAC/D,EAEgB,IAAID,CAAK,GAAKD", | ||
| "names": ["enum_exports", "__export", "makeEnumResolver", "__toCommonJS", "record", "fallback", "value", "item"] | ||
| } |
| "use strict";var a=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var t=(r,o,p,x)=>{if(o&&typeof o=="object"||typeof o=="function")for(let m of c(o))!d.call(r,m)&&m!==p&&a(r,m,{get:()=>o[m],enumerable:!(x=b(o,m))||x.enumerable});return r},f=(r,o,p)=>(t(r,o,"default"),p&&t(p,o,"default"));var g=r=>t(a({},"__esModule",{value:!0}),r);var e={};module.exports=g(e);f(e,require("./enum"),module.exports);f(e,require("./objects"),module.exports); | ||
| //# sourceMappingURL=index.js.map |
| { | ||
| "version": 3, | ||
| "sources": ["../../src/index.ts"], | ||
| "sourcesContent": ["export * from './enum'\nexport * from './objects'\n"], | ||
| "mappings": "iaAAA,IAAAA,EAAA,kBAAAC,EAAAD,GAAAE,EAAAF,EAAc,kBAAd,gBACAE,EAAAF,EAAc,qBADd", | ||
| "names": ["index_exports", "__toCommonJS", "__reExport"] | ||
| } |
| "use strict";var s=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var h=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var k=(e,t)=>{for(var n in t)s(e,n,{get:t[n],enumerable:!0})},p=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of h(t))!b.call(e,c)&&c!==n&&s(e,c,{get:()=>t[c],enumerable:!(o=a(t,c))||o.enumerable});return e};var u=e=>p(s({},"__esModule",{value:!0}),e);var K={};k(K,{checkObject:()=>m,isObject:()=>i,isObjectWithProps:()=>T,matchesEnum:()=>j,matchesList:()=>y,matchesNumber:()=>x,matchesOneOf:()=>d,matchesString:()=>r});module.exports=u(K);const i=e=>typeof e=="object"&&!!e,T=(e,...t)=>i(e)&&t.every(n=>n in e),m=e=>{const t=(o,c)=>n(c(e[o]),e),n=(o,c)=>({isMatch:()=>o,object:c,withProp:t});return n(!!e,e)},r=e=>typeof e=="string",x=e=>typeof e=="number",d=(e,t)=>r(e)&&t.some(n=>e===n),j=e=>t=>r(t)&&Object.keys(e).includes(t),y=e=>t=>Array.isArray(t)&&t.every(e); | ||
| //# sourceMappingURL=objects.js.map |
| { | ||
| "version": 3, | ||
| "sources": ["../../src/objects.ts"], | ||
| "sourcesContent": ["export const isObject = (value?: unknown): value is Record<string, unknown> =>\n typeof value === 'object' && !!value\n\nexport const isObjectWithProps = <K extends string>(\n value?: unknown,\n ...props: K[]\n): value is { [k in K]: unknown } =>\n isObject(value) && props.every((prop) => prop in value)\n\ntype MatchFunc<T> = (param: T) => boolean\n\ninterface MatchWithPropFunc<T extends object> {\n <K extends keyof T>(\n key: K,\n match: MatchFunc<T[K]>\n ): CheckObjectIntermediate<T>\n}\n\ninterface CheckObjectIntermediate<T extends object> {\n isMatch: () => boolean\n object: T\n withProp: MatchWithPropFunc<T>\n}\n\nexport const checkObject = <T extends object>(\n value: T\n): CheckObjectIntermediate<T> => {\n const withProp = <K extends keyof T>(key: K, matchFunc: MatchFunc<T[K]>) =>\n next(matchFunc(value[key]), value)\n\n const next = (result: boolean, object: T): CheckObjectIntermediate<T> => ({\n isMatch: () => result,\n object,\n withProp,\n })\n\n return next(!!value, value)\n}\n\nexport const matchesString = (value: unknown): value is string =>\n typeof value === 'string'\n\nexport const matchesNumber = (value: unknown): value is number =>\n typeof value === 'number'\n\nexport const matchesOneOf = <K extends string>(\n value: unknown,\n sample: K[]\n): value is K => matchesString(value) && sample.some((key) => value === key)\n\nexport const matchesEnum =\n (enumerated: Record<string, string>) => (value: unknown) =>\n matchesString(value) && Object.keys(enumerated).includes(value)\n\nexport const matchesList =\n <T>(matchFunc: MatchFunc<T>) =>\n (value: unknown) =>\n Array.isArray(value) && value.every(matchFunc)\n"], | ||
| "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,EAAA,aAAAC,EAAA,sBAAAC,EAAA,gBAAAC,EAAA,gBAAAC,EAAA,kBAAAC,EAAA,iBAAAC,EAAA,kBAAAC,IAAA,eAAAC,EAAAV,GAAO,MAAMG,EAAYQ,GACrB,OAAOA,GAAU,UAAY,CAAC,CAACA,EAEtBP,EAAoB,CAC7BO,KACGC,IAEHT,EAASQ,CAAK,GAAKC,EAAM,MAAOC,GAASA,KAAQF,CAAK,EAiB7CT,EACTS,GAC6B,CAC7B,MAAMG,EAAW,CAAoBC,EAAQC,IACzCC,EAAKD,EAAUL,EAAMI,CAAG,CAAC,EAAGJ,CAAK,EAE/BM,EAAO,CAACC,EAAiBC,KAA2C,CACtE,QAAS,IAAMD,EACf,OAAAC,EACA,SAAAL,CACJ,GAEA,OAAOG,EAAK,CAAC,CAACN,EAAOA,CAAK,CAC9B,EAEaF,EAAiBE,GAC1B,OAAOA,GAAU,SAERJ,EAAiBI,GAC1B,OAAOA,GAAU,SAERH,EAAe,CACxBG,EACAS,IACaX,EAAcE,CAAK,GAAKS,EAAO,KAAML,GAAQJ,IAAUI,CAAG,EAE9DV,EACRgB,GAAwCV,GACrCF,EAAcE,CAAK,GAAK,OAAO,KAAKU,CAAU,EAAE,SAASV,CAAK,EAEzDL,EACLU,GACHL,GACG,MAAM,QAAQA,CAAK,GAAKA,EAAM,MAAMK,CAAS", | ||
| "names": ["objects_exports", "__export", "checkObject", "isObject", "isObjectWithProps", "matchesEnum", "matchesList", "matchesNumber", "matchesOneOf", "matchesString", "__toCommonJS", "value", "props", "prop", "withProp", "key", "matchFunc", "next", "result", "object", "sample", "enumerated"] | ||
| } |
| const o=(r,t)=>n=>new Map(Object.values(r).map(e=>[e.toString(),e])).get(n)||t;export{o as makeEnumResolver}; | ||
| //# sourceMappingURL=enum.js.map |
| { | ||
| "version": 3, | ||
| "sources": ["../../src/enum.ts"], | ||
| "sourcesContent": ["export const makeEnumResolver =\n <T extends string>(record: Record<string, T>, fallback: T) =>\n (value: string) => {\n const resolver = new Map(\n Object.values(record).map((item) => [item.toString(), item])\n )\n\n return resolver.get(value) || fallback\n }\n"], | ||
| "mappings": "AAAO,MAAMA,EACT,CAAmBC,EAA2BC,IAC7CC,GACoB,IAAI,IACjB,OAAO,OAAOF,CAAM,EAAE,IAAKG,GAAS,CAACA,EAAK,SAAS,EAAGA,CAAI,CAAC,CAC/D,EAEgB,IAAID,CAAK,GAAKD", | ||
| "names": ["makeEnumResolver", "record", "fallback", "value", "item"] | ||
| } |
| export*from"./enum";export*from"./objects"; | ||
| //# sourceMappingURL=index.js.map |
| { | ||
| "version": 3, | ||
| "sources": ["../../src/index.ts"], | ||
| "sourcesContent": ["export * from './enum'\nexport * from './objects'\n"], | ||
| "mappings": "AAAA,WAAc,SACd,WAAc", | ||
| "names": [] | ||
| } |
| const r=e=>typeof e=="object"&&!!e,i=(e,...t)=>r(e)&&t.every(n=>n in e),a=e=>{const t=(c,o)=>n(o(e[c]),e),n=(c,o)=>({isMatch:()=>c,object:o,withProp:t});return n(!!e,e)},s=e=>typeof e=="string",h=e=>typeof e=="number",b=(e,t)=>s(e)&&t.some(n=>e===n),k=e=>t=>s(t)&&Object.keys(e).includes(t),p=e=>t=>Array.isArray(t)&&t.every(e);export{a as checkObject,r as isObject,i as isObjectWithProps,k as matchesEnum,p as matchesList,h as matchesNumber,b as matchesOneOf,s as matchesString}; | ||
| //# sourceMappingURL=objects.js.map |
| { | ||
| "version": 3, | ||
| "sources": ["../../src/objects.ts"], | ||
| "sourcesContent": ["export const isObject = (value?: unknown): value is Record<string, unknown> =>\n typeof value === 'object' && !!value\n\nexport const isObjectWithProps = <K extends string>(\n value?: unknown,\n ...props: K[]\n): value is { [k in K]: unknown } =>\n isObject(value) && props.every((prop) => prop in value)\n\ntype MatchFunc<T> = (param: T) => boolean\n\ninterface MatchWithPropFunc<T extends object> {\n <K extends keyof T>(\n key: K,\n match: MatchFunc<T[K]>\n ): CheckObjectIntermediate<T>\n}\n\ninterface CheckObjectIntermediate<T extends object> {\n isMatch: () => boolean\n object: T\n withProp: MatchWithPropFunc<T>\n}\n\nexport const checkObject = <T extends object>(\n value: T\n): CheckObjectIntermediate<T> => {\n const withProp = <K extends keyof T>(key: K, matchFunc: MatchFunc<T[K]>) =>\n next(matchFunc(value[key]), value)\n\n const next = (result: boolean, object: T): CheckObjectIntermediate<T> => ({\n isMatch: () => result,\n object,\n withProp,\n })\n\n return next(!!value, value)\n}\n\nexport const matchesString = (value: unknown): value is string =>\n typeof value === 'string'\n\nexport const matchesNumber = (value: unknown): value is number =>\n typeof value === 'number'\n\nexport const matchesOneOf = <K extends string>(\n value: unknown,\n sample: K[]\n): value is K => matchesString(value) && sample.some((key) => value === key)\n\nexport const matchesEnum =\n (enumerated: Record<string, string>) => (value: unknown) =>\n matchesString(value) && Object.keys(enumerated).includes(value)\n\nexport const matchesList =\n <T>(matchFunc: MatchFunc<T>) =>\n (value: unknown) =>\n Array.isArray(value) && value.every(matchFunc)\n"], | ||
| "mappings": "AAAO,MAAMA,EAAYC,GACrB,OAAOA,GAAU,UAAY,CAAC,CAACA,EAEtBC,EAAoB,CAC7BD,KACGE,IAEHH,EAASC,CAAK,GAAKE,EAAM,MAAOC,GAASA,KAAQH,CAAK,EAiB7CI,EACTJ,GAC6B,CAC7B,MAAMK,EAAW,CAAoBC,EAAQC,IACzCC,EAAKD,EAAUP,EAAMM,CAAG,CAAC,EAAGN,CAAK,EAE/BQ,EAAO,CAACC,EAAiBC,KAA2C,CACtE,QAAS,IAAMD,EACf,OAAAC,EACA,SAAAL,CACJ,GAEA,OAAOG,EAAK,CAAC,CAACR,EAAOA,CAAK,CAC9B,EAEaW,EAAiBX,GAC1B,OAAOA,GAAU,SAERY,EAAiBZ,GAC1B,OAAOA,GAAU,SAERa,EAAe,CACxBb,EACAc,IACaH,EAAcX,CAAK,GAAKc,EAAO,KAAMR,GAAQN,IAAUM,CAAG,EAE9DS,EACRC,GAAwChB,GACrCW,EAAcX,CAAK,GAAK,OAAO,KAAKgB,CAAU,EAAE,SAAShB,CAAK,EAEzDiB,EACLV,GACHP,GACG,MAAM,QAAQA,CAAK,GAAKA,EAAM,MAAMO,CAAS", | ||
| "names": ["isObject", "value", "isObjectWithProps", "props", "prop", "checkObject", "withProp", "key", "matchFunc", "next", "result", "object", "matchesString", "matchesNumber", "matchesOneOf", "sample", "matchesEnum", "enumerated", "matchesList"] | ||
| } |
| export declare const makeEnumResolver: <T extends string>(record: Record<string, T>, fallback: T) => (value: string) => T; |
| export * from './enum'; | ||
| export * from './objects'; |
| export declare const isObject: (value?: unknown) => value is Record<string, unknown>; | ||
| export declare const isObjectWithProps: <K extends string>(value?: unknown, ...props: K[]) => value is { [k in K]: unknown; }; | ||
| type MatchFunc<T> = (param: T) => boolean; | ||
| interface MatchWithPropFunc<T extends object> { | ||
| <K extends keyof T>(key: K, match: MatchFunc<T[K]>): CheckObjectIntermediate<T>; | ||
| } | ||
| interface CheckObjectIntermediate<T extends object> { | ||
| isMatch: () => boolean; | ||
| object: T; | ||
| withProp: MatchWithPropFunc<T>; | ||
| } | ||
| export declare const checkObject: <T extends object>(value: T) => CheckObjectIntermediate<T>; | ||
| export declare const matchesString: (value: unknown) => value is string; | ||
| export declare const matchesNumber: (value: unknown) => value is number; | ||
| export declare const matchesOneOf: <K extends string>(value: unknown, sample: K[]) => value is K; | ||
| export declare const matchesEnum: (enumerated: Record<string, string>) => (value: unknown) => boolean; | ||
| export declare const matchesList: <T>(matchFunc: MatchFunc<T>) => (value: unknown) => boolean; | ||
| export {}; |
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 2 instances in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 3 instances in 1 package
126473
693.13%19
5.56%51
27.5%4
-33.33%