parsec-hooks 1.0.13 → 1.0.16

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.
@@ -1,6 +1,6 @@
1
1
  declare const _default: () => {
2
2
  countdown: number;
3
- clearCountdownTimer: () => void;
3
+ clearCountdownTimer: () => boolean;
4
4
  stopCountdownTimer: () => void;
5
5
  setCountdown: (s: number) => Promise<unknown>;
6
6
  countdownText: string;
@@ -19,9 +19,9 @@ var _default = function _default() {
19
19
  countdown = _useRefState2[0],
20
20
  setCountdown = _useRefState2[1];
21
21
 
22
- var timer = (0, _react.useRef)();
22
+ var stopRef = (0, _react.useRef)(false);
23
23
  var clearCountdownTimer = (0, _react.useCallback)(function () {
24
- return timer.current && clearInterval(timer.current);
24
+ return stopRef.current = true;
25
25
  }, []);
26
26
  var stopCountdownTimer = (0, _react.useCallback)(function () {
27
27
  clearCountdownTimer();
@@ -33,19 +33,40 @@ var _default = function _default() {
33
33
  stopCountdownTimer: stopCountdownTimer,
34
34
  setCountdown: (0, _react.useCallback)(function (s) {
35
35
  return new Promise(function (resolve) {
36
- clearCountdownTimer();
37
- var countdown = s;
38
- setCountdown(countdown);
39
- timer.current = setInterval(function () {
40
- setCountdown(--countdown);
41
-
42
- if (!countdown) {
43
- clearCountdownTimer();
44
- resolve();
36
+ stopRef.current = false;
37
+ setCountdown(s);
38
+ var startTime = +new Date();
39
+
40
+ var start = function start(prev) {
41
+ var now = +new Date();
42
+
43
+ if (stopRef.current) {
44
+ return;
45
+ }
46
+
47
+ if (now - prev > 1000) {
48
+ var count = s - Math.round((now - startTime) / 1000);
49
+ setCountdown(count);
50
+
51
+ if (count <= 0) {
52
+ resolve();
53
+ } else {
54
+ requestAnimationFrame(function () {
55
+ return start(now);
56
+ });
57
+ }
58
+ } else {
59
+ requestAnimationFrame(function () {
60
+ return start(prev);
61
+ });
45
62
  }
46
- }, 1000);
63
+ };
64
+
65
+ requestAnimationFrame(function () {
66
+ return start(startTime);
67
+ });
47
68
  });
48
- }, [clearCountdownTimer, setCountdown]),
69
+ }, [setCountdown]),
49
70
  countdownText: countdown ? "(".concat(countdown, " s)") : ''
50
71
  };
51
72
  };
@@ -60,9 +60,12 @@ var _default = function _default(_ref) {
60
60
  break;
61
61
  }
62
62
 
63
- var firstStr = str.substr(0, newbeginLen);
64
- var lastStr = str.substr(newendLen);
65
- var middleStr = '*'.repeat(newendLen - newbeginLen + 1);
63
+ var firstStr = str.slice(0, newbeginLen);
64
+ var lastStr = str.slice(newendLen);
65
+ var middleStr = '*'.repeat(newendLen - newbeginLen);
66
+ console.log('firstStr', firstStr);
67
+ console.log('middleStr', middleStr);
68
+ console.log('lastStr', lastStr);
66
69
  var tempStr = firstStr + middleStr + lastStr;
67
70
  return tempStr;
68
71
  };
@@ -0,0 +1,6 @@
1
+ declare const _default: (text: string) => string;
2
+ /**
3
+ * formatSpace4
4
+ * 每隔4位加空格,格式化银行卡.
5
+ */
6
+ export default _default;
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var formatDigitPattern = function formatDigitPattern(_ref) {
9
+ var text = _ref.text,
10
+ _ref$digit = _ref.digit,
11
+ digit = _ref$digit === void 0 ? 4 : _ref$digit,
12
+ _ref$pattern = _ref.pattern,
13
+ pattern = _ref$pattern === void 0 ? ' ' : _ref$pattern;
14
+ var num = text.length / digit;
15
+
16
+ if (String(num).indexOf('.') > -1) {
17
+ num = parseInt(num.toFixed(0)) + 1;
18
+ }
19
+
20
+ var srt = [];
21
+
22
+ for (var i = 0; i < num; i++) {
23
+ srt.push("".concat(text.substring(i * digit, i * digit + digit)));
24
+ } //去掉最后一个空格
25
+
26
+
27
+ var _text = srt.join("".concat(pattern));
28
+
29
+ if (_text.endsWith(pattern)) {
30
+ return _text.substring(0, _text.length - 1);
31
+ }
32
+
33
+ return _text;
34
+ };
35
+ /**
36
+ * formatSpace4
37
+ * 每隔4位加空格,格式化银行卡.
38
+ */
39
+
40
+
41
+ var _default = function _default(text) {
42
+ return formatDigitPattern({
43
+ text: text
44
+ });
45
+ };
46
+
47
+ exports.default = _default;
@@ -2,5 +2,7 @@ export { default as desenStr } from './desenStr';
2
2
  export { default as getIDInfo } from './getIDInfo';
3
3
  export { default as decrypt } from './decrypt';
4
4
  export { default as encrypt } from './encrypt';
5
+ export { default as formatSpace4 } from './formatSpace4';
5
6
  export { default as isWx } from './isWx';
6
7
  export { default as selectFiles } from './selectFiles';
8
+ export { default as replaceRange } from './replaceRange';
@@ -29,6 +29,12 @@ Object.defineProperty(exports, "encrypt", {
29
29
  return _encrypt.default;
30
30
  }
31
31
  });
