@rc-component/util 1.2.0 → 1.2.2

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.
@@ -83,8 +83,11 @@ export function injectCSS(css, option = {}) {
83
83
  return styleNode;
84
84
  }
85
85
  function findExistNode(key, option = {}) {
86
- const container = getContainer(option);
87
- return (option.styles || findStyles(container)).find(node => node.getAttribute(getMark(option)) === key);
86
+ let {
87
+ styles
88
+ } = option;
89
+ styles ||= findStyles(getContainer(option));
90
+ return styles.find(node => node.getAttribute(getMark(option)) === key);
88
91
  }
89
92
  export function removeCSS(key, option = {}) {
90
93
  const existNode = findExistNode(key, option);
package/es/index.d.ts CHANGED
@@ -2,5 +2,7 @@ export { default as useEvent } from './hooks/useEvent';
2
2
  export { default as useMergedState } from './hooks/useMergedState';
3
3
  export { supportNodeRef, supportRef, useComposeRef } from './ref';
4
4
  export { default as get } from './utils/get';
5
- export { default as set } from './utils/set';
6
- export { default as warning } from './warning';
5
+ export { default as set, merge } from './utils/set';
6
+ export { default as warning, noteOnce } from './warning';
7
+ export { default as omit } from './omit';
8
+ export { default as toArray } from './Children/toArray';
package/es/index.js CHANGED
@@ -2,5 +2,7 @@ export { default as useEvent } from "./hooks/useEvent";
2
2
  export { default as useMergedState } from "./hooks/useMergedState";
3
3
  export { supportNodeRef, supportRef, useComposeRef } from "./ref";
4
4
  export { default as get } from "./utils/get";
5
- export { default as set } from "./utils/set";
6
- export { default as warning } from "./warning";
5
+ export { default as set, merge } from "./utils/set";
6
+ export { default as warning, noteOnce } from "./warning";
7
+ export { default as omit } from "./omit";
8
+ export { default as toArray } from "./Children/toArray";
package/es/isMobile.js CHANGED
@@ -1,7 +1,8 @@
1
+ import isMobile from 'is-mobile';
2
+ let cached;
1
3
  export default (() => {
2
- if (typeof navigator === 'undefined' || typeof window === 'undefined') {
3
- return false;
4
+ if (typeof cached === 'undefined') {
5
+ cached = isMobile();
4
6
  }
5
- const agent = navigator.userAgent || navigator.vendor || window.opera;
6
- return /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(agent) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(agent?.substr(0, 4));
7
+ return cached;
7
8
  });
package/es/ref.js CHANGED
@@ -1,7 +1,8 @@
1
- import { isValidElement } from 'react';
1
+ import { isValidElement, version } from 'react';
2
2
  import { ForwardRef, isMemo } from 'react-is';
3
3
  import useMemo from "./hooks/useMemo";
4
4
  import isFragment from "./React/isFragment";
5
+ const ReactMajorVersion = Number(version.split('.')[0]);
5
6
  export const fillRef = (ref, node) => {
6
7
  if (typeof ref === 'function') {
7
8
  ref(node);
@@ -35,7 +36,7 @@ export const supportRef = nodeOrComponent => {
35
36
  }
36
37
 
37
38
  // React 19 no need `forwardRef` anymore. So just pass if is a React element.
38
- if (isReactElement(nodeOrComponent) && nodeOrComponent.props.propertyIsEnumerable('ref')) {
39
+ if (isReactElement(nodeOrComponent) && ReactMajorVersion >= 19) {
39
40
  return true;
40
41
  }
41
42
  const type = isMemo(nodeOrComponent) ? nodeOrComponent.type.type : nodeOrComponent.type;
@@ -93,8 +93,11 @@ function injectCSS(css, option = {}) {
93
93
  return styleNode;
94
94
  }
95
95
  function findExistNode(key, option = {}) {
96
- const container = getContainer(option);
97
- return (option.styles || findStyles(container)).find(node => node.getAttribute(getMark(option)) === key);
96
+ let {
97
+ styles
98
+ } = option;
99
+ styles ||= findStyles(getContainer(option));
100
+ return styles.find(node => node.getAttribute(getMark(option)) === key);
98
101
  }
99
102
  function removeCSS(key, option = {}) {
100
103
  const existNode = findExistNode(key, option);
package/lib/index.d.ts CHANGED
@@ -2,5 +2,7 @@ export { default as useEvent } from './hooks/useEvent';
2
2
  export { default as useMergedState } from './hooks/useMergedState';
3
3
  export { supportNodeRef, supportRef, useComposeRef } from './ref';
4
4
  export { default as get } from './utils/get';
5
- export { default as set } from './utils/set';
6
- export { default as warning } from './warning';
5
+ export { default as set, merge } from './utils/set';
6
+ export { default as warning, noteOnce } from './warning';
7
+ export { default as omit } from './omit';
8
+ export { default as toArray } from './Children/toArray';
package/lib/index.js CHANGED
@@ -9,6 +9,24 @@ Object.defineProperty(exports, "get", {
9
9
  return _get.default;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "merge", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _set.merge;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "noteOnce", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _warning.noteOnce;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "omit", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _omit.default;
28
+ }
29
+ });
12
30
  Object.defineProperty(exports, "set", {
13
31
  enumerable: true,
14
32
  get: function () {
@@ -27,6 +45,12 @@ Object.defineProperty(exports, "supportRef", {
27
45
  return _ref.supportRef;
28
46
  }
29
47
  });
48
+ Object.defineProperty(exports, "toArray", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _toArray.default;
52
+ }
53
+ });
30
54
  Object.defineProperty(exports, "useComposeRef", {
31
55
  enumerable: true,
32
56
  get: function () {
@@ -55,6 +79,10 @@ var _useEvent = _interopRequireDefault(require("./hooks/useEvent"));
55
79
  var _useMergedState = _interopRequireDefault(require("./hooks/useMergedState"));
56
80
  var _ref = require("./ref");
57
81
  var _get = _interopRequireDefault(require("./utils/get"));
58
- var _set = _interopRequireDefault(require("./utils/set"));
59
- var _warning = _interopRequireDefault(require("./warning"));
82
+ var _set = _interopRequireWildcard(require("./utils/set"));
83
+ var _warning = _interopRequireWildcard(require("./warning"));
84
+ var _omit = _interopRequireDefault(require("./omit"));
85
+ var _toArray = _interopRequireDefault(require("./Children/toArray"));
86
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
87
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
60
88
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
package/lib/isMobile.js CHANGED
@@ -4,11 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ var _isMobile = _interopRequireDefault(require("is-mobile"));
8
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ let cached;
7
10
  var _default = () => {
8
- if (typeof navigator === 'undefined' || typeof window === 'undefined') {
9
- return false;
11
+ if (typeof cached === 'undefined') {
12
+ cached = (0, _isMobile.default)();
10
13
  }
11
- const agent = navigator.userAgent || navigator.vendor || window.opera;
12
- return /(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(agent) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(agent?.substr(0, 4));
14
+ return cached;
13
15
  };
14
16
  exports.default = _default;
package/lib/ref.js CHANGED
@@ -9,6 +9,7 @@ var _reactIs = require("react-is");
9
9
  var _useMemo = _interopRequireDefault(require("./hooks/useMemo"));
10
10
  var _isFragment = _interopRequireDefault(require("./React/isFragment"));
11
11
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ const ReactMajorVersion = Number(_react.version.split('.')[0]);
12
13
  const fillRef = (ref, node) => {
13
14
  if (typeof ref === 'function') {
14
15
  ref(node);
@@ -45,7 +46,7 @@ const supportRef = nodeOrComponent => {
45
46
  }
46
47
 
47
48
  // React 19 no need `forwardRef` anymore. So just pass if is a React element.
48
- if (isReactElement(nodeOrComponent) && nodeOrComponent.props.propertyIsEnumerable('ref')) {
49
+ if (isReactElement(nodeOrComponent) && ReactMajorVersion >= 19) {
49
50
  return true;
50
51
  }
51
52
  const type = (0, _reactIs.isMemo)(nodeOrComponent) ? nodeOrComponent.type.type : nodeOrComponent.type;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rc-component/util",
3
- "version": "1.2.0",
3
+ "version": "1.2.2",
4
4
  "description": "Common Utils For React Component",
5
5
  "keywords": [
6
6
  "react",
@@ -27,7 +27,6 @@
27
27
  "coverage": "npm test -- --coverage",
28
28
  "lint": "eslint src/ --ext .tsx,.ts & eslint tests/ --ext .tsx,.ts",
29
29
  "prepare": "husky install",
30
- "prepublishOnly": "npm run compile && np --yolo --no-publish",
31
30
  "start": "dumi dev",
32
31
  "test": "rc-test"
33
32
  },
@@ -38,10 +37,12 @@
38
37
  ]
39
38
  },
40
39
  "dependencies": {
40
+ "is-mobile": "^5.0.0",
41
41
  "react-is": "^18.2.0"
42
42
  },
43
43
  "devDependencies": {
44
44
  "@rc-component/father-plugin": "^2.0.1",
45
+ "@rc-component/np": "^1.0.3",
45
46
  "@testing-library/react": "^16.0.0",
46
47
  "@types/jest": "^29.4.0",
47
48
  "@types/node": "^22.5.5",
@@ -60,7 +61,6 @@
60
61
  "glob": "^9.2.1",
61
62
  "husky": "^9.1.6",
62
63
  "lint-staged": "^15.1.0",
63
- "np": "^10.0.2",
64
64
  "prettier": "^3.3.2",
65
65
  "rc-test": "^7.0.14",
66
66
  "react": "^18.0.0",