@rc-component/util 1.6.1 → 1.7.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/es/KeyCode.d.ts CHANGED
@@ -432,5 +432,6 @@ declare const KeyCode: {
432
432
  * whether character is entered.
433
433
  */
434
434
  isCharacterKey: (keyCode: number) => boolean;
435
+ isEditableTarget: (e: KeyboardEvent) => boolean;
435
436
  };
436
437
  export default KeyCode;
package/es/KeyCode.js CHANGED
@@ -535,6 +535,17 @@ const KeyCode = {
535
535
  default:
536
536
  return false;
537
537
  }
538
+ },
539
+ isEditableTarget: function isEditableTarget(e) {
540
+ const target = e.target;
541
+ if (!(target instanceof HTMLElement)) {
542
+ return false;
543
+ }
544
+ const tagName = target.tagName;
545
+ if (tagName === 'INPUT' || tagName === 'TEXTAREA' || tagName === 'SELECT' || target.isContentEditable) {
546
+ return true;
547
+ }
548
+ return false;
538
549
  }
539
550
  };
540
551
  export default KeyCode;
package/es/utils/set.js CHANGED
@@ -71,7 +71,9 @@ export function mergeWith(sources, config = {}) {
71
71
  clone = set(clone, path, createEmpty(value));
72
72
  }
73
73
  keys(value).forEach(key => {
74
- internalMerge([...path, key], loopSet);
74
+ if (Object.getOwnPropertyDescriptor(value, key).enumerable) {
75
+ internalMerge([...path, key], loopSet);
76
+ }
75
77
  });
76
78
  }
77
79
  } else {
package/lib/KeyCode.d.ts CHANGED
@@ -432,5 +432,6 @@ declare const KeyCode: {
432
432
  * whether character is entered.
433
433
  */
434
434
  isCharacterKey: (keyCode: number) => boolean;
435
+ isEditableTarget: (e: KeyboardEvent) => boolean;
435
436
  };
436
437
  export default KeyCode;
package/lib/KeyCode.js CHANGED
@@ -541,6 +541,17 @@ const KeyCode = {
541
541
  default:
542
542
  return false;
543
543
  }
544
+ },
545
+ isEditableTarget: function isEditableTarget(e) {
546
+ const target = e.target;
547
+ if (!(target instanceof HTMLElement)) {
548
+ return false;
549
+ }
550
+ const tagName = target.tagName;
551
+ if (tagName === 'INPUT' || tagName === 'TEXTAREA' || tagName === 'SELECT' || target.isContentEditable) {
552
+ return true;
553
+ }
554
+ return false;
544
555
  }
545
556
  };
546
557
  var _default = exports.default = KeyCode;
package/lib/utils/set.js CHANGED
@@ -80,7 +80,9 @@ function mergeWith(sources, config = {}) {
80
80
  clone = set(clone, path, createEmpty(value));
81
81
  }
82
82
  keys(value).forEach(key => {
83
- internalMerge([...path, key], loopSet);
83
+ if (Object.getOwnPropertyDescriptor(value, key).enumerable) {
84
+ internalMerge([...path, key], loopSet);
85
+ }
84
86
  });
85
87
  }
86
88
  } else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rc-component/util",
3
- "version": "1.6.1",
3
+ "version": "1.7.0",
4
4
  "description": "Common Utils For React Component",
5
5
  "keywords": [
6
6
  "react",