@idlebox/common 1.3.1 → 1.3.4

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.
Files changed (77) hide show
  1. package/docs/package-public.d.ts +7 -6
  2. package/lib/_export_all_in_one_index.cjs.map +10 -1
  3. package/lib/array/arrayDiff.cjs.map +10 -1
  4. package/lib/array/arraySame.cjs.map +10 -1
  5. package/lib/array/arrayUnique.cjs.map +10 -1
  6. package/lib/array/normalizeArray.cjs.map +10 -1
  7. package/lib/array/sortAlpha.cjs.map +10 -1
  8. package/lib/date/consts.cjs.map +10 -1
  9. package/lib/date/isInvalid.cjs.map +10 -1
  10. package/lib/date/sibling.cjs.map +10 -1
  11. package/lib/date/timeString.cjs.map +10 -1
  12. package/lib/date/unix.cjs.map +10 -1
  13. package/lib/debugging/tryInspect.cjs.map +10 -1
  14. package/lib/error/convertUnknown.cjs.map +10 -1
  15. package/lib/error/getFrame.cjs.map +10 -1
  16. package/lib/function/asyncCallbackList.cjs.map +10 -1
  17. package/lib/function/callbackList.cjs +21 -6
  18. package/lib/function/callbackList.cjs.map +10 -1
  19. package/lib/function/callbackList.js +16 -6
  20. package/lib/function/callbackList.js.map +1 -1
  21. package/lib/function/delayCallbackList.cjs.map +10 -1
  22. package/lib/function/functionName.cjs.map +10 -1
  23. package/lib/lifecycle/dispose/bridges/rxjs.cjs.map +10 -1
  24. package/lib/lifecycle/dispose/disposableEvent.cjs.map +10 -1
  25. package/lib/lifecycle/dispose/disposedError.cjs.map +10 -1
  26. package/lib/lifecycle/dispose/lifecycle.async.cjs.map +10 -1
  27. package/lib/lifecycle/dispose/lifecycle.cjs.map +10 -1
  28. package/lib/lifecycle/dispose/lifecycle.global.cjs.map +10 -1
  29. package/lib/lifecycle/dispose/lifecycle.sync.cjs.map +10 -1
  30. package/lib/lifecycle/event/event.cjs.map +10 -1
  31. package/lib/lifecycle/promise/cancel.cjs.map +10 -1
  32. package/lib/lifecycle/promise/cancellationToken/driver.browser.cjs.map +10 -1
  33. package/lib/lifecycle/promise/cancellationToken/driver.common.cjs.map +10 -1
  34. package/lib/lifecycle/promise/cancellationToken/source.cjs.map +10 -1
  35. package/lib/lifecycle/promise/deferredPromise.cjs.map +10 -1
  36. package/lib/lifecycle/timeout/timeout.cjs.map +10 -1
  37. package/lib/lifecycle/timeout/timeoutError.cjs.map +10 -1
  38. package/lib/log/logger.cjs.map +10 -1
  39. package/lib/mapSet/customSet.cjs.map +10 -1
  40. package/lib/mapSet/extendMap.cjs.map +10 -1
  41. package/lib/misc/assertNotNull.cjs.map +10 -1
  42. package/lib/object/definePublicConstant.cjs.map +10 -1
  43. package/lib/object/initOnRead.cjs.map +10 -1
  44. package/lib/object/objectPath.cjs.map +10 -1
  45. package/lib/object/objectSame.cjs.map +10 -1
  46. package/lib/path/isAbsolute.cjs.map +10 -1
  47. package/lib/path/normalizePath.cjs.map +10 -1
  48. package/lib/path/pathArray.cjs.map +10 -1
  49. package/lib/platform/globalObject.cjs.map +10 -1
  50. package/lib/platform/globalSingleton.cjs.map +10 -1
  51. package/lib/platform/globalSymbol.cjs.map +10 -1
  52. package/lib/platform/os.cjs.map +10 -1
  53. package/lib/promise/awaitIterator.cjs.map +10 -1
  54. package/lib/promise/finishAllPromise.cjs.map +10 -1
  55. package/lib/promise/promiseBool.cjs.map +10 -1
  56. package/lib/promise/promisePool.cjs.map +10 -1
  57. package/lib/promise/timeoutPromisePool.cjs.map +10 -1
  58. package/lib/reflection/classes/hookClass.cjs.map +10 -1
  59. package/lib/reflection/classes/singleton.cjs.map +10 -1
  60. package/lib/reflection/methods/bind.cjs +7 -2
  61. package/lib/reflection/methods/bind.cjs.map +10 -1
  62. package/lib/reflection/methods/bind.js +7 -2
  63. package/lib/reflection/methods/bind.js.map +1 -1
  64. package/lib/reflection/methods/initOnRead.cjs.map +10 -1
  65. package/lib/reflection/methods/memorize.cjs.map +10 -1
  66. package/lib/string/castCase.cjs +3 -3
  67. package/lib/string/castCase.cjs.map +10 -1
  68. package/lib/string/castCase.js +3 -3
  69. package/lib/string/castCase.js.map +1 -1
  70. package/lib/string/escapeRegexp.cjs.map +10 -1
  71. package/lib/string/pad2.cjs.map +10 -1
  72. package/lib/string/sizeString.cjs.map +10 -1
  73. package/package.json +7 -8
  74. package/src/function/callbackList.ts +19 -7
  75. package/src/reflection/methods/bind.ts +7 -2
  76. package/src/string/castCase.ts +5 -5
  77. package/config/rush-project.json +0 -3
