@leyyo/common 1.0.5 → 1.0.6

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 (222) hide show
  1. package/dist/assertion/common-assertion.d.ts +24 -35
  2. package/dist/assertion/common-assertion.js +73 -142
  3. package/dist/assertion/common-assertion.js.map +1 -1
  4. package/dist/assertion/index-types.d.ts +104 -109
  5. package/dist/assertion/index.d.ts +0 -1
  6. package/dist/assertion/index.js +0 -1
  7. package/dist/assertion/index.js.map +1 -1
  8. package/dist/descriptor/common-descriptor.d.ts +19 -0
  9. package/dist/descriptor/common-descriptor.js +92 -0
  10. package/dist/descriptor/common-descriptor.js.map +1 -0
  11. package/dist/descriptor/index-types.d.ts +21 -0
  12. package/dist/descriptor/index-types.js.map +1 -0
  13. package/dist/descriptor/index.d.ts +1 -0
  14. package/dist/{storage → descriptor}/index.js +0 -1
  15. package/dist/descriptor/index.js.map +1 -0
  16. package/dist/developer/common-developer.d.ts +29 -0
  17. package/dist/developer/common-developer.js +266 -0
  18. package/dist/developer/common-developer.js.map +1 -0
  19. package/dist/developer/index-types.d.ts +77 -0
  20. package/dist/developer/index-types.js.map +1 -0
  21. package/dist/developer/index.d.ts +1 -0
  22. package/dist/{literal → developer}/index.js +0 -15
  23. package/dist/developer/index.js.map +1 -0
  24. package/dist/error/common-error.js +27 -16
  25. package/dist/error/common-error.js.map +1 -1
  26. package/dist/error/index-types.d.ts +19 -0
  27. package/dist/error/index.d.ts +0 -1
  28. package/dist/error/index.js +0 -1
  29. package/dist/error/index.js.map +1 -1
  30. package/dist/exception/assertion-exception.d.ts +2 -2
  31. package/dist/exception/assertion-exception.js +2 -2
  32. package/dist/exception/assertion-exception.js.map +1 -1
  33. package/dist/exception/caused-exception.d.ts +2 -2
  34. package/dist/exception/caused-exception.js +2 -2
  35. package/dist/exception/caused-exception.js.map +1 -1
  36. package/dist/exception/developer-exception.d.ts +2 -2
  37. package/dist/exception/developer-exception.js +2 -2
  38. package/dist/exception/developer-exception.js.map +1 -1
  39. package/dist/exception/exception.d.ts +3 -1
  40. package/dist/exception/exception.js +13 -4
  41. package/dist/exception/exception.js.map +1 -1
  42. package/dist/exception/index-types.d.ts +1 -1
  43. package/dist/exception/index.d.ts +1 -0
  44. package/dist/exception/index.js +1 -0
  45. package/dist/exception/index.js.map +1 -1
  46. package/dist/exception/invalid-value-exception.d.ts +5 -0
  47. package/dist/exception/invalid-value-exception.js +12 -0
  48. package/dist/exception/invalid-value-exception.js.map +1 -0
  49. package/dist/fqn/common-fqn.d.ts +6 -2
  50. package/dist/fqn/common-fqn.js +56 -42
  51. package/dist/fqn/common-fqn.js.map +1 -1
  52. package/dist/fqn/index-types.d.ts +13 -2
  53. package/dist/fqn/index.d.ts +0 -1
  54. package/dist/fqn/index.js +0 -1
  55. package/dist/fqn/index.js.map +1 -1
  56. package/dist/hook/common-hook.d.ts +8 -6
  57. package/dist/hook/common-hook.js +23 -18
  58. package/dist/hook/common-hook.js.map +1 -1
  59. package/dist/hook/index-types.d.ts +27 -12
  60. package/dist/hook/index.d.ts +0 -1
  61. package/dist/hook/index.js +0 -1
  62. package/dist/hook/index.js.map +1 -1
  63. package/dist/index.d.ts +27 -12
  64. package/dist/index.js +29 -22
  65. package/dist/index.js.map +1 -1
  66. package/dist/internal.d.ts +2 -0
  67. package/dist/internal.js +3 -1
  68. package/dist/internal.js.map +1 -1
  69. package/dist/is/common-is.d.ts +14 -0
  70. package/dist/is/common-is.js +53 -9
  71. package/dist/is/common-is.js.map +1 -1
  72. package/dist/is/index-types.d.ts +46 -1
  73. package/dist/is/index.d.ts +0 -1
  74. package/dist/is/index.js +0 -1
  75. package/dist/is/index.js.map +1 -1
  76. package/dist/leyyo/index-types.d.ts +14 -3
  77. package/dist/leyyo/index.d.ts +1 -1
  78. package/dist/leyyo/index.js +1 -1
  79. package/dist/leyyo/index.js.map +1 -1
  80. package/dist/leyyo/leyyo-common-hook.d.ts +10 -0
  81. package/dist/leyyo/leyyo-common-hook.js +18 -0
  82. package/dist/leyyo/leyyo-common-hook.js.map +1 -0
  83. package/dist/leyyo/leyyo.d.ts +17 -10
  84. package/dist/leyyo/leyyo.js +64 -83
  85. package/dist/leyyo/leyyo.js.map +1 -1
  86. package/dist/log/common-log.d.ts +2 -2
  87. package/dist/log/common-log.js +47 -15
  88. package/dist/log/common-log.js.map +1 -1
  89. package/dist/log/index-types.d.ts +55 -1
  90. package/dist/log/index.d.ts +1 -1
  91. package/dist/log/index.js +1 -1
  92. package/dist/log/index.js.map +1 -1
  93. package/dist/log/logger-instance.d.ts +16 -9
  94. package/dist/log/logger-instance.js +37 -8
  95. package/dist/log/logger-instance.js.map +1 -1
  96. package/dist/log/severity.js.map +1 -0
  97. package/dist/repo/common-repo.d.ts +44 -0
  98. package/dist/repo/common-repo.js +180 -0
  99. package/dist/repo/common-repo.js.map +1 -0
  100. package/dist/repo/index-types.d.ts +104 -0
  101. package/dist/repo/index-types.js +3 -0
  102. package/dist/{literal → repo}/index-types.js.map +1 -1
  103. package/dist/repo/index.d.ts +2 -0
  104. package/dist/repo/index.js +19 -0
  105. package/dist/repo/index.js.map +1 -0
  106. package/dist/repo/repo-type.d.ts +8 -0
  107. package/dist/repo/repo-type.js +8 -0
  108. package/dist/repo/repo-type.js.map +1 -0
  109. package/dist/server.js +2 -2
  110. package/dist/server.js.map +1 -1
  111. package/dist/shared/index-types.d.ts +162 -132
  112. package/dist/shared/index-types.js +1 -1
  113. package/dist/shared/index-types.js.map +1 -1
  114. package/dist/shared/index.d.ts +0 -4
  115. package/dist/shared/index.js +0 -4
  116. package/dist/shared/index.js.map +1 -1
  117. package/dist/system/common-system.js +30 -3
  118. package/dist/system/common-system.js.map +1 -1
  119. package/dist/{literal → system}/country-code.js.map +1 -1
  120. package/dist/system/environment.js.map +1 -0
  121. package/dist/system/http-method.js.map +1 -0
  122. package/dist/system/http-place.js.map +1 -0
  123. package/dist/system/index.d.ts +8 -1
  124. package/dist/system/index.js +8 -1
  125. package/dist/system/index.js.map +1 -1
  126. package/dist/system/language-code.js.map +1 -0
  127. package/dist/system/locale-code.js.map +1 -0
  128. package/dist/system/sys-class.js.map +1 -0
  129. package/dist/system/sys-function.js.map +1 -0
  130. package/dist/to/common-to.d.ts +28 -21
  131. package/dist/to/common-to.js +541 -227
  132. package/dist/to/common-to.js.map +1 -1
  133. package/dist/to/index-types.d.ts +36 -16
  134. package/dist/to/index.d.ts +6 -1
  135. package/dist/to/index.js +6 -1
  136. package/dist/to/index.js.map +1 -1
  137. package/dist/to/key-value.js.map +1 -0
  138. package/dist/{shared → to}/list.d.ts +1 -0
  139. package/dist/{shared → to}/list.js +3 -0
  140. package/dist/to/list.js.map +1 -0
  141. package/dist/to/primitive.js.map +1 -0
  142. package/dist/to/real-value.js.map +1 -0
  143. package/dist/to/weak-false.js.map +1 -0
  144. package/dist/to/weak-true.js.map +1 -0
  145. package/dist/wrapper/common-wrapper.d.ts +26 -0
  146. package/dist/wrapper/common-wrapper.js +81 -0
  147. package/dist/wrapper/common-wrapper.js.map +1 -0
  148. package/dist/wrapper/index-types.d.ts +29 -0
  149. package/dist/wrapper/index-types.js +3 -0
  150. package/dist/{storage → wrapper}/index-types.js.map +1 -1
  151. package/dist/wrapper/index.d.ts +2 -0
  152. package/dist/wrapper/index.js +19 -0
  153. package/dist/wrapper/index.js.map +1 -0
  154. package/dist/wrapper/wrap.d.ts +7 -0
  155. package/dist/wrapper/wrap.js +11 -0
  156. package/dist/wrapper/wrap.js.map +1 -0
  157. package/package.json +13 -15
  158. package/dist/literal/environment.js.map +0 -1
  159. package/dist/literal/http-method.js.map +0 -1
  160. package/dist/literal/http-place.js.map +0 -1
  161. package/dist/literal/index-types.d.ts +0 -6
  162. package/dist/literal/index.d.ts +0 -16
  163. package/dist/literal/index.js.map +0 -1
  164. package/dist/literal/key-value.js.map +0 -1
  165. package/dist/literal/language-code.js.map +0 -1
  166. package/dist/literal/locale-code.js.map +0 -1
  167. package/dist/literal/primitive.js.map +0 -1
  168. package/dist/literal/real-value.js.map +0 -1
  169. package/dist/literal/severity.js.map +0 -1
  170. package/dist/literal/storage-type.d.ts +0 -8
  171. package/dist/literal/storage-type.js +0 -8
  172. package/dist/literal/storage-type.js.map +0 -1
  173. package/dist/literal/sys-class.js.map +0 -1
  174. package/dist/literal/sys-function.js.map +0 -1
  175. package/dist/literal/weak-false.js.map +0 -1
  176. package/dist/literal/weak-true.js.map +0 -1
  177. package/dist/shared/assert.d.ts +0 -6
  178. package/dist/shared/assert.js +0 -15
  179. package/dist/shared/assert.js.map +0 -1
  180. package/dist/shared/index-aliases.d.ts +0 -167
  181. package/dist/shared/index-aliases.js +0 -5
  182. package/dist/shared/index-aliases.js.map +0 -1
  183. package/dist/shared/index-constants.d.ts +0 -19
  184. package/dist/shared/index-constants.js +0 -23
  185. package/dist/shared/index-constants.js.map +0 -1
  186. package/dist/shared/list.js.map +0 -1
  187. package/dist/storage/common-storage.d.ts +0 -47
  188. package/dist/storage/common-storage.js +0 -151
  189. package/dist/storage/common-storage.js.map +0 -1
  190. package/dist/storage/index-types.d.ts +0 -87
  191. package/dist/storage/index.d.ts +0 -2
  192. package/dist/storage/index.js.map +0 -1
  193. /package/dist/{literal → descriptor}/index-types.js +0 -0
  194. /package/dist/{storage → developer}/index-types.js +0 -0
  195. /package/dist/{literal → log}/severity.d.ts +0 -0
  196. /package/dist/{literal → log}/severity.js +0 -0
  197. /package/dist/{literal → system}/country-code.d.ts +0 -0
  198. /package/dist/{literal → system}/country-code.js +0 -0
  199. /package/dist/{literal → system}/environment.d.ts +0 -0
  200. /package/dist/{literal → system}/environment.js +0 -0
  201. /package/dist/{literal → system}/http-method.d.ts +0 -0
  202. /package/dist/{literal → system}/http-method.js +0 -0
  203. /package/dist/{literal → system}/http-place.d.ts +0 -0
  204. /package/dist/{literal → system}/http-place.js +0 -0
  205. /package/dist/{literal → system}/language-code.d.ts +0 -0
  206. /package/dist/{literal → system}/language-code.js +0 -0
  207. /package/dist/{literal → system}/locale-code.d.ts +0 -0
  208. /package/dist/{literal → system}/locale-code.js +0 -0
  209. /package/dist/{literal → system}/sys-class.d.ts +0 -0
  210. /package/dist/{literal → system}/sys-class.js +0 -0
  211. /package/dist/{literal → system}/sys-function.d.ts +0 -0
  212. /package/dist/{literal → system}/sys-function.js +0 -0
  213. /package/dist/{literal → to}/key-value.d.ts +0 -0
  214. /package/dist/{literal → to}/key-value.js +0 -0
  215. /package/dist/{literal → to}/primitive.d.ts +0 -0
  216. /package/dist/{literal → to}/primitive.js +0 -0
  217. /package/dist/{literal → to}/real-value.d.ts +0 -0
  218. /package/dist/{literal → to}/real-value.js +0 -0
  219. /package/dist/{literal → to}/weak-false.d.ts +0 -0
  220. /package/dist/{literal → to}/weak-false.js +0 -0
  221. /package/dist/{literal → to}/weak-true.d.ts +0 -0
  222. /package/dist/{literal → to}/weak-true.js +0 -0
