@chakra-ui/object-utils
Advanced tools
Comparing version 0.0.0-dev-20220820165925 to 0.0.0-dev-20220820172220
@@ -25,3 +25,4 @@ "use strict"; | ||
omit: () => omit, | ||
pick: () => pick | ||
pick: () => pick, | ||
split: () => split | ||
}); | ||
@@ -54,2 +55,13 @@ module.exports = __toCommonJS(src_exports); | ||
} | ||
function split(object, keys) { | ||
const picked = {}; | ||
const omitted = {}; | ||
for (const [key, value] of Object.entries(object)) { | ||
if (keys.includes(key)) | ||
picked[key] = value; | ||
else | ||
omitted[key] = value; | ||
} | ||
return [picked, omitted]; | ||
} | ||
// Annotate the CommonJS export names for ESM import in node: | ||
@@ -59,3 +71,4 @@ 0 && (module.exports = { | ||
omit, | ||
pick | ||
pick, | ||
split | ||
}); |
declare function compact<T extends Record<any, any>>(object: T): {} & T; | ||
declare function omit<T extends Record<any, any>, K extends keyof T>(object: T, keysToOmit?: K[]): Omit<T, K>; | ||
declare function pick<T extends Record<any, any>, K extends keyof T>(object: T, keysToPick: K[]): { [P in K]: T[P]; }; | ||
declare function split<T extends Record<string, any>, K extends keyof T>(object: T, keys: K[]): [{ [P in K]: T[P]; }, Omit<T, K>]; | ||
export { compact, omit, pick }; | ||
export { compact, omit, pick, split }; |
@@ -27,6 +27,18 @@ // src/index.ts | ||
} | ||
function split(object, keys) { | ||
const picked = {}; | ||
const omitted = {}; | ||
for (const [key, value] of Object.entries(object)) { | ||
if (keys.includes(key)) | ||
picked[key] = value; | ||
else | ||
omitted[key] = value; | ||
} | ||
return [picked, omitted]; | ||
} | ||
export { | ||
compact, | ||
omit, | ||
pick | ||
pick, | ||
split | ||
}; |
{ | ||
"name": "@chakra-ui/object-utils", | ||
"version": "0.0.0-dev-20220820165925", | ||
"version": "0.0.0-dev-20220820172220", | ||
"description": "", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
5779
118