ut2 1.0.4 → 1.1.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/lib/partial.js CHANGED
@@ -1,7 +1,5 @@
1
1
  'use strict';
2
2
 
3
- var tslib = require('tslib');
4
-
5
3
  function partial(func) {
6
4
  var args = [];
7
5
  for (var _i = 1; _i < arguments.length; _i++) {
@@ -12,7 +10,7 @@ function partial(func) {
12
10
  for (var _i = 0; _i < arguments.length; _i++) {
13
11
  remainingArgs[_i] = arguments[_i];
14
12
  }
15
- return func.apply(this, tslib.__spreadArray(tslib.__spreadArray([], tslib.__read(args), false), tslib.__read(remainingArgs), false));
13
+ return func.apply(this, args.concat(remainingArgs));
16
14
  };
17
15
  }
18
16
 
package/lib/pick.js CHANGED
@@ -6,12 +6,11 @@ function pick(object, fields) {
6
6
  if (fields === void 0) { fields = []; }
7
7
  var result = {};
8
8
  var fieldArr = castArray(fields);
9
- for (var i = 0; i < fieldArr.length; i++) {
10
- var field = fieldArr[i];
9
+ fieldArr.forEach(function (field) {
11
10
  if (field in object) {
12
11
  result[field] = object[field];
13
12
  }
14
- }
13
+ });
15
14
  return result;
16
15
  }
17
16
 
package/lib/pickBy.js CHANGED
@@ -1,8 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var tslib = require('tslib');
4
- var getKeysIn = require('./internals/getKeysIn.js');
5
- var getSymbolsIn = require('./internals/getSymbolsIn.js');
3
+ var allKeysIn = require('./allKeysIn.js');
6
4
 
7
5
  function pickBy(object, predicate) {
8
6
  if (predicate === void 0) { predicate = function () { return false; }; }
@@ -10,13 +8,12 @@ function pickBy(object, predicate) {
10
8
  if (object === null) {
11
9
  return result;
12
10
  }
13
- var allKeys = tslib.__spreadArray(tslib.__spreadArray([], tslib.__read(getKeysIn(object)), false), tslib.__read(getSymbolsIn(object)), false);
14
- for (var i = 0; i < allKeys.length; i++) {
15
- var currentKey = allKeys[i];
16
- if (predicate(object[currentKey], currentKey)) {
17
- result[currentKey] = object[currentKey];
11
+ var keys = allKeysIn(object);
12
+ keys.forEach(function (key) {
13
+ if (predicate(object[key], key)) {
14
+ result[key] = object[key];
18
15
  }
19
- }
16
+ });
20
17
  return result;
21
18
  }
22
19
 
package/lib/throttle.js CHANGED
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var debounce = require('./debounce.js');
3
+ var baseDebounce = require('./internals/baseDebounce.js');
4
4
 
5
5
  function throttle(func, wait, immediate) {
6
6
  if (wait === void 0) { wait = 0; }
7
7
  if (immediate === void 0) { immediate = true; }
8
- return debounce.baseDebounce(func, wait, immediate, true);
8
+ return baseDebounce(func, wait, immediate, true);
9
9
  }
10
10
 
11
11
  module.exports = throttle;
package/lib/union.js CHANGED
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
 
3
- var tslib = require('tslib');
4
3
  var isArray = require('./isArray.js');
5
4
  var uniq = require('./uniq.js');
6
5
 
@@ -8,7 +7,7 @@ function union(array, other, iteratee) {
8
7
  if (other === void 0) { other = []; }
9
8
  array = isArray(array) ? array : [];
10
9
  other = isArray(other) ? other : [];
11
- return uniq(tslib.__spreadArray(tslib.__spreadArray([], tslib.__read(array), false), tslib.__read(other), false), iteratee);
10
+ return uniq(array.concat(other), iteratee);
12
11
  }
13
12
 
14
13
  module.exports = union;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ut2",
3
- "version": "1.0.4",
3
+ "version": "1.1.0",
4
4
  "author": "caijf",
5
5
  "license": "MIT",
6
6
  "main": "lib/index.js",
@@ -11,7 +11,7 @@
11
11
  "scripts": {
12
12
  "test": "jest",
13
13
  "test:coverage": "jest --coverage",
14
- "test:coverage:local": "cross-env COVERAGE_LOCAL=1 jest --coverage && open ./coverage/lcov-report/index.html",
14
+ "test:coverage:local": "cross-env COVERAGE_LOCAL=1 jest --coverage --detectOpenHandles && open ./coverage/lcov-report/index.html",
15
15
  "build": "npm run build:module && npm run build:umd && npm run build:types",
16
16
  "build:module": "rm -rf es && rm -rf lib && rollup -c rollup.module.config.mjs",
17
17
  "build:umd": "rm -rf dist && rollup -c rollup.umd.config.mjs",
@@ -63,29 +63,29 @@
63
63
  "registry": "https://registry.npmjs.org/"
64
64
  },
65
65
  "dependencies": {
66
- "tslib": "^2.5.3"
66
+ "tslib": "^2.6.0"
67
67
  },
68
68
  "devDependencies": {
69
- "@commitlint/cli": "^17.6.5",
70
- "@commitlint/config-conventional": "^17.6.5",
71
- "@rollup/plugin-commonjs": "^25.0.1",
69
+ "@commitlint/cli": "^17.6.6",
70
+ "@commitlint/config-conventional": "^17.6.6",
71
+ "@rollup/plugin-commonjs": "^25.0.2",
72
72
  "@rollup/plugin-node-resolve": "^15.1.0",
73
73
  "@rollup/plugin-replace": "^5.0.2",
74
74
  "@rollup/plugin-terser": "^0.4.3",
75
75
  "@rollup/plugin-typescript": "^11.1.1",
76
76
  "@types/jest": "^29.5.2",
77
- "@typescript-eslint/eslint-plugin": "^5.59.9",
78
- "@typescript-eslint/parser": "^5.59.9",
77
+ "@typescript-eslint/eslint-plugin": "^5.60.1",
78
+ "@typescript-eslint/parser": "^5.60.1",
79
79
  "cross-env": "^7.0.3",
80
80
  "cz-conventional-changelog": "^3.3.0",
81
81
  "docdash": "^2.0.1",
82
- "eslint": "^8.42.0",
82
+ "eslint": "^8.43.0",
83
83
  "jest": "^29.5.0",
84
84
  "jest-environment-jsdom": "^29.5.0",
85
85
  "jsdoc": "^4.0.2",
86
86
  "lint-staged": "^13.2.2",
87
87
  "prettier": "^2.8.8",
88
- "rollup": "^3.25.1",
88
+ "rollup": "^3.25.3",
89
89
  "ts-jest": "^29.1.0",
90
90
  "typescript": "^5.1.3",
91
91
  "yorkie": "^2.0.0"
@@ -0,0 +1,24 @@
1
+ /**
2
+ * 创建一个数组,包含对象自身的可枚举属性(包含 `Symbol` 属性)。
3
+ *
4
+ * 同 `Object.keys` + `Object.getOwnPropertySymbols`。
5
+ *
6
+ * @static
7
+ * @alias module:Object.allKeys
8
+ * @since 1.1.0
9
+ * @param {Object} object 要查询的对象。
10
+ * @returns {Array<string|symbol>} 对象自身的可枚举属性名(包含 `Symbol` 属性)数组。
11
+ * @example
12
+ *
13
+ * function Foo(){
14
+ * this.a = 1;
15
+ * this[Symbol.for('b')] = 2;
16
+ * }
17
+ * Foo.prototype.c = 3;
18
+ * Foo.prototype[Symbol.for('d')] = 4;
19
+ *
20
+ * allKeys(new Foo); // ['a', Symbol(b)]
21
+ *
22
+ */
23
+ declare function allKeys<T extends object>(object: T): (string | symbol)[];
24
+ export default allKeys;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * 创建一个数组,包含对象自身及继承的可枚举属性(包含 `Symbol` 属性)。
3
+ *
4
+ * 同 `key...in` + 递归原型 `Object.getOwnPropertySymbols`。
5
+ *
6
+ * @static
7
+ * @alias module:Object.allKeysIn
8
+ * @since 1.1.0
9
+ * @param {Object} object 要查询的对象。
10
+ * @returns {Array<string|symbol>} 对象自身及继承的可枚举属性名(包含 `Symbol` 属性)数组。
11
+ * @example
12
+ *
13
+ * function Foo(){
14
+ * this.a = 1;
15
+ * this[Symbol.for('b')] = 2;
16
+ * }
17
+ * Foo.prototype.c = 3;
18
+ * Foo.prototype[Symbol.for('d')] = 4;
19
+ *
20
+ * allKeysIn(new Foo); // ['a', 'c', Symbol(b), Symbol(d)]
21
+ *
22
+ */
23
+ declare function allKeysIn<T extends object>(object: T): (string | symbol)[];
24
+ export default allKeysIn;
@@ -1,9 +1,3 @@
1
- export declare function baseDebounce<T extends (...args: any[]) => any>(func: T, wait: number, immediate: boolean, __throttle__?: boolean): {
2
- (this: any, ...args: Parameters<T>): ReturnType<T>;
3
- cancel: () => void;
4
- flush: () => ReturnType<T>;
5
- pending: () => boolean;
6
- };
7
1
  /**
8
2
  * 创建一个防抖动函数,该函数会从上一次被调用后,延迟 `wait` 毫秒数后调用 `func` 方法。
9
3
  *
package/types/index.d.ts CHANGED
@@ -67,6 +67,9 @@ export { default as randomInt } from './randomInt';
67
67
  * @module Object
68
68
  * @since 1.0.0
69
69
  */
70
+ export { default as allKeys } from './allKeys';
71
+ export { default as allKeysIn } from './allKeysIn';
72
+ export { default as keysIn } from './keysIn';
70
73
  export { default as merge } from './merge';
71
74
  export { default as omit } from './omit';
72
75
  export { default as omitBy } from './omitBy';
@@ -0,0 +1,7 @@
1
+ declare function baseDebounce<T extends (...args: any[]) => any>(func: T, wait: number, immediate: boolean, __throttle__?: boolean): {
2
+ (this: any, ...args: Parameters<T>): ReturnType<T>;
3
+ cancel: () => void;
4
+ flush: () => ReturnType<T>;
5
+ pending: () => boolean;
6
+ };
7
+ export default baseDebounce;
@@ -0,0 +1,24 @@
1
+ /**
2
+ * 创建一个数组,包含对象自身及继承的可枚举属性(不包含 `Symbol` 属性)。
3
+ *
4
+ * 同 `key...in` 。
5
+ *
6
+ * @static
7
+ * @alias module:Object.keysIn
8
+ * @since 1.1.0
9
+ * @param {Object} object 要查询的对象。
10
+ * @returns {string[]} 对象自身及继承的可枚举属性名(不包含 `Symbol` 属性)数组。
11
+ * @example
12
+ *
13
+ * function Foo(){
14
+ * this.a = 1;
15
+ * this[Symbol.for('b')] = 2;
16
+ * }
17
+ * Foo.prototype.c = 3;
18
+ * Foo.prototype[Symbol.for('d')] = 4;
19
+ *
20
+ * keysIn(new Foo); // ['a', 'c']
21
+ *
22
+ */
23
+ declare function keysIn<T extends object>(object: T): string[];
24
+ export default keysIn;