@giveback007/util-lib 0.24.1 → 0.24.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.
package/dist/general.d.ts CHANGED
@@ -2,11 +2,17 @@ import type { AnyObj, JsType } from '.';
2
2
  /**
3
3
  * @example
4
4
  * ```js
5
- * interval((i) => console.log('The index is: ' + i), 1000, 2) =>
6
- * //=> 'The index is: 0' //=> 'The index is: 1'
5
+ * interval((i) => console.log('idx: ' + i), 1000, 2))
6
+ * // (log =>) "idx: 0"
7
+ * // (log =>) "idx: 1"
8
+ * // only ran twice because maxTimes was set to: `2` (third parameter)
9
+ *
10
+ * interval((i, stop) => i === 10 && stop());
11
+ * // when i is 10 will stop the interval
7
12
  * ```
8
13
  */
9
- export declare const interval: (funct: (i: number) => any, ms: number, times?: number | undefined) => {
14
+ export declare const interval: (funct: (i: number, stop: () => void) => any, ms: number, maxTimes?: number | undefined) => {
15
+ /** Stop the interval */
10
16
  stop: () => void;
11
17
  };
12
18
  /** A promise that waits `ms` amount of milliseconds to execute */
package/dist/general.js CHANGED
@@ -5,21 +5,33 @@ const _1 = require(".");
5
5
  /**
6
6
  * @example
7
7
  * ```js
8
- * interval((i) => console.log('The index is: ' + i), 1000, 2) =>
9
- * //=> 'The index is: 0' //=> 'The index is: 1'
8
+ * interval((i) => console.log('idx: ' + i), 1000, 2))
9
+ * // (log =>) "idx: 0"
10
+ * // (log =>) "idx: 1"
11
+ * // only ran twice because maxTimes was set to: `2` (third parameter)
12
+ *
13
+ * interval((i, stop) => i === 10 && stop());
14
+ * // when i is 10 will stop the interval
10
15
  * ```
11
16
  */
12
- const interval = (funct, ms, times) => {
13
- if (_1.isType(times, 'number') && times < 1)
17
+ const interval = (funct, ms,
18
+ /** */
19
+ maxTimes) => {
20
+ if (_1.isType(maxTimes, 'number') && maxTimes < 1)
14
21
  throw Error('argument "times" can\'t be less than 1');
15
22
  let i = 0;
16
- const intv = setInterval(() => {
17
- funct(i);
23
+ /** stops the interval */
24
+ const stop = () => clearInterval(itv);
25
+ const itv = setInterval(() => {
26
+ funct(i, stop);
18
27
  i++;
19
- if (times && i >= times)
20
- clearInterval(intv);
28
+ if (maxTimes && i >= maxTimes)
29
+ stop();
21
30
  }, ms);
22
- return { stop: () => clearInterval(intv) };
31
+ return {
32
+ /** Stop the interval */
33
+ stop
34
+ };
23
35
  };
24
36
  exports.interval = interval;
25
37
  /** A promise that waits `ms` amount of milliseconds to execute */
@@ -1 +1 @@
1
- {"version":3,"file":"general.js","sourceRoot":"","sources":["../src/general.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"general.js","sourceRoot":"","sources":["../src/general.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@giveback007/util-lib",
3
- "version": "0.24.1",
3
+ "version": "0.24.2",
4
4
  "description": "Small util function library",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {
8
- "publish-script": "del dist /s /f /q && npm run lint && npm run build && npm publish",
8
+ "pub": "del dist /s /f /q && npm run lint && npm run build && npm publish",
9
9
  "test": "jest --watch",
10
10
  "build": "tsc",
11
11
  "build:watch": "tsc --watch",
package/src/general.ts CHANGED
@@ -5,27 +5,39 @@ import { isType, objMap, hasKey, clone } from '.';
5
5
  /**
6
6
  * @example
7
7
  * ```js
8
- * interval((i) => console.log('The index is: ' + i), 1000, 2) =>
9
- * //=> 'The index is: 0' //=> 'The index is: 1'
8
+ * interval((i) => console.log('idx: ' + i), 1000, 2))
9
+ * // (log =>) "idx: 0"
10
+ * // (log =>) "idx: 1"
11
+ * // only ran twice because maxTimes was set to: `2` (third parameter)
12
+ *
13
+ * interval((i, stop) => i === 10 && stop());
14
+ * // when i is 10 will stop the interval
10
15
  * ```
11
16
  */
12
17
  export const interval = (
13
- funct: (i: number) => any,
18
+ funct: (i: number, stop: () => void) => any,
14
19
  ms: number,
15
- times?: number
20
+
21
+ /** */
22
+ maxTimes?: number
16
23
  ) => {
17
- if (isType(times, 'number') && times < 1)
24
+ if (isType(maxTimes, 'number') && maxTimes < 1)
18
25
  throw Error('argument "times" can\'t be less than 1');
19
26
 
20
27
  let i = 0;
21
- const intv = setInterval(() => {
22
- funct(i);
28
+ /** stops the interval */
29
+ const stop = () => clearInterval(itv);
30
+ const itv = setInterval(() => {
31
+ funct(i, stop);
23
32
  i++;
24
33
 
25
- if (times && i >= times) clearInterval(intv);
34
+ if (maxTimes && i >= maxTimes) stop();
26
35
  }, ms);
27
36
 
28
- return { stop: () => clearInterval(intv) };
37
+ return {
38
+ /** Stop the interval */
39
+ stop
40
+ };
29
41
  }
30
42
 
31
43
  /** A promise that waits `ms` amount of milliseconds to execute */