@@ -4,7 +4,12 @@ exports.Exception = void 0;
4
4
  class Exception extends Error {
5
5
  constructor(message, params) {
6
6
  if (global === null || global === void 0 ? void 0 : global.leyyo_is_testing) {
7
- message += ` => ${JSON.stringify(Exception._assertion.secureJson(params))}`;
7
+ if (!Exception._dev) {
8
+ Exception._dev = Exception._leyyo.dev;
9
+ }
10
+ if (Exception._dev) {
11
+ message += ` => ${JSON.stringify(Exception._dev.secureJson(params))}`;
12
+ }
8
13
  }
9
14
  super(message);
10
15
  this.name = Exception._fqn.name(this);
@@ -55,8 +60,9 @@ class Exception extends Error {
55
60
  if (this._req) {
56
61
  params['req'] = this._req;
57
62
  }
63
+ params.where = this._holder;
58
64
  // todo collect properties
59
- const line = { severity: 'error', message: this, params, holder: this._holder };
65
+ const line = { severity: 'error', message: this, params };
60
66
  this.$addSign('printed');
61
67
  Exception._log.apply(line);
62
68
  return this;
@@ -98,6 +104,9 @@ class Exception extends Error {
98
104
  return Exception._error.removeSign(this, ...keys);
99
105
  }
100
106
  static $setLeyyo(leyyo) {
107
+ if (!this._leyyo) {
108
+ this._leyyo = leyyo;
109
+ }
101
110
  if (!this._fqn) {
102
111
  this._fqn = leyyo.fqn;
103
112
  }
@@ -107,8 +116,8 @@ class Exception extends Error {
107
116
  if (!this._log) {
108
117
  this._log = leyyo.log;
109
118
  }
110
- if (!this._assertion) {
111
- this._assertion = leyyo.assertion;
119
+ if (!this._dev) {
120
+ this._dev = leyyo.dev;
112
121
  }
113
122
  }
114
123
  static get $error() {
@@ -1 +1 @@
1
- {"version":3,"file":"exception.js","sourceRoot":"","sources":["../../src/exception/exception.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exception.js","sourceRoot":"","sources":["../../src/exception/exception.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ export interface ExceptionStackLine {
6
6
  column?: number;
7
7
  }
8
8
  export interface ExceptionParamsAppend extends Dict {
9
- indicator?: string;
9
+ issue?: string;
10
10
  }
11
11
  export interface ExceptionLike extends Error, ShiftSecure<ExceptionSecure> {
12
12
  get params(): Dict;
@@ -4,3 +4,4 @@ export * from './caused-exception';
4
4
  export * from './developer-exception';
5
5
  export * from './assertion-exception';
6
6
  export * from './multiple-exception';
7
+ export * from './invalid-value-exception';
@@ -20,4 +20,5 @@ __exportStar(require("./caused-exception"), exports);
20
20
  __exportStar(require("./developer-exception"), exports);
21
21
  __exportStar(require("./assertion-exception"), exports);
22
22
  __exportStar(require("./multiple-exception"), exports);
23
+ __exportStar(require("./invalid-value-exception"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exception/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,8CAA4B;AAC5B,qDAAmC;AACnC,wDAAsC;AACtC,wDAAsC;AACtC,uDAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exception/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,8CAA4B;AAC5B,qDAAmC;AACnC,wDAAsC;AACtC,wDAAsC;AACtC,uDAAqC;AACrC,4DAA0C"}
@@ -0,0 +1,5 @@
1
+ import { Exception } from "./exception";
2
+ import { DevOpt } from "../developer";
3
+ export declare class InvalidValueException extends Exception {
4
+ constructor(message: string, params?: DevOpt);
5
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InvalidValueException = void 0;
4
+ const exception_1 = require("./exception");
5
+ // noinspection Annotator
6
+ class InvalidValueException extends exception_1.Exception {
7
+ constructor(message, params) {
8
+ super(message, params);
9
+ }
10
+ }
11
+ exports.InvalidValueException = InvalidValueException;
12
+ //# sourceMappingURL=invalid-value-exception.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invalid-value-exception.js","sourceRoot":"","sources":["../../src/exception/invalid-value-exception.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AAGtC,yBAAyB;AACzB,MAAa,qBAAsB,SAAQ,qBAAS;IAChD,YAAY,OAAe,EAAE,MAAe;QACxC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3B,CAAC;CACJ;AAJD,sDAIC"}
@@ -1,9 +1,11 @@
1
- import { CommonFqnLike, CommonFqnSecure } from "./index-types";
1
+ import { CommonFqnHook, CommonFqnLike, CommonFqnSecure, FqnStereoType } from "./index-types";
2
2
  import { LeyyoLike } from "../leyyo";
3
- import { CommonFqnHook, FqnStereoType } from "../shared";
3
+ import { Func, Obj } from "../shared";
4
4
  export declare class CommonFqn implements CommonFqnLike, CommonFqnSecure {
5
5
  private hook;
6
6
  private proper;
7
+ private dev;
8
+ private descriptor;
7
9
  constructor();
8
10
  get $back(): CommonFqnLike;
9
11
  $init(leyyo: LeyyoLike): void;
@@ -12,5 +14,7 @@ export declare class CommonFqn implements CommonFqnLike, CommonFqnSecure {
12
14
  exists(target: any): boolean;
13
15
  register(name: string, value: any, type: FqnStereoType, pckName: string): void;
14
16
  get isProper(): boolean;
17
+ $appendHook(target: Function | Object, callback: CommonFqnHook): void;
18
+ $runHooks(fn: Func | Obj, name: string): void;
15
19
  addHook(target: Function | Object, callback: CommonFqnHook): boolean;
16
20
  }
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CommonFqn = void 0;
4
- const shared_1 = require("../shared");
4
+ const leyyo_1 = require("../leyyo");
5
+ const internal_1 = require("../internal");
5
6
  // noinspection JSUnusedLocalSymbols,JSUnusedGlobalSymbols
6
7
  class CommonFqn {
7
8
  constructor() {
@@ -14,22 +15,28 @@ class CommonFqn {
14
15
  }
15
16
  $init(leyyo) {
16
17
  this.hook = leyyo.hook;
17
- const rec = {
18
- proper: false,
19
- exists: this.exists,
20
- name: this.name,
21
- register: this.register,
22
- };
23
- // define itself temporarily for fqn operations
24
- leyyo.hook.defineProvider(shared_1.LY_ATTACHED_FQN, CommonFqn, rec);
25
- // when new fqn provider is defined, replace all common methods
26
- leyyo.hook.whenProviderDefined(shared_1.LY_ATTACHED_FQN, CommonFqn, (ins) => {
27
- if (ins.proper) {
28
- this.proper = true;
29
- }
30
- this.exists = ins.exists;
31
- this.name = ins.name;
32
- this.register = ins.register;
18
+ this.dev = leyyo.dev;
19
+ this.descriptor = leyyo.descriptor;
20
+ leyyo.$secure.$lazyRun(() => {
21
+ const rec = {
22
+ proper: false,
23
+ exists: this.exists,
24
+ name: this.name,
25
+ register: this.register,
26
+ };
27
+ // define itself temporarily for fqn operations
28
+ leyyo.hook.defineProvider(leyyo_1.LeyyoCommonHook.fqnAttached, CommonFqn, rec);
29
+ // when new fqn provider is defined, replace all common methods
30
+ leyyo.hook.whenProviderDefined(leyyo_1.LeyyoCommonHook.fqnAttached, CommonFqn, (ins) => {
31
+ if (ins.proper) {
32
+ this.proper = true;
33
+ }
34
+ this.exists = ins.exists;
35
+ this.name = ins.name;
36
+ this.register = ins.register;
37
+ });
38
+ }).$lazyRun(() => {
39
+ leyyo.fqn.register(null, CommonFqn, 'class', internal_1.FQN_PCK);
33
40
  });
34
41
  }
35
42
  get $secure() {
@@ -51,13 +58,42 @@ class CommonFqn {
51
58
  return false;
52
59
  }
53
60
  register(name, value, type, pckName) {
54
- this.hook.queueForCallback(shared_1.LY_PENDING_FQN_REGISTER, name, value, type, pckName);
61
+ this.hook.queueForCallback(leyyo_1.LeyyoCommonHook.fqnPendingRegister, name, value, type, pckName);
55
62
  }
56
63
  get isProper() {
57
64
  return this.proper;
58
65
  }
66
+ $appendHook(target, callback) {
67
+ let callbacks = this.descriptor.getValue(target, internal_1.$$FqnPending);
68
+ if (!Array.isArray(callbacks)) {
69
+ callbacks = [];
70
+ }
71
+ callbacks.push(callback);
72
+ this.descriptor.save(target, internal_1.$$FqnPending, callbacks);
73
+ }
74
+ $runHooks(fn, name) {
75
+ const callbacks = [];
76
+ let exists = false;
77
+ const desc = this.descriptor.get(fn, internal_1.$$FqnPending);
78
+ if (desc) {
79
+ exists = true;
80
+ if (Array.isArray(desc.value)) {
81
+ callbacks.push(...desc.value);
82
+ }
83
+ }
84
+ if (exists) {
85
+ callbacks.forEach(lambda => {
86
+ try {
87
+ lambda(name);
88
+ }
89
+ catch (e) {
90
+ this.dev.log(e, { issue: 'lambda.run', where: 'leyyo.common.CommonFqn', method: '$runHooks', name, clazz: this.name(fn) });
91
+ }
92
+ });
93
+ this.descriptor.remove(fn, internal_1.$$FqnPending);
94
+ }
95
+ }
59
96
  addHook(target, callback) {
60
- var _a;
61
97
  if (typeof target === 'object') {
62
98
  try {
63
99
  target = target.constructor;
@@ -72,29 +108,7 @@ class CommonFqn {
72
108
  callback(this.name(target));
73
109
  return true;
74
110
  }
75
- let callbacks;
76
- try {
77
- callbacks = (_a = Object.getOwnPropertyDescriptor(target, shared_1.FqnSignHook)) !== null && _a !== void 0 ? _a : [];
78
- }
79
- catch (e) {
80
- console.log(`CommonFqnImpl.hook.get`, e.message);
81
- }
82
- if (!Array.isArray(callbacks)) {
83
- callbacks = [];
84
- }
85
- callbacks.push(callback);
86
- try {
87
- Object.defineProperty(target, shared_1.FqnSignHook, {
88
- value: callbacks,
89
- configurable: false,
90
- writable: false,
91
- enumerable: false
92
- });
93
- }
94
- catch (e) {
95
- console.log(`CommonFqnImpl.hook.set`, e.message);
96
- return false;
97
- }
111
+ this.$appendHook(target, callback);
98
112
  return true;
99
113
  }
100
114
  }
@@ -1 +1 @@
1
- {"version":3,"file":"common-fqn.js","sourceRoot":"","sources":["../../src/fqn/common-fqn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-fqn.js","sourceRoot":"","sources":["../../src/fqn/common-fqn.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { CommonFqnHook, FqnStereoType, InitLike, ShiftMain, ShiftSecure } from "../shared";
1
+ import { Func, InitLike, Obj, ShiftMain, ShiftSecure } from "../shared";
2
+ import { HookDefinedProvider } from "../hook";
2
3
  export interface CommonFqnLike extends ShiftSecure<CommonFqnSecure> {
3
4
  name(target: any): string;
4
5
  exists(target: any): boolean;
@@ -6,4 +7,14 @@ export interface CommonFqnLike extends ShiftSecure<CommonFqnSecure> {
6
7
  addHook(target: Function | Object, callback: CommonFqnHook): boolean;
7
8
  get isProper(): boolean;
8
9
  }
9
- export type CommonFqnSecure = ShiftMain<CommonFqnLike> & InitLike;
10
+ export interface CommonFqnSecure extends ShiftMain<CommonFqnLike>, InitLike {
11
+ $runHooks(fn: Func | Obj, name: string): void;
12
+ $appendHook(target: Function | Object, callback: CommonFqnHook): void;
13
+ }
14
+ export interface FqnDefinedProvider extends HookDefinedProvider {
15
+ exists(target: any): boolean;
16
+ name(target: any): string;
17
+ register(name: string, target: any, type: FqnStereoType, pckName: string): void;
18
+ }
19
+ export type FqnStereoType = 'class' | 'function' | 'enum' | 'literal';
20
+ export type CommonFqnHook = (name: string) => void;
@@ -1,2 +1 @@
1
1
  export * from './index-types';
2
- export * from './common-fqn';
package/dist/fqn/index.js CHANGED
@@ -15,5 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./index-types"), exports);
18
- __exportStar(require("./common-fqn"), exports);
19
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fqn/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,+CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fqn/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B"}
@@ -1,11 +1,13 @@
1
- import { Arr, HookDefinedProvider, HookDefinedProviderLambda } from "../shared";
1
+ import { Arr, ClassLike, Func } from "../shared";
2
2
  import { LeyyoLike } from "../leyyo";
3
- import { CommonHookLike, CommonHookSecure } from "./index-types";
3
+ import { CommonHookLike, CommonHookSecure, HookDefinedProvider, HookDefinedProviderLambda } from "./index-types";
4
4
  export declare class CommonHook implements CommonHookLike, CommonHookSecure {
5
5
  private _waitingForCallbacks;
6
6
  private _attachedCallbacks;
7
7
  private _waitingForProviders;
8
8
  private _definedProviders;
9
+ private assertion;
10
+ private dev;
9
11
  /**
10
12
  * Default constructor
11
13
  *
@@ -22,9 +24,9 @@ export declare class CommonHook implements CommonHookLike, CommonHookSecure {
22
24
  * */
23
25
  private _clearPending;
24
26
  get $secure(): CommonHookSecure;
25
- attachCallback(channel: string, fn: Function): void;
26
- queueForCallback(channel: string, ...args: Arr): boolean;
27
+ attachCallback(channel: symbol, fn: Func): void;
28
+ queueForCallback(channel: symbol, ...args: Arr): boolean;
27
29
  get $back(): CommonHookLike;
28
- whenProviderDefined<T extends HookDefinedProvider = HookDefinedProvider>(channel: string, consumer: Function, callback: HookDefinedProviderLambda<T>): void;
29
- defineProvider<T extends HookDefinedProvider = HookDefinedProvider>(channel: string, producer: Function, instance: T): void;
30
+ whenProviderDefined<T extends HookDefinedProvider = HookDefinedProvider>(channel: symbol, consumer: ClassLike, callback: HookDefinedProviderLambda<T>): void;
31
+ defineProvider<T extends HookDefinedProvider = HookDefinedProvider>(channel: symbol, producer: ClassLike, instance: T): void;
30
32
  }
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CommonHook = void 0;
4
+ const leyyo_1 = require("../leyyo");
4
5
  const internal_1 = require("../internal");
5
- const exception_1 = require("../exception");
6
6
  // noinspection JSUnusedGlobalSymbols
7
7
  class CommonHook {
8
8
  /**
@@ -17,10 +17,16 @@ class CommonHook {
17
17
  setTimeout(() => this._clearPending(), 60000);
18
18
  }
19
19
  $init(leyyo) {
20
- this._waitingForCallbacks = leyyo.storage.newMap(`${internal_1.FQN_PCK}/waitingForCallbacks`);
21
- this._attachedCallbacks = leyyo.storage.newMap(`${internal_1.FQN_PCK}/attachedCallbacks`);
22
- this._waitingForProviders = leyyo.storage.newMap(`${internal_1.FQN_PCK}/waitingForProviders`);
23
- this._definedProviders = leyyo.storage.newMap(`${internal_1.FQN_PCK}/definedProviders`);
20
+ this._waitingForCallbacks = leyyo.repo.newMap($$waitingForCallbacks);
21
+ this._attachedCallbacks = leyyo.repo.newMap($$attachedCallbacks);
22
+ this._waitingForProviders = leyyo.repo.newMap($$waitingForProviders);
23
+ this._definedProviders = leyyo.repo.newMap($$definedProviders);
24
+ this.assertion = leyyo.assertion;
25
+ this.dev = leyyo.dev;
26
+ leyyo.$secure.$lazyRun(() => {
27
+ leyyo.fqn.register(null, CommonHook, 'class', internal_1.FQN_PCK);
28
+ leyyo.fqn.register(null, leyyo_1.LeyyoCommonHook, 'class', internal_1.FQN_PCK);
29
+ });
24
30
  }
25
31
  /**
26
32
  * Clear jobs in the queue which channel as pending
@@ -34,16 +40,15 @@ class CommonHook {
34
40
  continue;
35
41
  }
36
42
  this._waitingForCallbacks.delete(channel);
37
- console.log(`hook.cleared.pending => {channel: ${channel}}`);
43
+ console.log(`hook.cleared.pending => {channel: ${channel.description}}`);
38
44
  }
39
45
  }
40
46
  get $secure() {
41
47
  return this;
42
48
  }
43
49
  attachCallback(channel, fn) {
44
- if (!channel || typeof channel !== 'string') {
45
- throw new Error(`hook.invalid.channel => {type: ${typeof channel}}`);
46
- }
50
+ this.assertion.sym(channel, () => this.dev.opt({ field: 'channel', where: 'leyyo.common.CommonHook', method: 'attachCallback' }));
51
+ this.assertion.func(fn, () => this.dev.opt({ field: 'fn', where: 'leyyo.common.CommonHook', method: 'attachCallback' }));
47
52
  // callback attached
48
53
  this._attachedCallbacks.set(channel, { fn });
49
54
  // check waiting records, to be called
@@ -55,9 +60,7 @@ class CommonHook {
55
60
  }
56
61
  }
57
62
  queueForCallback(channel, ...args) {
58
- if (!channel || typeof channel !== 'string') {
59
- throw new Error(`hook.invalid.channel => {type: ${typeof channel}}`);
60
- }
63
+ this.assertion.sym(channel, () => this.dev.opt({ field: 'channel', where: 'leyyo.common.CommonHook', method: 'queueForCallback' }));
61
64
  // callback already exists
62
65
  if (this._attachedCallbacks.has(channel)) {
63
66
  const rec = this._attachedCallbacks.get(channel);
@@ -77,9 +80,8 @@ class CommonHook {
77
80
  return undefined;
78
81
  }
79
82
  whenProviderDefined(channel, consumer, callback) {
80
- if (!channel || typeof channel !== 'string') {
81
- throw new exception_1.DeveloperException(`hook.invalid.channel`, { type: typeof channel });
82
- }
83
+ this.assertion.sym(channel, () => this.dev.opt({ field: 'channel', where: 'leyyo.common.CommonHook', method: 'whenProviderDefined' }));
84
+ this.assertion.func(consumer, () => this.dev.opt({ field: 'consumer', where: 'leyyo.common.CommonHook', method: 'whenProviderDefined' }));
83
85
  if (!this._waitingForProviders.has(channel)) {
84
86
  this._waitingForProviders.set(channel, []);
85
87
  }
@@ -92,9 +94,8 @@ class CommonHook {
92
94
  this._waitingForProviders.get(channel).push({ consumer, callback });
93
95
  }
94
96
  defineProvider(channel, producer, instance) {
95
- if (!channel || typeof channel !== 'string') {
96
- throw new exception_1.DeveloperException(`hook.invalid.channel`, { type: typeof channel });
97
- }
97
+ this.assertion.sym(channel, () => this.dev.opt({ field: 'channel', where: 'leyyo.common.CommonHook', method: 'defineProvider' }));
98
+ this.assertion.func(producer, () => this.dev.opt({ field: 'producer', where: 'leyyo.common.CommonHook', method: 'defineProvider' }));
98
99
  const ins = Object.assign(Object.assign({}, instance), { producer });
99
100
  this._definedProviders.set(channel, ins);
100
101
  if (instance.proper) {
@@ -109,4 +110,8 @@ class CommonHook {
109
110
  }
110
111
  }
111
112
  exports.CommonHook = CommonHook;
113
+ const $$waitingForCallbacks = Symbol.for(`[${internal_1.FQN_PCK}#hook.waitingForCallbacks]`);
114
+ const $$attachedCallbacks = Symbol.for(`[${internal_1.FQN_PCK}#hook.attachedCallbacks]`);
115
+ const $$waitingForProviders = Symbol.for(`[${internal_1.FQN_PCK}#hook.waitingForProviders]`);
116
+ const $$definedProviders = Symbol.for(`[${internal_1.FQN_PCK}#hook.definedProviders]`);
112
117
  //# sourceMappingURL=common-hook.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common-hook.js","sourceRoot":"","sources":["../../src/hook/common-hook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common-hook.js","sourceRoot":"","sources":["../../src/hook/common-hook.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Arr, HookDefinedProvider, HookDefinedProviderLambda, InitLike, ShiftMain, ShiftSecure } from "../shared";
1
+ import { Arr, ClassLike, Func, InitLike, ShiftMain, ShiftSecure } from "../shared";
2
2
  /**
3
3
  * Hook interface, it collects all jobs and fire them when callback is defined
4
4
  * */
@@ -6,30 +6,30 @@ export interface CommonHookLike extends ShiftSecure<CommonHookSecure> {
6
6
  /**
7
7
  * Attach a callback
8
8
  *
9
- * @param {string} channel
10
- * @param {Function} fn
9
+ * @param {symbol} channel
10
+ * @param {Func} fn
11
11
  *
12
12
  * Notes:
13
13
  * - channel should be regular string
14
14
  * - After attached, it should call all waiting calls in the queue
15
15
  * */
16
- attachCallback(channel: string, fn: Function): void;
16
+ attachCallback(channel: symbol, fn: Func): void;
17
17
  /**
18
18
  * Add a call into queue, which to be executed by appropriate callback
19
19
  *
20
- * @param {string} channel
20
+ * @param {symbol} channel
21
21
  * @param {Array<any>} args
22
22
  * @returns {boolean} - channel exists?
23
23
  *
24
24
  * Notes:
25
25
  * - channel should be regular string
26
26
  * */
27
- queueForCallback(channel: string, ...args: Arr): boolean;
27
+ queueForCallback(channel: symbol, ...args: Arr): boolean;
28
28
  /**
29
29
  * Informs when callback is changed
30
30
  *
31
- * @param {string} channel
32
- * @param {Function} consumer
31
+ * @param {symbol} channel
32
+ * @param {ClassLike} consumer
33
33
  * @param {HookDefinedProviderLambda} callback
34
34
  *
35
35
  * Notes:
@@ -37,20 +37,35 @@ export interface CommonHookLike extends ShiftSecure<CommonHookSecure> {
37
37
  * - callback should be regular function
38
38
  * - channel should not be already defined
39
39
  * */
40
- whenProviderDefined<T extends HookDefinedProvider = HookDefinedProvider>(channel: string, consumer: Function, callback: HookDefinedProviderLambda<T>): void;
40
+ whenProviderDefined<T extends HookDefinedProvider = HookDefinedProvider>(channel: symbol, consumer: ClassLike, callback: HookDefinedProviderLambda<T>): void;
41
41
  /**
42
42
  * Defines a provider to replace temporary providers
43
43
  *
44
- * @param {string} channel
45
- * @param {Function} producer
44
+ * @param {symbol} channel
45
+ * @param {ClassLike} producer
46
46
  * @param {Object} instance
47
47
  *
48
48
  * Notes:
49
49
  * - channel should be regular string
50
50
  * */
51
- defineProvider<T extends HookDefinedProvider = HookDefinedProvider>(channel: string, producer: Function, instance: T): void;
51
+ defineProvider<T extends HookDefinedProvider = HookDefinedProvider>(channel: symbol, producer: ClassLike, instance: T): void;
52
52
  }
53
53
  /**
54
54
  * Secure hook interface
55
55
  * */
56
56
  export type CommonHookSecure = ShiftMain<CommonHookLike> & InitLike;
57
+ export interface HookAttachedCallback {
58
+ initialization?: true;
59
+ fn: Func;
60
+ }
61
+ export interface $HookDefinedProvider extends HookDefinedProvider {
62
+ producer: ClassLike;
63
+ }
64
+ export interface HookDefinedProvider {
65
+ proper: boolean;
66
+ }
67
+ export interface HookWaitingProviderItem {
68
+ consumer: ClassLike;
69
+ callback: HookDefinedProviderLambda;
70
+ }
71
+ export type HookDefinedProviderLambda<T extends HookDefinedProvider = HookDefinedProvider> = (instance: T) => void;
@@ -1,2 +1 @@
1
1
  export * from './index-types';
2
- export * from './common-hook';
@@ -15,5 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./index-types"), exports);
18
- __exportStar(require("./common-hook"), exports);
19
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hook/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,gDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hook/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B"}
package/dist/index.d.ts CHANGED
@@ -1,14 +1,29 @@
1
+ import { LeyyoLike } from "./leyyo";
2
+ export declare const leyyo: LeyyoLike;
3
+ export * from './assertion';
4
+ export * from './developer';
5
+ export * from './error';
1
6
  export * from './exception';
2
- export * from './literal';
7
+ export * from './fqn';
8
+ export * from './hook';
9
+ export * from './is';
10
+ export * from './leyyo';
11
+ export * from './log';
3
12
  export * from './shared';
4
- import { leyyo } from "./leyyo";
5
- declare const is: import("./is").CommonIsLike;
6
- declare const hook: import("./hook").CommonHookLike;
7
- declare const assertion: import("./assertion").CommonAssertionLike;
8
- declare const storage: import("./storage").CommonStorageLike;
9
- declare const to: import("./to").CommonToLike;
10
- declare const system: import("./system").CommonSystemLike;
11
- declare const commonFqn: import("./fqn").CommonFqnLike;
12
- declare const commonLog: import("./log").CommonLogLike;
13
- declare const commonError: import("./error").CommonErrorLike;
14
- export { leyyo, is, hook, assertion, storage, to, system, commonFqn, commonLog, commonError };
13
+ export * from './repo';
14
+ export * from './system';
15
+ export * from './to';
16
+ export * from './wrapper';
17
+ export * from './descriptor';
18
+ export declare const $is: import("./is").CommonIsLike;
19
+ export declare const $hook: import("./hook").CommonHookLike;
20
+ export declare const $assert: import("./assertion").CommonAssertionLike;
21
+ export declare const $repo: import("./repo").CommonRepoLike;
22
+ export declare const $to: import("./to").CommonToLike;
23
+ export declare const $sys: import("./system").CommonSystemLike;
24
+ export declare const $dev: import("./developer").CommonDeveloperLike;
25
+ export declare const $fqn: import("./fqn").CommonFqnLike;
26
+ export declare const $log: import("./log").CommonLogLike;
27
+ export declare const $err: import("./error").CommonErrorLike;
28
+ export declare const $descriptor: import("./descriptor").CommonDescriptorLike;
29
+ export declare const $wrapper: import("./wrapper").CommonWrapperLike;