@@ -1 +1,10 @@
1
- {"version":3,"file":"escapeRegexp.js","sourceRoot":"","sources":["../../src/string/escapeRegexp.ts"],"names":[],"mappings":";;;AAAA,cAAc;AACd,SAAgB,YAAY,CAAC,GAAW;IACvC,OAAO,GAAG,CAAC,OAAO,CAAC,qCAAqC,EAAE,MAAM,CAAC,CAAC;AACnE,CAAC;AAFD,oCAEC"}
1
+ {
2
+ "version": 3,
3
+ "file": "escapeRegexp.cjs",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "../../src/string/escapeRegexp.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ";;;AAAA,cAAc;AACd,SAAgB,YAAY,CAAC,GAAW;IACvC,OAAO,GAAG,CAAC,OAAO,CAAC,qCAAqC,EAAE,MAAM,CAAC,CAAC;AACnE,CAAC;AAFD,oCAEC"
10
+ }
@@ -1 +1,10 @@
1
- {"version":3,"file":"pad2.js","sourceRoot":"","sources":["../../src/string/pad2.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,IAAI,CAAC,CAAS;IAC7B,IAAI,CAAC,GAAG,EAAE,EAAE;QACX,OAAO,GAAG,GAAG,CAAC,CAAC;KACf;SAAM;QACN,OAAO,EAAE,GAAG,CAAC,CAAC;KACd;AACF,CAAC;AAND,oBAMC"}
1
+ {
2
+ "version": 3,
3
+ "file": "pad2.cjs",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "../../src/string/pad2.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ";;;AAAA;;;GAGG;AACH,SAAgB,IAAI,CAAC,CAAS;IAC7B,IAAI,CAAC,GAAG,EAAE,EAAE;QACX,OAAO,GAAG,GAAG,CAAC,CAAC;KACf;SAAM;QACN,OAAO,EAAE,GAAG,CAAC,CAAC;KACd;AACF,CAAC;AAND,oBAMC"
10
+ }
@@ -1 +1,10 @@
1
- {"version":3,"file":"sizeString.js","sourceRoot":"","sources":["../../src/string/sizeString.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,SAAgB,WAAW,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC;IACnD,IAAI,KAAK,GAAG,CAAC,EAAE;QACd,OAAO,KAAK,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,IAAI,EAAE;QACxB,OAAO,KAAK,GAAG,GAAG,CAAC;KACnB;SAAM,IAAI,KAAK,GAAG,OAAO,EAAE;QAC3B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KAC7C;SAAM,IAAI,KAAK,GAAG,UAAU,EAAE;QAC9B,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KAChD;SAAM,IAAI,KAAK,GAAG,aAAa,EAAE;QACjC,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACnD;SAAM,IAAI,KAAK,GAAG,gBAAgB,EAAE;QACpC,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACtD;SAAM;QACN,OAAO,CAAC,KAAK,GAAG,gBAAgB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACzD;AACF,CAAC;AAhBD,kCAgBC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC;IACjD,IAAI,KAAK,GAAG,CAAC,EAAE;QACd,OAAO,KAAK,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,IAAI,EAAE;QACxB,OAAO,KAAK,GAAG,GAAG,CAAC;KACnB;SAAM,IAAI,KAAK,GAAG,OAAO,EAAE;QAC3B,cAAc;QACd,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KAC7C;SAAM,IAAI,KAAK,GAAG,UAAU,EAAE;QAC9B,qBAAqB;QACrB,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KAChD;SAAM,IAAI,KAAK,GAAG,aAAa,EAAE;QACjC,4BAA4B;QAC5B,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACnD;SAAM,IAAI,KAAK,GAAG,gBAAgB,EAAE;QACpC,mCAAmC;QACnC,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACtD;SAAM;QACN,OAAO,CAAC,KAAK,GAAG,gBAAgB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACzD;AACF,CAAC;AApBD,8BAoBC;AAED,kBAAkB;AAClB,SAAgB,UAAU,CAAC,GAAW;IACrC,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;AAC9B,CAAC;AAFD,gCAEC"}
1
+ {
2
+ "version": 3,
3
+ "file": "sizeString.cjs",
4
+ "sourceRoot": "",
5
+ "sources": [
6
+ "../../src/string/sizeString.ts"
7
+ ],
8
+ "names": [],
9
+ "mappings": ";;;AAAA;;;GAGG;AACH,SAAgB,WAAW,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC;IACnD,IAAI,KAAK,GAAG,CAAC,EAAE;QACd,OAAO,KAAK,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,IAAI,EAAE;QACxB,OAAO,KAAK,GAAG,GAAG,CAAC;KACnB;SAAM,IAAI,KAAK,GAAG,OAAO,EAAE;QAC3B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KAC7C;SAAM,IAAI,KAAK,GAAG,UAAU,EAAE;QAC9B,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KAChD;SAAM,IAAI,KAAK,GAAG,aAAa,EAAE;QACjC,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACnD;SAAM,IAAI,KAAK,GAAG,gBAAgB,EAAE;QACpC,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACtD;SAAM;QACN,OAAO,CAAC,KAAK,GAAG,gBAAgB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACzD;AACF,CAAC;AAhBD,kCAgBC;AAED;;;GAGG;AACH,SAAgB,SAAS,CAAC,KAAa,EAAE,KAAK,GAAG,CAAC;IACjD,IAAI,KAAK,GAAG,CAAC,EAAE;QACd,OAAO,KAAK,CAAC;KACb;SAAM,IAAI,KAAK,GAAG,IAAI,EAAE;QACxB,OAAO,KAAK,GAAG,GAAG,CAAC;KACnB;SAAM,IAAI,KAAK,GAAG,OAAO,EAAE;QAC3B,cAAc;QACd,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KAC7C;SAAM,IAAI,KAAK,GAAG,UAAU,EAAE;QAC9B,qBAAqB;QACrB,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KAChD;SAAM,IAAI,KAAK,GAAG,aAAa,EAAE;QACjC,4BAA4B;QAC5B,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACnD;SAAM,IAAI,KAAK,GAAG,gBAAgB,EAAE;QACpC,mCAAmC;QACnC,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACtD;SAAM;QACN,OAAO,CAAC,KAAK,GAAG,gBAAgB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;KACzD;AACF,CAAC;AApBD,8BAoBC;AAED,kBAAkB;AAClB,SAAgB,UAAU,CAAC,GAAW;IACrC,OAAO,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;AAC9B,CAAC;AAFD,gCAEC"
10
+ }
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "name": "@idlebox/common",
4
4
  "type": "module",
5
5
  "typings": "docs/package-public.d.ts",
6
- "version": "1.3.1",
6
+ "version": "1.3.4",
7
7
  "license": "MIT",
8
8
  "main": "./lib/_export_all_in_one_index.cjs",
9
9
  "module": "./lib/_export_all_in_one_index.js",
@@ -29,15 +29,14 @@
29
29
  "tslib": "^2.3.1"
30
30
  },
31
31
  "devDependencies": {
32
- "@build-script/builder": "^3.2.2",
33
- "@build-script/export-all-in-one": "^3.0.26",
34
- "@build-script/single-dog-asset": "^1.0.14",
35
- "@build-script/typescript-transformer-dual-package": "^1.0.23",
32
+ "@build-script/builder": "^3.2.3",
33
+ "@build-script/export-all-in-one": "^3.1.1",
34
+ "@build-script/single-dog-asset": "^1.0.16",
35
+ "@build-script/typescript-transformer-dual-package": "^1.0.25",
36
36
  "@idlebox/itypes": "^1.0.0",
37
37
  "gulp": "^4.0.2",
38
- "ttypescript": "^1.5.12",
39
- "typescript": "^4.5.2",
40
- "esm": "^3.2.25"
38
+ "ttypescript": "^1.5.13",
39
+ "typescript": "^4.6.2"
41
40
  },
42
41
  "repository": "https://github.com/GongT/baobao"
43
42
  }