32
+ Object.defineProperty(exports, "formatSpace4", {
33
+ enumerable: true,
34
+ get: function get() {
35
+ return _formatSpace.default;
36
+ }
37
+ });
32
38
  Object.defineProperty(exports, "isWx", {
33
39
  enumerable: true,
34
40
  get: function get() {
@@ -41,6 +47,12 @@ Object.defineProperty(exports, "selectFiles", {
41
47
  return _selectFiles.default;
42
48
  }
43
49
  });
50
+ Object.defineProperty(exports, "replaceRange", {
51
+ enumerable: true,
52
+ get: function get() {
53
+ return _replaceRange.default;
54
+ }
55
+ });
44
56
 
45
57
  var _desenStr = _interopRequireDefault(require("./desenStr"));
46
58
 
@@ -50,6 +62,10 @@ var _decrypt = _interopRequireDefault(require("./decrypt"));
50
62
 
51
63
  var _encrypt = _interopRequireDefault(require("./encrypt"));
52
64
 
65
+ var _formatSpace = _interopRequireDefault(require("./formatSpace4"));
66
+
53
67
  var _isWx = _interopRequireDefault(require("./isWx"));
54
68
 
55
- var _selectFiles = _interopRequireDefault(require("./selectFiles"));
69
+ var _selectFiles = _interopRequireDefault(require("./selectFiles"));
70
+
71
+ var _replaceRange = _interopRequireDefault(require("./replaceRange"));
@@ -0,0 +1,11 @@
1
+ declare const _default: ({ text, start, end, replacement }: {
2
+ text: string;
3
+ start?: number;
4
+ end?: number;
5
+ replacement?: string;
6
+ }) => string;
7
+ /**
8
+ * replaceRange
9
+ * 常用于手机号码或姓名加密处理.
10
+ */
11
+ export default _default;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ /**
9
+ * replaceRange
10
+ * 常用于手机号码或姓名加密处理.
11
+ */
12
+ var _default = function _default(_ref) {
13
+ var text = _ref.text,
14
+ _ref$start = _ref.start,
15
+ start = _ref$start === void 0 ? 3 : _ref$start,
16
+ _ref$end = _ref.end,
17
+ end = _ref$end === void 0 ? 7 : _ref$end,
18
+ _ref$replacement = _ref.replacement,
19
+ replacement = _ref$replacement === void 0 ? '****' : _ref$replacement;
20
+ var startStr = text.substring(0, start);
21
+ var endStr = text.substring(end, text.length);
22
+ return "".concat(startStr).concat(replacement).concat(endStr);
23
+ };
24
+
25
+ exports.default = _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "parsec-hooks",
3
- "version": "1.0.13",
3
+ "version": "1.0.16",
4
4
  "description": "秒差距前端常用的hooks工具",
5
5
  "author": "mushan0x0",
6
6
  "license": "MIT",