@leyyo/common 1.0.13 → 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.
Files changed (334) hide show
  1. package/dist/deploy/deploy.common.d.ts +12 -7
  2. package/dist/deploy/deploy.common.js +29 -10
  3. package/dist/deploy/deploy.common.js.map +1 -1
  4. package/dist/deploy/index.types.d.ts +12 -8
  5. package/dist/error/error.common.d.ts +12 -20
  6. package/dist/error/error.common.js +151 -85
  7. package/dist/error/error.common.js.map +1 -1
  8. package/dist/error/http-error.map.d.ts +6 -0
  9. package/dist/error/http-error.map.js +25 -0
  10. package/dist/error/http-error.map.js.map +1 -0
  11. package/dist/error/index.d.ts +2 -0
  12. package/dist/error/index.js +2 -0
  13. package/dist/error/index.js.map +1 -1
  14. package/dist/error/index.types.d.ts +35 -36
  15. package/dist/error/items/bad-request.error.d.ts +10 -0
  16. package/dist/error/items/bad-request.error.js +16 -0
  17. package/dist/error/items/bad-request.error.js.map +1 -0
  18. package/dist/error/items/caused.error.d.ts +8 -0
  19. package/dist/error/items/caused.error.js +16 -0
  20. package/dist/error/items/caused.error.js.map +1 -0
  21. package/dist/error/items/conflict.error.d.ts +10 -0
  22. package/dist/error/items/conflict.error.js +16 -0
  23. package/dist/error/items/conflict.error.js.map +1 -0
  24. package/dist/error/items/content-too-large.error.d.ts +10 -0
  25. package/dist/error/items/content-too-large.error.js +16 -0
  26. package/dist/error/items/content-too-large.error.js.map +1 -0
  27. package/dist/error/items/developer.error.d.ts +4 -0
  28. package/dist/error/items/developer.error.js +9 -0
  29. package/dist/error/items/developer.error.js.map +1 -0
  30. package/dist/error/items/forbidden.error.d.ts +10 -0
  31. package/dist/error/items/forbidden.error.js +16 -0
  32. package/dist/error/items/forbidden.error.js.map +1 -0
  33. package/dist/error/items/gone.error.d.ts +10 -0
  34. package/dist/error/items/gone.error.js +16 -0
  35. package/dist/error/items/gone.error.js.map +1 -0
  36. package/dist/error/items/http.error.d.ts +15 -0
  37. package/dist/error/items/http.error.js +21 -0
  38. package/dist/error/items/http.error.js.map +1 -0
  39. package/dist/error/items/index.d.ts +21 -0
  40. package/dist/error/items/index.js +38 -0
  41. package/dist/error/items/index.js.map +1 -0
  42. package/dist/error/items/invalid-value.error.d.ts +6 -0
  43. package/dist/error/items/invalid-value.error.js +11 -0
  44. package/dist/error/items/invalid-value.error.js.map +1 -0
  45. package/dist/error/items/length-required.error.d.ts +10 -0
  46. package/dist/error/items/length-required.error.js +16 -0
  47. package/dist/error/items/length-required.error.js.map +1 -0
  48. package/dist/error/items/leyyo.error.d.ts +50 -0
  49. package/dist/error/items/leyyo.error.js +98 -0
  50. package/dist/error/items/leyyo.error.js.map +1 -0
  51. package/dist/error/items/method-not-allowed.error.d.ts +10 -0
  52. package/dist/error/items/method-not-allowed.error.js +16 -0
  53. package/dist/error/items/method-not-allowed.error.js.map +1 -0
  54. package/dist/error/items/multiple.error.d.ts +11 -0
  55. package/dist/error/items/multiple.error.js +34 -0
  56. package/dist/error/items/multiple.error.js.map +1 -0
  57. package/dist/error/items/not-acceptable.error.d.ts +10 -0
  58. package/dist/error/items/not-acceptable.error.js +16 -0
  59. package/dist/error/items/not-acceptable.error.js.map +1 -0
  60. package/dist/error/items/not-found.error.d.ts +10 -0
  61. package/dist/error/items/not-found.error.js +16 -0
  62. package/dist/error/items/not-found.error.js.map +1 -0
  63. package/dist/error/items/payment-required.error.d.ts +10 -0
  64. package/dist/error/items/payment-required.error.js +16 -0
  65. package/dist/error/items/payment-required.error.js.map +1 -0
  66. package/dist/error/items/precondition-failed.error.d.ts +10 -0
  67. package/dist/error/items/precondition-failed.error.js +16 -0
  68. package/dist/error/items/precondition-failed.error.js.map +1 -0
  69. package/dist/error/items/proxy-authentication-required.error.d.ts +10 -0
  70. package/dist/error/items/proxy-authentication-required.error.js +16 -0
  71. package/dist/error/items/proxy-authentication-required.error.js.map +1 -0
  72. package/dist/error/items/request-timeout.error.d.ts +10 -0
  73. package/dist/error/items/request-timeout.error.js +16 -0
  74. package/dist/error/items/request-timeout.error.js.map +1 -0
  75. package/dist/error/items/silent.error.d.ts +11 -0
  76. package/dist/error/items/silent.error.js +19 -0
  77. package/dist/error/items/silent.error.js.map +1 -0
  78. package/dist/error/items/unauthorized.error.d.ts +10 -0
  79. package/dist/error/items/unauthorized.error.js +16 -0
  80. package/dist/error/items/unauthorized.error.js.map +1 -0
  81. package/dist/event/event.common.d.ts +77 -0
  82. package/dist/event/event.common.js +308 -0
  83. package/dist/event/event.common.js.map +1 -0
  84. package/dist/event/event.error.d.ts +3 -0
  85. package/dist/event/event.error.js +8 -0
  86. package/dist/event/event.error.js.map +1 -0
  87. package/dist/event/index.js.map +1 -0
  88. package/dist/event/index.types.d.ts +261 -0
  89. package/dist/{hook → event}/index.types.js.map +1 -1
  90. package/dist/hub/hub.channel.d.ts +27 -0
  91. package/dist/hub/hub.channel.js +83 -0
  92. package/dist/hub/hub.channel.js.map +1 -0
  93. package/dist/hub/hub.common.d.ts +27 -0
  94. package/dist/hub/hub.common.js +92 -0
  95. package/dist/hub/hub.common.js.map +1 -0
  96. package/dist/hub/index.js.map +1 -0
  97. package/dist/hub/index.types.d.ts +105 -0
  98. package/dist/{to → hub}/index.types.js.map +1 -1
  99. package/dist/index.d.ts +5 -23
  100. package/dist/index.js +7 -25
  101. package/dist/index.js.map +1 -1
  102. package/dist/leyyo/index.d.ts +0 -1
  103. package/dist/leyyo/index.js +0 -1
  104. package/dist/leyyo/index.js.map +1 -1
  105. package/dist/leyyo/index.types.d.ts +4 -22
  106. package/dist/leyyo/leyyo.d.ts +4 -22
  107. package/dist/leyyo/leyyo.js +12 -39
  108. package/dist/leyyo/leyyo.js.map +1 -1
  109. package/dist/log/index.types.d.ts +19 -26
  110. package/dist/log/log.common.d.ts +1 -1
  111. package/dist/log/log.common.js +24 -49
  112. package/dist/log/log.common.js.map +1 -1
  113. package/dist/log/logger.error.d.ts +3 -0
  114. package/dist/log/logger.error.js +8 -0
  115. package/dist/log/logger.error.js.map +1 -0
  116. package/dist/log/logger.instance.d.ts +7 -9
  117. package/dist/log/logger.instance.js +40 -50
  118. package/dist/log/logger.instance.js.map +1 -1
  119. package/dist/name/index.types.d.ts +1 -1
  120. package/dist/name/name.common.js +64 -37
  121. package/dist/name/name.common.js.map +1 -1
  122. package/dist/name/name.error.d.ts +3 -0
  123. package/dist/name/name.error.js +8 -0
  124. package/dist/name/name.error.js.map +1 -0
  125. package/dist/opt/index.js.map +1 -0
  126. package/dist/opt/index.types.d.ts +33 -0
  127. package/dist/{fqn → opt}/index.types.js.map +1 -1
  128. package/dist/opt/opt.common.d.ts +15 -0
  129. package/dist/opt/opt.common.js +93 -0
  130. package/dist/opt/opt.common.js.map +1 -0
  131. package/dist/repo/index.types.d.ts +1 -19
  132. package/dist/repo/repo.common.d.ts +0 -6
  133. package/dist/repo/repo.common.js +0 -20
  134. package/dist/repo/repo.common.js.map +1 -1
  135. package/dist/shared/index.d.ts +3 -0
  136. package/dist/shared/index.enum.d.ts +7 -0
  137. package/dist/{exception/index.types.js → shared/index.enum.js} +1 -1
  138. package/dist/shared/index.enum.js.map +1 -0
  139. package/dist/shared/index.fqn.d.ts +3 -0
  140. package/dist/shared/index.fqn.js +3 -0
  141. package/dist/shared/index.fqn.js.map +1 -0
  142. package/dist/shared/index.js +3 -0
  143. package/dist/shared/index.js.map +1 -1
  144. package/dist/shared/index.json.d.ts +33 -0
  145. package/dist/shared/index.json.js +3 -0
  146. package/dist/shared/index.json.js.map +1 -0
  147. package/dist/shared/index.types.d.ts +78 -100
  148. package/dist/shared/index.types.js +31 -0
  149. package/dist/shared/index.types.js.map +1 -1
  150. package/dist/util/delay.d.ts +9 -0
  151. package/dist/util/delay.js +21 -0
  152. package/dist/util/delay.js.map +1 -0
  153. package/dist/util/empty.fn.d.ts +8 -0
  154. package/dist/util/empty.fn.js +11 -0
  155. package/dist/util/empty.fn.js.map +1 -0
  156. package/dist/util/index.d.ts +5 -0
  157. package/dist/{developer → util}/index.js +5 -2
  158. package/dist/util/index.js.map +1 -0
  159. package/dist/util/one-or-more.d.ts +8 -0
  160. package/dist/util/one-or-more.js +19 -0
  161. package/dist/util/one-or-more.js.map +1 -0
  162. package/dist/util/secure-clone.d.ts +3 -0
  163. package/dist/util/secure-clone.js +38 -0
  164. package/dist/util/secure-clone.js.map +1 -0
  165. package/dist/util/secure-json.d.ts +37 -0
  166. package/dist/util/secure-json.js +126 -0
  167. package/dist/util/secure-json.js.map +1 -0
  168. package/package.json +2 -2
  169. package/dist/assertion/assertion.common.d.ts +0 -183
  170. package/dist/assertion/assertion.common.js +0 -663
  171. package/dist/assertion/assertion.common.js.map +0 -1
  172. package/dist/assertion/index.js.map +0 -1
  173. package/dist/assertion/index.types.d.ts +0 -661
  174. package/dist/assertion/index.types.js.map +0 -1
  175. package/dist/descriptor/descriptor.common.d.ts +0 -22
  176. package/dist/descriptor/descriptor.common.js +0 -117
  177. package/dist/descriptor/descriptor.common.js.map +0 -1
  178. package/dist/descriptor/index.js.map +0 -1
  179. package/dist/descriptor/index.types.d.ts +0 -23
  180. package/dist/descriptor/index.types.js.map +0 -1
  181. package/dist/developer/developer.common.d.ts +0 -32
  182. package/dist/developer/developer.common.js +0 -245
  183. package/dist/developer/developer.common.js.map +0 -1
  184. package/dist/developer/index.d.ts +0 -2
  185. package/dist/developer/index.errors.d.ts +0 -13
  186. package/dist/developer/index.errors.js +0 -24
  187. package/dist/developer/index.errors.js.map +0 -1
  188. package/dist/developer/index.js.map +0 -1
  189. package/dist/developer/index.types.d.ts +0 -85
  190. package/dist/developer/index.types.js.map +0 -1
  191. package/dist/exception/assertion.exception.d.ts +0 -5
  192. package/dist/exception/assertion.exception.js +0 -12
  193. package/dist/exception/assertion.exception.js.map +0 -1
  194. package/dist/exception/caused.exception.d.ts +0 -5
  195. package/dist/exception/caused.exception.js +0 -13
  196. package/dist/exception/caused.exception.js.map +0 -1
  197. package/dist/exception/developer.exception.d.ts +0 -5
  198. package/dist/exception/developer.exception.js +0 -12
  199. package/dist/exception/developer.exception.js.map +0 -1
  200. package/dist/exception/exception.d.ts +0 -32
  201. package/dist/exception/exception.js +0 -117
  202. package/dist/exception/exception.js.map +0 -1
  203. package/dist/exception/index.d.ts +0 -7
  204. package/dist/exception/index.js +0 -24
  205. package/dist/exception/index.js.map +0 -1
  206. package/dist/exception/index.types.d.ts +0 -30
  207. package/dist/exception/index.types.js.map +0 -1
  208. package/dist/exception/invalid-value.exception.d.ts +0 -5
  209. package/dist/exception/invalid-value.exception.js +0 -12
  210. package/dist/exception/invalid-value.exception.js.map +0 -1
  211. package/dist/exception/multiple.exception.d.ts +0 -8
  212. package/dist/exception/multiple.exception.js +0 -34
  213. package/dist/exception/multiple.exception.js.map +0 -1
  214. package/dist/fqn/fqn.common.d.ts +0 -20
  215. package/dist/fqn/fqn.common.js +0 -123
  216. package/dist/fqn/fqn.common.js.map +0 -1
  217. package/dist/fqn/index.js.map +0 -1
  218. package/dist/fqn/index.types.d.ts +0 -20
  219. package/dist/fqn/index.types.js +0 -3
  220. package/dist/hook/hook.common.d.ts +0 -25
  221. package/dist/hook/hook.common.js +0 -95
  222. package/dist/hook/hook.common.js.map +0 -1
  223. package/dist/hook/index.d.ts +0 -1
  224. package/dist/hook/index.js +0 -18
  225. package/dist/hook/index.js.map +0 -1
  226. package/dist/hook/index.types.d.ts +0 -72
  227. package/dist/hook/index.types.js +0 -3
  228. package/dist/is/index.d.ts +0 -1
  229. package/dist/is/index.js +0 -18
  230. package/dist/is/index.js.map +0 -1
  231. package/dist/is/index.types.d.ts +0 -240
  232. package/dist/is/index.types.js +0 -3
  233. package/dist/is/index.types.js.map +0 -1
  234. package/dist/is/is.common.d.ts +0 -71
  235. package/dist/is/is.common.js +0 -177
  236. package/dist/is/is.common.js.map +0 -1
  237. package/dist/leyyo/leyyo-hook.common.d.ts +0 -10
  238. package/dist/leyyo/leyyo-hook.common.js +0 -18
  239. package/dist/leyyo/leyyo-hook.common.js.map +0 -1
  240. package/dist/mixin/index.d.ts +0 -1
  241. package/dist/mixin/index.js +0 -18
  242. package/dist/mixin/index.js.map +0 -1
  243. package/dist/mixin/index.types.d.ts +0 -19
  244. package/dist/mixin/index.types.js +0 -3
  245. package/dist/mixin/index.types.js.map +0 -1
  246. package/dist/mixin/mixin.common.d.ts +0 -22
  247. package/dist/mixin/mixin.common.js +0 -165
  248. package/dist/mixin/mixin.common.js.map +0 -1
  249. package/dist/system/country-code.d.ts +0 -10
  250. package/dist/system/country-code.js +0 -19
  251. package/dist/system/country-code.js.map +0 -1
  252. package/dist/system/environment.d.ts +0 -7
  253. package/dist/system/environment.js +0 -6
  254. package/dist/system/environment.js.map +0 -1
  255. package/dist/system/index.d.ts +0 -7
  256. package/dist/system/index.js +0 -24
  257. package/dist/system/index.js.map +0 -1
  258. package/dist/system/index.types.d.ts +0 -6
  259. package/dist/system/index.types.js +0 -3
  260. package/dist/system/index.types.js.map +0 -1
  261. package/dist/system/language-code.d.ts +0 -7
  262. package/dist/system/language-code.js +0 -11
  263. package/dist/system/language-code.js.map +0 -1
  264. package/dist/system/locale-code.d.ts +0 -9
  265. package/dist/system/locale-code.js +0 -16
  266. package/dist/system/locale-code.js.map +0 -1
  267. package/dist/system/sys-class.d.ts +0 -4
  268. package/dist/system/sys-class.js +0 -21
  269. package/dist/system/sys-class.js.map +0 -1
  270. package/dist/system/sys-function.d.ts +0 -4
  271. package/dist/system/sys-function.js +0 -8
  272. package/dist/system/sys-function.js.map +0 -1
  273. package/dist/system/system.common.d.ts +0 -11
  274. package/dist/system/system.common.js +0 -64
  275. package/dist/system/system.common.js.map +0 -1
  276. package/dist/test/index.d.ts +0 -2
  277. package/dist/test/index.js +0 -19
  278. package/dist/test/index.js.map +0 -1
  279. package/dist/test/index.types.d.ts +0 -9
  280. package/dist/test/index.types.js +0 -3
  281. package/dist/test/index.types.js.map +0 -1
  282. package/dist/test/test.common.d.ts +0 -14
  283. package/dist/test/test.common.js +0 -48
  284. package/dist/test/test.common.js.map +0 -1
  285. package/dist/test/tested.d.ts +0 -1
  286. package/dist/test/tested.js +0 -9
  287. package/dist/test/tested.js.map +0 -1
  288. package/dist/to/index.d.ts +0 -7
  289. package/dist/to/index.js +0 -24
  290. package/dist/to/index.js.map +0 -1
  291. package/dist/to/index.types.d.ts +0 -76
  292. package/dist/to/index.types.js +0 -3
  293. package/dist/to/key-value.d.ts +0 -4
  294. package/dist/to/key-value.js +0 -8
  295. package/dist/to/key-value.js.map +0 -1
  296. package/dist/to/list.d.ts +0 -20
  297. package/dist/to/list.js +0 -38
  298. package/dist/to/list.js.map +0 -1
  299. package/dist/to/primitive.d.ts +0 -7
  300. package/dist/to/primitive.js +0 -6
  301. package/dist/to/primitive.js.map +0 -1
  302. package/dist/to/real-value.d.ts +0 -7
  303. package/dist/to/real-value.js +0 -6
  304. package/dist/to/real-value.js.map +0 -1
  305. package/dist/to/to.common.d.ts +0 -77
  306. package/dist/to/to.common.js +0 -1079
  307. package/dist/to/to.common.js.map +0 -1
  308. package/dist/to/weak-false.d.ts +0 -7
  309. package/dist/to/weak-false.js +0 -6
  310. package/dist/to/weak-false.js.map +0 -1
  311. package/dist/to/weak-true.d.ts +0 -7
  312. package/dist/to/weak-true.js +0 -9
  313. package/dist/to/weak-true.js.map +0 -1
  314. package/dist/wrapper/index.d.ts +0 -2
  315. package/dist/wrapper/index.js +0 -19
  316. package/dist/wrapper/index.js.map +0 -1
  317. package/dist/wrapper/index.types.d.ts +0 -29
  318. package/dist/wrapper/index.types.js +0 -3
  319. package/dist/wrapper/index.types.js.map +0 -1
  320. package/dist/wrapper/wrap.d.ts +0 -7
  321. package/dist/wrapper/wrap.js +0 -11
  322. package/dist/wrapper/wrap.js.map +0 -1
  323. package/dist/wrapper/wrapper.common.d.ts +0 -26
  324. package/dist/wrapper/wrapper.common.js +0 -82
  325. package/dist/wrapper/wrapper.common.js.map +0 -1
  326. /package/dist/{assertion → event}/index.d.ts +0 -0
  327. /package/dist/{assertion → event}/index.js +0 -0
  328. /package/dist/{assertion → event}/index.types.js +0 -0
  329. /package/dist/{descriptor → hub}/index.d.ts +0 -0
  330. /package/dist/{descriptor → hub}/index.js +0 -0
  331. /package/dist/{descriptor → hub}/index.types.js +0 -0
  332. /package/dist/{fqn → opt}/index.d.ts +0 -0
  333. /package/dist/{fqn → opt}/index.js +0 -0
  334. /package/dist/{developer → opt}/index.types.js +0 -0
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HubChannel = void 0;
4
+ const internal_1 = require("../internal");
5
+ const error_1 = require("../error");
6
+ const WHERE = `${internal_1.FQN}.HubChannel`;
7
+ // noinspection JSUnusedGlobalSymbols
8
+ class HubChannel {
9
+ // endregion protected-property
10
+ /**
11
+ * Default constructor
12
+ *
13
+ * Responsibilities
14
+ * - Create repositories => ie: callbacks
15
+ * - Trigger clear pending operation
16
+ * */
17
+ constructor(type, repo) {
18
+ this.type = type;
19
+ this._items = repo.newMap(WHERE, 'items');
20
+ }
21
+ // region protected-method
22
+ _validName(value, method, throwable) {
23
+ const type = (typeof value);
24
+ if (!['string', 'symbol'].includes(type)) {
25
+ if (!throwable) {
26
+ return false;
27
+ }
28
+ throw new error_1.InvalidValueError(`Invalid type of channel with ${type}`, { where: WHERE, method, field: 'name', type });
29
+ }
30
+ if (type === 'string') {
31
+ const str = value.trim();
32
+ if (str === '' || str !== value) {
33
+ if (!throwable) {
34
+ return false;
35
+ }
36
+ throw new error_1.InvalidValueError(`Channel should be trimmed and filled`, { where: WHERE, method, field: 'name' });
37
+ }
38
+ }
39
+ return true;
40
+ }
41
+ // endregion protected-method
42
+ // region getter
43
+ /** @inheritDoc */
44
+ get names() {
45
+ return Array.from(this._items.keys());
46
+ }
47
+ // endregion getter
48
+ // region get
49
+ /** @inheritDoc */
50
+ has(name) {
51
+ return this._validName(name) ? this._items.has(name) : false;
52
+ }
53
+ /** @inheritDoc */
54
+ get(name) {
55
+ return this._validName(name) ? this._items.get(name) : undefined;
56
+ }
57
+ // endregion get
58
+ // region as
59
+ /** @inheritDoc */
60
+ as() {
61
+ return this;
62
+ }
63
+ // endregion as
64
+ // region registration
65
+ /** @inheritDoc */
66
+ set(name, value) {
67
+ this._validName(name, 'set', true);
68
+ const old = this._items.has(name);
69
+ this._items.set(name, value);
70
+ return old;
71
+ }
72
+ /** @inheritDoc */
73
+ delete(name) {
74
+ this._validName(name, 'delete', true);
75
+ if (this._items.has(name)) {
76
+ this._items.delete(name);
77
+ return true;
78
+ }
79
+ return true;
80
+ }
81
+ }
82
+ exports.HubChannel = HubChannel;
83
+ //# sourceMappingURL=hub.channel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hub.channel.js","sourceRoot":"","sources":["../../src/hub/hub.channel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { LeyyoLike } from "../leyyo";
2
+ import type { HubChannelLike, HubCommonLike, HubCommonSecure, HubType } from "./index.types";
3
+ export declare class HubCommon<T extends HubType = string> implements HubCommonLike<T>, HubCommonSecure<T> {
4
+ private lyy;
5
+ protected _channels: Map<T, HubChannelLike>;
6
+ /**
7
+ * Default constructor
8
+ * */
9
+ constructor(lyy: LeyyoLike);
10
+ protected _validChannel(value: unknown, method?: keyof HubCommonLike, throwable?: boolean): boolean;
11
+ /** @inheritDoc */
12
+ $init(): void;
13
+ /** @inheritDoc */
14
+ get $secure(): HubCommonSecure<T>;
15
+ /** @inheritDoc */
16
+ get $back(): HubCommonLike<T>;
17
+ /** @inheritDoc */
18
+ get channels(): Array<T>;
19
+ /** @inheritDoc */
20
+ has(channel: T): boolean;
21
+ /** @inheritDoc */
22
+ channel<C extends string = string>(channel: T): HubChannelLike<T, C>;
23
+ /** @inheritDoc */
24
+ as<F extends HubType = string>(): HubCommonLike<T | F>;
25
+ /** @inheritDoc */
26
+ delete(channel: T): boolean;
27
+ }
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HubCommon = void 0;
4
+ const internal_1 = require("../internal");
5
+ const hub_channel_1 = require("./hub.channel");
6
+ const error_1 = require("../error");
7
+ const WHERE = `${internal_1.FQN}.HubCommon`;
8
+ // noinspection JSUnusedGlobalSymbols
9
+ class HubCommon {
10
+ // endregion protected-property
11
+ /**
12
+ * Default constructor
13
+ * */
14
+ constructor(lyy) {
15
+ this.lyy = lyy;
16
+ }
17
+ // region protected-method
18
+ _validChannel(value, method, throwable) {
19
+ const type = (typeof value);
20
+ if (!['string', 'symbol'].includes(type)) {
21
+ if (!throwable) {
22
+ return false;
23
+ }
24
+ throw new error_1.InvalidValueError(`Invalid type of channel with ${type}`, { where: WHERE, method, field: 'channel', type });
25
+ }
26
+ if (type === 'string') {
27
+ const str = value.trim();
28
+ if (str === '' || str !== value) {
29
+ if (!throwable) {
30
+ return false;
31
+ }
32
+ throw new error_1.InvalidValueError(`Channel should be trimmed and filled`, { where: WHERE, method, field: 'channel' });
33
+ }
34
+ }
35
+ return true;
36
+ }
37
+ // endregion protected-method
38
+ // region secure
39
+ /** @inheritDoc */
40
+ $init() {
41
+ this._channels = this.lyy.repo.newMap(WHERE, 'channels');
42
+ this.lyy.$secure.$lazyRun(() => {
43
+ });
44
+ }
45
+ /** @inheritDoc */
46
+ get $secure() {
47
+ return this;
48
+ }
49
+ /** @inheritDoc */
50
+ get $back() {
51
+ return this;
52
+ }
53
+ // endregion secure
54
+ // region getter
55
+ /** @inheritDoc */
56
+ get channels() {
57
+ return Array.from(this._channels.keys());
58
+ }
59
+ // endregion getter
60
+ // region get
61
+ /** @inheritDoc */
62
+ has(channel) {
63
+ return this._validChannel(channel) ? this._channels.has(channel) : false;
64
+ }
65
+ /** @inheritDoc */
66
+ channel(channel) {
67
+ this._validChannel(channel, 'channel', true);
68
+ if (!this._channels.has(channel)) {
69
+ this._channels.set(channel, new hub_channel_1.HubChannel(channel, this.lyy.repo));
70
+ }
71
+ return this._channels.get(channel);
72
+ }
73
+ // endregion get
74
+ // region as
75
+ /** @inheritDoc */
76
+ as() {
77
+ return this;
78
+ }
79
+ // endregion as
80
+ // region registration
81
+ /** @inheritDoc */
82
+ delete(channel) {
83
+ this._validChannel(channel, 'delete', true);
84
+ if (this._channels.has(channel)) {
85
+ this._channels.delete(channel);
86
+ return true;
87
+ }
88
+ return true;
89
+ }
90
+ }
91
+ exports.HubCommon = HubCommon;
92
+ //# sourceMappingURL=hub.common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hub.common.js","sourceRoot":"","sources":["../../src/hub/hub.common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hub/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B"}
@@ -0,0 +1,105 @@
1
+ import type { InitLike, ShiftMain, ShiftSecure } from "../shared";
2
+ export type HubType = string | symbol;
3
+ /**
4
+ * Callback interface, it collects all jobs and fire them when callback is defined
5
+ * */
6
+ export interface HubCommonLike<T extends HubType = string> extends ShiftSecure<HubCommonSecure<T>> {
7
+ /**
8
+ * Cast hub with different type names
9
+ *
10
+ * @return {HubCommonLike} - cast hub
11
+ * */
12
+ as<F extends HubType = string>(): HubCommonLike<T | F>;
13
+ /**
14
+ * List channels
15
+ *
16
+ * @return {Array<HubType>} - channels
17
+ * */
18
+ get channels(): Array<T>;
19
+ /**
20
+ * Remove a channel
21
+ *
22
+ * Notes:
23
+ * - channel should be regular string
24
+ *
25
+ * @param {HubType} channel
26
+ * @return {boolean} - removed or not
27
+ * */
28
+ delete(channel: T): boolean;
29
+ /**
30
+ * Return a channel
31
+ *
32
+ * Notes:
33
+ * - channel should be regular string
34
+ *
35
+ * @param {HubType} channel
36
+ * @return {function} - callback function
37
+ * */
38
+ channel<C extends string = string>(channel: T): HubChannelLike<T, C>;
39
+ }
40
+ /**
41
+ * Secure hub interface
42
+ * */
43
+ export interface HubCommonSecure<T extends HubType = string> extends ShiftMain<HubCommonLike<T>>, InitLike {
44
+ }
45
+ export interface HubChannelLike<T extends HubType = string, C extends string = string> {
46
+ /**
47
+ * Hub type
48
+ *
49
+ * @type {HubType}
50
+ * */
51
+ readonly type: T;
52
+ /**
53
+ * Cast channel with different channel names
54
+ *
55
+ * @return {HubChannelLike} - cast channel
56
+ * */
57
+ as<F extends string = string>(): HubChannelLike<T, C | F>;
58
+ /**
59
+ * List all names
60
+ *
61
+ * @return {Array<string>} - names
62
+ * */
63
+ get names(): Array<C>;
64
+ /**
65
+ * Set a names
66
+ *
67
+ * Notes:
68
+ * - name should be regular string
69
+ *
70
+ * @param {string} name
71
+ * @param {any} value
72
+ * @return {boolean} - is success, otherwise it already exists
73
+ * */
74
+ set<V>(name: C, value: V): boolean;
75
+ /**
76
+ * Delete a channel from register
77
+ *
78
+ * Notes:
79
+ * - name should be regular string
80
+ *
81
+ * @param {string} name
82
+ * @return {boolean} - removed or not
83
+ * */
84
+ delete(name: C): boolean;
85
+ /**
86
+ * Check a channel exists or not
87
+ *
88
+ * Notes:
89
+ * - name should be regular string
90
+ *
91
+ * @param {string} name
92
+ * @return {boolean} - exists or not
93
+ * */
94
+ has(name: C): boolean;
95
+ /**
96
+ * Return a channel
97
+ *
98
+ * Notes:
99
+ * - channel should be regular string
100
+ *
101
+ * @param {string} name
102
+ * @return {any} - value of channel
103
+ * */
104
+ get<V>(name: C): V;
105
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"index.types.js","sourceRoot":"","sources":["../../src/to/index.types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.types.js","sourceRoot":"","sources":["../../src/hub/index.types.ts"],"names":[],"mappings":""}
package/dist/index.d.ts CHANGED
@@ -1,37 +1,19 @@
1
1
  import type { LeyyoLike } from "./leyyo";
2
- export * from './assertion';
3
- export * from './developer';
4
2
  export * from './error';
5
- export * from './exception';
6
- export * from './fqn';
7
- export * from './hook';
8
- export * from './is';
9
3
  export * from './leyyo';
10
4
  export * from './log';
11
5
  export * from './shared';
6
+ export * from './opt';
12
7
  export * from './repo';
13
- export * from './system';
14
- export * from './to';
15
- export * from './wrapper';
16
- export * from './descriptor';
17
- export * from './test';
18
8
  export * from './deploy';
19
9
  export * from './name';
20
- export * from './mixin';
10
+ export * from './event';
11
+ export * from './util';
21
12
  export declare const leyyo: LeyyoLike;
22
- export declare const $descriptor: import("./descriptor").DescriptorCommonLike;
23
- export declare const $is: import("./is").IsCommonLike;
24
- export declare const $hook: import("./hook").HookCommonLike;
25
- export declare const $assert: import("./assertion").AssertionCommonLike;
26
13
  export declare const $repo: import("./repo").RepoCommonLike;
27
- export declare const $to: import("./to").ToCommonLike;
28
- export declare const $sys: import("./system").SystemCommonLike;
29
- export declare const $dev: import("./developer").DeveloperCommonLike;
30
- export declare const $fqn: import("./fqn").FqnCommonLike;
31
14
  export declare const $log: import("./log").LogCommonLike;
32
15
  export declare const $err: import("./error").ErrorCommonLike;
33
- export declare const $wrapper: import("./wrapper").WrapperCommonLike;
34
- export declare const $test: import("./test").TestCommonLike;
35
16
  export declare const $deploy: import("./deploy").DeployCommonLike;
36
17
  export declare const $name: import("./name").NameCommonLike;
37
- export declare const $mixin: import("./mixin").MixinCommonLike;
18
+ export declare const $event: import("./event").EventCommonLike<import("./event").EventNameDef>;
19
+ export declare const $opt: import("./opt").OptCommonLike;
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.$mixin = exports.$name = exports.$deploy = exports.$test = exports.$wrapper = exports.$err = exports.$log = exports.$fqn = exports.$dev = exports.$sys = exports.$to = exports.$repo = exports.$assert = exports.$hook = exports.$is = exports.$descriptor = exports.leyyo = void 0;
18
+ exports.$opt = exports.$event = exports.$name = exports.$deploy = exports.$err = exports.$log = exports.$repo = exports.leyyo = void 0;
19
19
  if (global === null || global === void 0 ? void 0 : global.leyyo_is_testing) {
20
20
  ['log', 'warn', 'info', 'debug', 'trace', 'error'].forEach(name => {
21
21
  global.console[name] = () => {
@@ -26,40 +26,22 @@ if (global === null || global === void 0 ? void 0 : global.leyyo_is_testing) {
26
26
  }
27
27
  console['fatal'] = (...args) => console.error(...args);
28
28
  const leyyo_1 = require("./leyyo/leyyo");
29
- __exportStar(require("./assertion"), exports);
30
- __exportStar(require("./developer"), exports);
31
29
  __exportStar(require("./error"), exports);
32
- __exportStar(require("./exception"), exports);
33
- __exportStar(require("./fqn"), exports);
34
- __exportStar(require("./hook"), exports);
35
- __exportStar(require("./is"), exports);
36
30
  __exportStar(require("./leyyo"), exports);
37
31
  __exportStar(require("./log"), exports);
38
- __exportStar(require("./shared"), exports);
32
+ __exportStar(require("./shared"), exports); // type
33
+ __exportStar(require("./opt"), exports); // type
39
34
  __exportStar(require("./repo"), exports);
40
- __exportStar(require("./system"), exports);
41
- __exportStar(require("./to"), exports);
42
- __exportStar(require("./wrapper"), exports);
43
- __exportStar(require("./descriptor"), exports);
44
- __exportStar(require("./test"), exports);
45
35
  __exportStar(require("./deploy"), exports);
46
36
  __exportStar(require("./name"), exports);
47
- __exportStar(require("./mixin"), exports);
37
+ __exportStar(require("./event"), exports);
38
+ __exportStar(require("./util"), exports); // function
48
39
  exports.leyyo = new leyyo_1.Leyyo();
49
- exports.$descriptor = exports.leyyo.descriptor;
50
- exports.$is = exports.leyyo.is;
51
- exports.$hook = exports.leyyo.hook;
52
- exports.$assert = exports.leyyo.assertion;
53
40
  exports.$repo = exports.leyyo.repo;
54
- exports.$to = exports.leyyo.to;
55
- exports.$sys = exports.leyyo.system;
56
- exports.$dev = exports.leyyo.dev;
57
- exports.$fqn = exports.leyyo.fqn;
58
41
  exports.$log = exports.leyyo.log;
59
42
  exports.$err = exports.leyyo.error;
60
- exports.$wrapper = exports.leyyo.wrapper;
61
- exports.$test = exports.leyyo.test;
62
43
  exports.$deploy = exports.leyyo.deploy;
63
44
  exports.$name = exports.leyyo.name;
64
- exports.$mixin = exports.leyyo.mixin;
45
+ exports.$event = exports.leyyo.event;
46
+ exports.$opt = exports.leyyo.opt;
65
47
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,qCAAqC;;;;;;;;;;;;;;;;;AAErC,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,EAAE,CAAC;IAC3B,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAC9D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAS,EAAE;QAClC,CAAC,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,GAAG,GAAS,EAAE;QAC3B,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC;AACD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;AAEvE,yCAAoC;AAGpC,8CAA4B;AAC5B,8CAA4B;AAC5B,0CAAwB;AACxB,8CAA4B;AAC5B,wCAAsB;AACtB,yCAAuB;AACvB,uCAAqB;AACrB,0CAAwB;AACxB,wCAAsB;AACtB,2CAAyB;AACzB,yCAAuB;AACvB,2CAAyB;AACzB,uCAAqB;AACrB,4CAA0B;AAC1B,+CAA6B;AAC7B,yCAAuB;AACvB,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB;AAEX,QAAA,KAAK,GAAc,IAAI,aAAK,EAAE,CAAC;AAC/B,QAAA,WAAW,GAAG,aAAK,CAAC,UAAU,CAAC;AAC/B,QAAA,GAAG,GAAG,aAAK,CAAC,EAAE,CAAC;AACf,QAAA,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC;AACnB,QAAA,OAAO,GAAG,aAAK,CAAC,SAAS,CAAC;AAC1B,QAAA,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC;AACnB,QAAA,GAAG,GAAG,aAAK,CAAC,EAAE,CAAC;AACf,QAAA,IAAI,GAAG,aAAK,CAAC,MAAM,CAAC;AACpB,QAAA,IAAI,GAAG,aAAK,CAAC,GAAG,CAAC;AACjB,QAAA,IAAI,GAAG,aAAK,CAAC,GAAG,CAAC;AACjB,QAAA,IAAI,GAAG,aAAK,CAAC,GAAG,CAAC;AACjB,QAAA,IAAI,GAAG,aAAK,CAAC,KAAK,CAAC;AACnB,QAAA,QAAQ,GAAG,aAAK,CAAC,OAAO,CAAC;AACzB,QAAA,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC;AACnB,QAAA,OAAO,GAAG,aAAK,CAAC,MAAM,CAAC;AACvB,QAAA,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC;AACnB,QAAA,MAAM,GAAG,aAAK,CAAC,KAAK,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,qCAAqC;;;;;;;;;;;;;;;;;AAErC,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,EAAE,CAAC;IAC3B,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAC9D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,GAAS,EAAE;QAClC,CAAC,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,GAAG,GAAS,EAAE;QAC3B,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;AACP,CAAC;AACD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;AAEvE,yCAAoC;AAGpC,0CAAwB;AACxB,0CAAwB;AACxB,wCAAsB;AACtB,2CAAyB,CAAC,OAAO;AACjC,wCAAsB,CAAC,OAAO;AAC9B,yCAAuB;AACvB,2CAAyB;AACzB,yCAAuB;AACvB,0CAAwB;AACxB,yCAAuB,CAAC,WAAW;AAEtB,QAAA,KAAK,GAAc,IAAI,aAAK,EAAE,CAAC;AAC/B,QAAA,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC;AACnB,QAAA,IAAI,GAAG,aAAK,CAAC,GAAG,CAAC;AACjB,QAAA,IAAI,GAAG,aAAK,CAAC,KAAK,CAAC;AACnB,QAAA,OAAO,GAAG,aAAK,CAAC,MAAM,CAAC;AACvB,QAAA,KAAK,GAAG,aAAK,CAAC,IAAI,CAAC;AACnB,QAAA,MAAM,GAAG,aAAK,CAAC,KAAK,CAAC;AACrB,QAAA,IAAI,GAAG,aAAK,CAAC,GAAG,CAAC"}
@@ -1,2 +1 @@
1
1
  export * from './index.types';
2
- export * from './leyyo-hook.common';
@@ -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("./leyyo-hook.common"), exports);
19
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/leyyo/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,sDAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/leyyo/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B"}
@@ -1,37 +1,19 @@
1
- import type { HookCommonLike } from "../hook";
2
- import type { IsCommonLike } from "../is";
3
- import type { AssertionCommonLike } from "../assertion";
4
1
  import type { ErrorCommonLike } from "../error";
5
2
  import type { LogCommonLike } from "../log";
6
3
  import type { RepoCommonLike } from "../repo";
7
- import type { ToCommonLike } from "../to";
8
- import type { FqnCommonLike } from "../fqn";
9
- import type { SystemCommonLike } from "../system";
10
- import type { DeveloperCommonLike } from "../developer";
11
4
  import type { Fnc, ShiftMain, ShiftSecure } from "../shared";
12
- import type { DescriptorCommonLike } from "../descriptor";
13
- import type { WrapperCommonLike } from "../wrapper";
14
- import type { TestCommonLike } from "../test";
15
5
  import type { DeployCommonLike } from "../deploy";
16
6
  import type { NameCommonLike } from "../name";
17
- import type { MixinCommonLike } from "../mixin";
7
+ import type { EventCommonLike } from "../event";
8
+ import type { OptCommonLike } from "../opt";
18
9
  export interface LeyyoLike extends ShiftSecure<LeyyoSecure> {
19
- readonly is: IsCommonLike;
20
- readonly hook: HookCommonLike;
21
- readonly assertion: AssertionCommonLike;
22
10
  readonly error: ErrorCommonLike;
23
11
  readonly log: LogCommonLike;
24
12
  readonly repo: RepoCommonLike;
25
- readonly to: ToCommonLike;
26
- readonly fqn: FqnCommonLike;
27
- readonly system: SystemCommonLike;
28
- readonly dev: DeveloperCommonLike;
29
- readonly descriptor: DescriptorCommonLike;
30
- readonly wrapper: WrapperCommonLike;
31
- readonly test: TestCommonLike;
32
13
  readonly deploy: DeployCommonLike;
33
14
  readonly name: NameCommonLike;
34
- readonly mixin: MixinCommonLike;
15
+ readonly event: EventCommonLike;
16
+ readonly opt: OptCommonLike;
35
17
  }
36
18
  export interface LeyyoSecure extends ShiftMain<LeyyoLike> {
37
19
  $earlyRun(fn: Fnc): LeyyoSecure;
@@ -1,40 +1,22 @@
1
+ import { OptCommon } from "../opt/opt.common";
1
2
  import type { Fnc } from "../shared";
2
3
  import type { DeployCommonLike } from "../deploy";
3
- import type { MixinCommonLike } from "../mixin";
4
4
  import type { NameCommonLike } from "../name";
5
- import type { HookCommonLike } from "../hook";
6
5
  import type { LeyyoLike, LeyyoSecure } from "./index.types";
7
- import type { IsCommonLike } from "../is";
8
- import type { AssertionCommonLike } from "../assertion";
9
6
  import type { ErrorCommonLike } from "../error";
10
7
  import type { LogCommonLike } from "../log";
11
8
  import type { RepoCommonLike } from "../repo";
12
- import type { ToCommonLike } from "../to";
13
- import type { FqnCommonLike } from "../fqn";
14
- import type { SystemCommonLike } from "../system";
15
- import type { DeveloperCommonLike } from "../developer";
16
- import type { DescriptorCommonLike } from "../descriptor";
17
- import type { WrapperCommonLike } from "../wrapper";
18
- import type { TestCommonLike } from "../test";
9
+ import type { EventCommonLike } from "../event";
19
10
  export declare class Leyyo implements LeyyoLike, LeyyoSecure {
20
11
  private _lazyCallbacks;
21
12
  private _earlyCallbacks;
22
- readonly hook: HookCommonLike;
23
- readonly is: IsCommonLike;
24
- readonly assertion: AssertionCommonLike;
25
13
  readonly error: ErrorCommonLike;
26
14
  readonly log: LogCommonLike;
27
15
  readonly repo: RepoCommonLike;
28
- readonly to: ToCommonLike;
29
- readonly fqn: FqnCommonLike;
30
- readonly system: SystemCommonLike;
31
- readonly dev: DeveloperCommonLike;
32
- readonly descriptor: DescriptorCommonLike;
33
- readonly wrapper: WrapperCommonLike;
34
- readonly test: TestCommonLike;
35
16
  readonly deploy: DeployCommonLike;
36
17
  readonly name: NameCommonLike;
37
- readonly mixin: MixinCommonLike;
18
+ readonly event: EventCommonLike;
19
+ readonly opt: OptCommon;
38
20
  constructor();
39
21
  get $secure(): LeyyoSecure;
40
22
  get $back(): LeyyoLike;
@@ -2,71 +2,44 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Leyyo = void 0;
4
4
  const internal_1 = require("../internal");
5
- const system_common_1 = require("../system/system.common");
6
- const is_common_1 = require("../is/is.common");
7
5
  const repo_common_1 = require("../repo/repo.common");
8
- const hook_common_1 = require("../hook/hook.common");
9
6
  const log_common_1 = require("../log/log.common");
10
- const fqn_common_1 = require("../fqn/fqn.common");
11
- const developer_common_1 = require("../developer/developer.common");
12
7
  const error_common_1 = require("../error/error.common");
13
- const assertion_common_1 = require("../assertion/assertion.common");
14
- const to_common_1 = require("../to/to.common");
15
- const descriptor_common_1 = require("../descriptor/descriptor.common");
16
- const wrapper_common_1 = require("../wrapper/wrapper.common");
17
- const test_common_1 = require("../test/test.common");
18
8
  const deploy_common_1 = require("../deploy/deploy.common");
19
9
  const name_common_1 = require("../name/name.common");
20
- const mixin_common_1 = require("../mixin/mixin.common");
10
+ const event_common_1 = require("../event/event.common");
11
+ const opt_common_1 = require("../opt/opt.common");
21
12
  class Leyyo {
22
13
  constructor() {
23
14
  this._lazyCallbacks = [];
24
15
  this._earlyCallbacks = [];
25
- this.system = new system_common_1.SystemCommon(this); // no
26
- this.is = new is_common_1.IsCommon(this); // no
27
- this.test = new test_common_1.TestCommon(this); // no
28
16
  this.repo = new repo_common_1.RepoCommon(this); // none
29
- this.mixin = new mixin_common_1.MixinCommon(this); // is
30
- this.dev = new developer_common_1.DeveloperCommon(this); // test
31
17
  this.deploy = new deploy_common_1.DeployCommon(this); // dev, test
32
- this.assertion = new assertion_common_1.AssertionCommon(this); // dev, test
33
- this.wrapper = new wrapper_common_1.WrapperCommon(this); // assertion, dev
34
- this.descriptor = new descriptor_common_1.DescriptorCommon(this); // assertion, dev
35
- this.name = new name_common_1.NameCommon(this); // assertion, dev, descriptor
36
- this.to = new to_common_1.ToCommon(this); // is, dev, wrapper
37
- this.hook = new hook_common_1.HookCommon(this); // repo, assertion, dev, sym
38
- this.error = new error_common_1.ErrorCommon(this); // hook
39
- this.log = new log_common_1.LogCommon(this); // hook, test
40
- this.fqn = new fqn_common_1.FqnCommon(this); // hook, descriptor, dev
18
+ this.name = new name_common_1.NameCommon(this); // dev
19
+ this.error = new error_common_1.ErrorCommon(this); //
20
+ this.log = new log_common_1.LogCommon(this); // test
21
+ this.event = new event_common_1.EventCommon(this); // repo, assertion
22
+ this.opt = new opt_common_1.OptCommon(this);
41
23
  const members = [
42
- this.system.$secure,
43
- this.is.$secure,
44
- this.test.$secure,
45
24
  this.repo.$secure,
46
- this.mixin.$secure,
47
- this.dev.$secure,
48
25
  this.deploy.$secure,
49
- this.assertion.$secure,
50
- this.wrapper.$secure,
51
- this.descriptor.$secure,
52
26
  this.name.$secure,
53
- this.to.$secure,
54
- this.hook.$secure,
55
27
  this.error.$secure,
56
28
  this.log.$secure,
57
- this.fqn.$secure,
29
+ this.event.$secure,
30
+ this.opt.$secure,
58
31
  ];
59
32
  members.forEach(member => member.$init(this));
60
33
  this.$lazyRun(() => {
61
- this.fqn.register(null, Leyyo, 'class', internal_1.FQN);
34
+ this.event.emit('ly:fqn:register', 'class', internal_1.FQN, Leyyo);
62
35
  });
63
36
  this._earlyCallbacks.forEach(fn => fn());
64
37
  this._lazyCallbacks.forEach(fn => fn());
65
38
  members.forEach(member => {
66
- this.descriptor.remove(member, '$init');
39
+ delete member.$init;
67
40
  });
68
41
  ['$secure', '$back', '$earlyRun', '$lazyRun', '_lazyCallbacks', '_earlyCallbacks'].forEach(field => {
69
- this.descriptor.remove(this, field);
42
+ delete this[field];
70
43
  });
71
44
  }
72
45
  // region secure
@@ -1 +1 @@
1
- {"version":3,"file":"leyyo.js","sourceRoot":"","sources":["../../src/leyyo/leyyo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"leyyo.js","sourceRoot":"","sources":["../../src/leyyo/leyyo.ts"],"names":[],"mappings":";;;AAAA,0CAAgC;AAChC,qDAA+C;AAC/C,kDAA4C;AAC5C,wDAAkD;AAClD,2DAAqD;AACrD,qDAA+C;AAC/C,wDAAkD;AAClD,kDAA4C;AAU5C,MAAa,KAAK;IAWd;QAVQ,mBAAc,GAAe,EAAE,CAAC;QAChC,oBAAe,GAAe,EAAE,CAAC;QAUrC,IAAI,CAAC,IAAI,GAAG,IAAI,wBAAU,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,4BAAY,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY;QAClD,IAAI,CAAC,IAAI,GAAG,IAAI,wBAAU,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,0BAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QACtC,IAAI,CAAC,GAAG,GAAG,IAAI,sBAAS,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO;QACvC,IAAI,CAAC,KAAK,GAAG,IAAI,0BAAW,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB;QACtD,IAAI,CAAC,GAAG,GAAG,IAAI,sBAAS,CAAC,IAAI,CAAC,CAAC;QAE/B,MAAM,OAAO,GAAG;YACZ,IAAI,CAAC,IAAI,CAAC,OAAO;YACjB,IAAI,CAAC,MAAM,CAAC,OAAO;YACnB,IAAI,CAAC,IAAI,CAAC,OAAO;YACjB,IAAI,CAAC,KAAK,CAAC,OAAO;YAClB,IAAI,CAAC,GAAG,CAAC,OAAO;YAChB,IAAI,CAAC,KAAK,CAAC,OAAO;YAClB,IAAI,CAAC,GAAG,CAAC,OAAO;SACA,CAAC;QAErB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACf,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,cAAG,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACxC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACrB,OAAO,MAAM,CAAC,KAAK,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC/F,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC,CAAA;IACN,CAAC;IAED,gBAAgB;IAEhB,IAAI,OAAO;QACP,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,KAAK;QACL,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,EAAO;QACb,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,QAAQ,CAAC,EAAO;QACZ,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IAChB,CAAC;CAGJ;AAlED,sBAkEC"}