@@ -3,7 +3,7 @@ import { nameFunction } from './functionName';
3
3
  export interface MyCallback<Argument extends unknown[]> {
4
4
  displayName?: string;
5
5
 
6
- (...param: Argument): void | undefined | boolean;
6
+ (...param: Argument): any;
7
7
  }
8
8
 
9
9
  /**
@@ -12,6 +12,7 @@ export interface MyCallback<Argument extends unknown[]> {
12
12
  export class CallbackList<Argument extends unknown[]> {
13
13
  protected list: MyCallback<Argument>[] = [];
14
14
  protected running: boolean = false;
15
+ protected stop: boolean = false;
15
16
 
16
17
  constructor() {
17
18
  this.run = (this.run as any).bind(this);
@@ -57,16 +58,27 @@ export class CallbackList<Argument extends unknown[]> {
57
58
  }
58
59
 
59
60
  /**
60
- * Stop run if one callback return `true`
61
- * @returns {boolean} true if one callback return true
61
+ * @returns {boolean} true if every callback called, false if stop in middle
62
62
  */
63
63
  run(...argument: Argument): boolean {
64
+ if (this.running) {
65
+ throw new Error("can not run CallbackList in it's callback.");
66
+ }
67
+ this.stop = false;
68
+
64
69
  this.running = true;
65
- const ret = this.list.some((cb) => {
66
- const ret = cb(...argument);
67
- return ret === undefined || ret;
68
- });
70
+ for (const cb of this.list) {
71
+ if (this.stop) break;
72
+ cb(...argument);
73
+ }
69
74
  this.running = false;
75
+
76
+ const ret = !this.stop;
77
+ this.stop = false;
70
78
  return ret;
71
79
  }
