@tsfun/object
Advanced tools
+1
-1
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./add-property.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.addProperty = void 0; | ||
| /** | ||
@@ -5,0 +5,0 @@ * Create an object with `proto` as prototype |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./add-property.d.ts" /> | ||
| /** | ||
@@ -3,0 +2,0 @@ * Create an object with `proto` as prototype |
+5
-4
@@ -0,1 +1,2 @@ | ||
| import { FunctionKeys } from 'utility-types'; | ||
| import { SingleDict, MaybeParam, MaybeReturn } from './utils/types'; | ||
@@ -21,3 +22,3 @@ /** | ||
| */ | ||
| export declare const applyMethod: <Object_1 extends object, MethodName extends { [K in keyof Object_1]-?: import("utility-types").NonUndefined<Object_1[K]> extends Function ? K : never; }[keyof Object_1], Method extends Object_1[MethodName]>(object: Object_1, name: MethodName, args: Readonly<MaybeParam<Method>>) => MaybeReturn<Method>; | ||
| export declare const applyMethod: <Object_1 extends object, MethodName extends FunctionKeys<Object_1>, Method extends Object_1[MethodName]>(object: Object_1, name: MethodName, args: Readonly<MaybeParam<Method>>) => MaybeReturn<Method>; | ||
| /** | ||
@@ -30,3 +31,3 @@ * Execute a method | ||
| */ | ||
| export declare const callMethod: <Object_1 extends object, MethodName extends { [K in keyof Object_1]-?: import("utility-types").NonUndefined<Object_1[K]> extends Function ? K : never; }[keyof Object_1], Method extends Object_1[MethodName]>(object: Object_1, name: MethodName, ...args: MaybeParam<Method>) => MaybeReturn<Method>; | ||
| export declare const callMethod: <Object_1 extends object, MethodName extends FunctionKeys<Object_1>, Method extends Object_1[MethodName]>(object: Object_1, name: MethodName, ...args: MaybeParam<Method>) => MaybeReturn<Method>; | ||
| /** | ||
@@ -38,3 +39,3 @@ * Get a method from and bind it to an object | ||
| */ | ||
| export declare const getMethod: <Object_1 extends object, MethodName extends { [K in keyof Object_1]-?: import("utility-types").NonUndefined<Object_1[K]> extends Function ? K : never; }[keyof Object_1], Method extends Object_1[MethodName]>(object: Object_1, name: MethodName) => OmitThisParameter<Method>; | ||
| export declare const getMethod: <Object_1 extends object, MethodName extends FunctionKeys<Object_1>, Method extends Object_1[MethodName]>(object: Object_1, name: MethodName) => OmitThisParameter<Method>; | ||
| /** | ||
@@ -45,2 +46,2 @@ * Create a function that get methods of an object | ||
| */ | ||
| export declare const methodGetter: <Object_1 extends object>(object: Object_1) => <MethodName extends { [K in keyof Object_1]-?: import("utility-types").NonUndefined<Object_1[K]> extends Function ? K : never; }[keyof Object_1], Method extends Object_1[MethodName]>(name: MethodName) => OmitThisParameter<Method>; | ||
| export declare const methodGetter: <Object_1 extends object>(object: Object_1) => <MethodName extends FunctionKeys<Object_1>, Method extends Object_1[MethodName]>(name: MethodName) => OmitThisParameter<Method>; |
+1
-1
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./call-method.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.methodGetter = exports.getMethod = exports.callMethod = exports.applyMethod = exports.methodCallerOf = exports.methodApplierOf = void 0; | ||
| const bind_1 = require("./utils/bind"); | ||
@@ -5,0 +5,0 @@ /** |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./call-method.d.ts" /> | ||
| import { bindContext } from "./utils/bind.mjs"; | ||
@@ -3,0 +2,0 @@ /** |
+2
-2
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./deep-merge.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.ErrorType = exports.PropertyPreference = exports.deepMergeWithoutCollision = exports.deepMergePartial = exports.deepMergeOverwrite = exports.deepMergeWithPreference = void 0; | ||
| const mut_obj_1 = require("./utils/mut-obj"); | ||
@@ -83,3 +83,3 @@ const isObject = (value) => value && typeof value === 'object' && !Array.isArray(value); | ||
| key, | ||
| values: [leftValue, rightValue] | ||
| values: [leftValue, rightValue], | ||
| }); | ||
@@ -86,0 +86,0 @@ } |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./deep-merge.d.ts" /> | ||
| import { mutObj } from "./utils/mut-obj.mjs"; | ||
@@ -3,0 +2,0 @@ |
+1
-1
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./get-property.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.propertyGetter = exports.getProperty = exports.propertyOf = void 0; | ||
| /** | ||
@@ -5,0 +5,0 @@ * Create a function that accesses a particular key from an object |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./get-property.d.ts" /> | ||
| /** | ||
@@ -3,0 +2,0 @@ * Create a function that accesses a particular key from an object |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./index.d.ts" /> | ||
| "use strict"; | ||
@@ -3,0 +2,0 @@ Object.defineProperty(exports, "__esModule", { value: true }); |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./index.d.ts" /> | ||
| export * from "./add-property.mjs"; | ||
@@ -3,0 +2,0 @@ export * from "./set-property.mjs"; |
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./object-extends.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.objectExtends = void 0; | ||
| const mut_obj_1 = require("./utils/mut-obj"); | ||
@@ -5,0 +5,0 @@ /** |
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./object-extends.d.ts" /> | ||
| import { mutObj } from "./utils/mut-obj.mjs"; | ||
@@ -3,0 +2,0 @@ /** |
+1
-1
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./omit.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.omitOne = exports.omit = void 0; | ||
| /** | ||
@@ -5,0 +5,0 @@ * Creates a shallow clone of an object without certain properties |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./omit.d.ts" /> | ||
| /** | ||
@@ -3,0 +2,0 @@ * Creates a shallow clone of an object without certain properties |
+3
-3
| { | ||
| "name": "@tsfun/object", | ||
| "version": "0.0.20", | ||
| "version": "0.0.21", | ||
| "description": "Utilities related to objects", | ||
@@ -26,5 +26,5 @@ "author": "Hoàng Văn Khải <hvksmr1996@gmail.com>", | ||
| "utility-types": "^3.10.0", | ||
| "tslib": "^1.11.0", | ||
| "@types/node": "^13.7.7" | ||
| "tslib": "^2.0.1", | ||
| "@types/node": "^14.6.0" | ||
| } | ||
| } |
+1
-1
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./pick.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.pickOne = exports.pick = void 0; | ||
| const mut_obj_1 = require("./utils/mut-obj"); | ||
@@ -5,0 +5,0 @@ /** |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./pick.d.ts" /> | ||
| import { mutObj } from "./utils/mut-obj.mjs"; | ||
@@ -3,0 +2,0 @@ /** |
+4
-6
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./property-path.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.deletePropertyPath = exports.setPropertyPath = exports.getPropertyPath = void 0; | ||
| const isObject = (object) => typeof object === 'object' && object; | ||
@@ -11,5 +11,3 @@ function getPropertyPath(object, path) { | ||
| const [key, ...rest] = path; | ||
| return key in object | ||
| ? getPropertyPath(object[key], rest) | ||
| : undefined; | ||
| return key in object ? getPropertyPath(object[key], rest) : undefined; | ||
| } | ||
@@ -26,3 +24,3 @@ exports.getPropertyPath = getPropertyPath; | ||
| ...cloned, | ||
| [key]: setPropertyPath(nextTarget, nextPath, value) | ||
| [key]: setPropertyPath(nextTarget, nextPath, value), | ||
| }; | ||
@@ -42,5 +40,5 @@ } | ||
| ...cloned, | ||
| [key]: deletePropertyPath(nextTarget, nextPath) | ||
| [key]: deletePropertyPath(nextTarget, nextPath), | ||
| }; | ||
| } | ||
| exports.deletePropertyPath = deletePropertyPath; |
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./property-path.d.ts" /> | ||
| const isObject = object => typeof object === 'object' && object; | ||
@@ -3,0 +2,0 @@ |
@@ -10,3 +10,3 @@ import { AddProperty as SetProperty } from './utils/types'; | ||
| */ | ||
| export declare const setProperty: <Object_1 extends object, Key extends string | number | symbol, Value>(object: Object_1, key: Key, value: Value) => { [SoleKey in Key]: Pick<Pick<Object_1 extends null ? {} : Object_1, import("utility-types").SetDifference<keyof (Object_1 extends null ? {} : Object_1), keyof ({ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; })>> & Pick<{ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; }, Extract<keyof ({ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; }), keyof (Object_1 extends null ? {} : Object_1)> & Extract<keyof (Object_1 extends null ? {} : Object_1), keyof ({ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; })>> & Pick<{ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; }, import("utility-types").SetDifference<keyof ({ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; }), keyof (Object_1 extends null ? {} : Object_1)>>, import("utility-types").SetDifference<keyof (Object_1 extends null ? {} : Object_1), keyof ({ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; })> | (Extract<keyof ({ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; }), keyof (Object_1 extends null ? {} : Object_1)> & Extract<keyof (Object_1 extends null ? {} : Object_1), keyof ({ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; })>) | import("utility-types").SetDifference<keyof ({ [_ in SoleKey]: Value; } extends null ? {} : { [_ in SoleKey]: Value; }), keyof (Object_1 extends null ? {} : Object_1)>>; }[Key]; | ||
| export declare const setProperty: <Object_1 extends object, Key extends string | number | symbol, Value>(object: Object_1, key: Key, value: Value) => SetProperty<Object_1, Key, Value>; | ||
| export default setProperty; |
+2
-2
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./set-property.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.setProperty = void 0; | ||
| /** | ||
@@ -13,4 +13,4 @@ * Shallow clone an object and alter one property | ||
| ...object, | ||
| [key]: value | ||
| [key]: value, | ||
| }); | ||
| exports.default = exports.setProperty; |
+0
-1
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./set-property.d.ts" /> | ||
| /** | ||
@@ -3,0 +2,0 @@ * Shallow clone an object and alter one property |
+1
-1
@@ -1,5 +0,5 @@ | ||
| /// <reference types="./bind.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.bindContext = void 0; | ||
| const protoBind = Function.prototype.bind; | ||
| exports.bindContext = (fn, ctx) => protoBind.call(fn, ctx); |
+0
-1
@@ -1,3 +0,2 @@ | ||
| /// <reference types="./bind.d.ts" /> | ||
| const protoBind = Function.prototype.bind; | ||
| export const bindContext = (fn, ctx) => protoBind.call(fn, ctx); |
+2
-2
@@ -1,4 +0,4 @@ | ||
| /// <reference types="./mut-obj.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.mutObj = void 0; | ||
| const { defineProperty } = Object; | ||
@@ -10,5 +10,5 @@ function mutObj(object, key, value) { | ||
| configurable: true, | ||
| value | ||
| value, | ||
| }); | ||
| } | ||
| exports.mutObj = mutObj; |
@@ -1,2 +0,1 @@ | ||
| /// <reference types="./mut-obj.d.ts" /> | ||
| const { | ||
@@ -3,0 +2,0 @@ defineProperty |
+0
-1
@@ -1,3 +0,2 @@ | ||
| /// <reference types="./types.d.ts" /> | ||
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); |
+1
-1
@@ -1,1 +0,1 @@ | ||
| /// <reference types="./types.d.ts" /> | ||
| export {}; |
36493
-5.68%998
-2.44%+ Added
+ Added
- Removed
- Removed
Updated
Updated