80
+
81
+ stopRun() {
82
+ this.stop = true;
83
+ }
72
84
  }
@@ -9,13 +9,18 @@ export const bindThis: MethodDecorator = <T>(
9
9
  const oldFunc = descriptor.value;
10
10
  if (typeof oldFunc === 'function') {
11
11
  return {
12
+ enumerable: true,
12
13
  configurable: true,
13
- writable: false,
14
14
  get: function (this: any) {
15
15
  delete this[propertyKey];
16
16
 
17
17
  const fn = oldFunc.bind(this);
18
- this[propertyKey] = fn;
18
+ Object.defineProperty(this, propertyKey, {
19
+ value: fn,
20
+ writable: false,
21
+ enumerable: true,
22
+ configurable: false,
23
+ });
19
24
  return fn;
20
25
  },
21
26
  };
@@ -9,16 +9,16 @@ export function camelCase(str: string) {
9
9
  * Uppercase first char
10
10
  * @public
11
11
  */
12
- export function ucfirst(str: string) {
13
- return str[0].toUpperCase() + str.slice(1);
12
+ export function ucfirst<T extends string>(str: T): Capitalize<T> {
13
+ return <any>(str[0].toUpperCase() + str.slice(1));
14
14
  }
15
15
 
16
16
  /**
17
- * Lowercase first char
17
+ * lowercase first char
18
18
  * @public
19
19
  */
20
- export function lcfirst(str: string) {
21
- return str.substr(0, 1).toLowerCase() + str.substr(1);
20
+ export function lcfirst<T extends string>(str: T): Uncapitalize<T> {
21
+ return <any>(str[0].toLowerCase() + str.slice(1));
22
22
  }
23
23
 
24
24
  /** @public */
@@ -1,3 +0,0 @@
1
- {
2
- "extends": "../../../common/config/rush-project.json"
3
- }