taon 0.0.0 → 18.0.12

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 (668) hide show
  1. package/README.md +115 -0
  2. package/assets/shared/shared_folder_info.txt +7 -0
  3. package/bin/start.js +279 -0
  4. package/bin/taon +2 -1
  5. package/bin/taon-debug +2 -2
  6. package/bin/taon-debug-brk +3 -2
  7. package/browser/README.md +24 -0
  8. package/browser/esm2022/lib/base-classes/base-abstract-entity.mjs +18 -0
  9. package/browser/esm2022/lib/base-classes/base-class.mjs +17 -0
  10. package/browser/esm2022/lib/base-classes/base-context.mjs +14 -0
  11. package/browser/esm2022/lib/base-classes/base-controller.mjs +18 -0
  12. package/browser/esm2022/lib/base-classes/base-crud-controller.mjs +279 -0
  13. package/browser/esm2022/lib/base-classes/base-entity.mjs +18 -0
  14. package/browser/esm2022/lib/base-classes/base-injector.mjs +160 -0
  15. package/browser/esm2022/lib/base-classes/base-provider.mjs +6 -0
  16. package/browser/esm2022/lib/base-classes/base-repository.mjs +514 -0
  17. package/browser/esm2022/lib/base-classes/base-subscriber-for-entity.mjs +137 -0
  18. package/browser/esm2022/lib/base-classes/base-subscriber.mjs +27 -0
  19. package/browser/esm2022/lib/base-classes/base.mjs +26 -0
  20. package/browser/esm2022/lib/constants.mjs +4 -0
  21. package/browser/esm2022/lib/create-context.mjs +87 -0
  22. package/browser/esm2022/lib/decorators/classes/controller-decorator.mjs +15 -0
  23. package/browser/esm2022/lib/decorators/classes/entity-decorator.mjs +27 -0
  24. package/browser/esm2022/lib/decorators/classes/provider-decorator.mjs +15 -0
  25. package/browser/esm2022/lib/decorators/classes/repository-decorator.mjs +15 -0
  26. package/browser/esm2022/lib/decorators/classes/subscriber-decorator.mjs +41 -0
  27. package/browser/esm2022/lib/decorators/http/http-decorators.mjs +22 -0
  28. package/browser/esm2022/lib/decorators/http/http-methods-decorators.mjs +78 -0
  29. package/browser/esm2022/lib/decorators/http/http-params-decorators.mjs +47 -0
  30. package/browser/esm2022/lib/dependency-injection/di-container.mjs +32 -0
  31. package/browser/esm2022/lib/endpoint-context.mjs +1746 -0
  32. package/browser/esm2022/lib/entity-process.mjs +207 -0
  33. package/browser/esm2022/lib/env.mjs +6 -0
  34. package/browser/esm2022/lib/get-response-value.mjs +41 -0
  35. package/browser/esm2022/lib/helpers/class-helpers.mjs +183 -0
  36. package/browser/esm2022/lib/helpers/taon-helpers.mjs +120 -0
  37. package/browser/esm2022/lib/index.mjs +79 -0
  38. package/browser/esm2022/lib/inject.mjs +70 -0
  39. package/browser/esm2022/lib/models.mjs +77 -0
  40. package/browser/esm2022/lib/orm.mjs +6 -0
  41. package/browser/esm2022/lib/realtime/realtime-client.mjs +129 -0
  42. package/browser/esm2022/lib/realtime/realtime-core.mjs +54 -0
  43. package/browser/esm2022/lib/realtime/realtime-server.mjs +274 -0
  44. package/browser/esm2022/lib/realtime/realtime-strategy/index.mjs +7 -0
  45. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.mjs +98 -0
  46. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.mjs +45 -0
  47. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.mjs +40 -0
  48. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.mjs +25 -0
  49. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.mjs +4 -0
  50. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc.mjs +49 -0
  51. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.mjs +5 -0
  52. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.mjs +50 -0
  53. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.mjs +48 -0
  54. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.mjs +35 -0
  55. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.mjs +43 -0
  56. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.mjs +4 -0
  57. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock.mjs +28 -0
  58. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-socket-io.mjs +33 -0
  59. package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy.mjs +10 -0
  60. package/browser/esm2022/lib/realtime/realtime-subs-manager.mjs +79 -0
  61. package/browser/esm2022/lib/realtime/realtime.models.mjs +4 -0
  62. package/browser/esm2022/lib/storage.mjs +5 -0
  63. package/browser/esm2022/lib/symbols.mjs +89 -0
  64. package/browser/esm2022/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.mjs +4 -0
  65. package/browser/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.mjs +32 -0
  66. package/browser/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.mjs +167 -0
  67. package/browser/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin.service.mjs +64 -0
  68. package/browser/esm2022/lib/validators.mjs +76 -0
  69. package/browser/esm2022/public-api.mjs +2 -0
  70. package/browser/esm2022/taon.mjs +5 -0
  71. package/browser/fesm2022/taon.mjs +4901 -0
  72. package/browser/fesm2022/taon.mjs.map +1 -0
  73. package/browser/index.d.ts +6 -0
  74. package/browser/lib/base-classes/base-abstract-entity.d.ts +7 -0
  75. package/browser/lib/base-classes/base-class.d.ts +9 -0
  76. package/browser/lib/base-classes/base-context.d.ts +17 -0
  77. package/browser/lib/base-classes/base-controller.d.ts +8 -0
  78. package/browser/lib/base-classes/base-crud-controller.d.ts +28 -0
  79. package/browser/lib/base-classes/base-entity.d.ts +8 -0
  80. package/browser/lib/base-classes/base-injector.d.ts +60 -0
  81. package/browser/lib/base-classes/base-provider.d.ts +4 -0
  82. package/browser/lib/base-classes/base-repository.d.ts +249 -0
  83. package/browser/lib/base-classes/base-subscriber-for-entity.d.ts +82 -0
  84. package/browser/lib/base-classes/base-subscriber.d.ts +5 -0
  85. package/browser/lib/base-classes/base.d.ts +36 -0
  86. package/browser/lib/constants.d.ts +2 -0
  87. package/browser/lib/create-context.d.ts +25 -0
  88. package/browser/lib/decorators/classes/controller-decorator.d.ts +13 -0
  89. package/browser/lib/decorators/classes/entity-decorator.d.ts +17 -0
  90. package/browser/lib/decorators/classes/provider-decorator.d.ts +5 -0
  91. package/browser/lib/decorators/classes/repository-decorator.d.ts +5 -0
  92. package/browser/lib/decorators/classes/subscriber-decorator.d.ts +6 -0
  93. package/browser/lib/decorators/http/http-decorators.d.ts +18 -0
  94. package/browser/lib/decorators/http/http-methods-decorators.d.ts +15 -0
  95. package/browser/lib/decorators/http/http-params-decorators.d.ts +6 -0
  96. package/browser/lib/dependency-injection/di-container.d.ts +6 -0
  97. package/browser/lib/endpoint-context.d.ts +117 -0
  98. package/browser/lib/entity-process.d.ts +40 -0
  99. package/browser/lib/env.d.ts +3 -0
  100. package/browser/lib/get-response-value.d.ts +7 -0
  101. package/browser/lib/helpers/class-helpers.d.ts +19 -0
  102. package/browser/lib/helpers/taon-helpers.d.ts +17 -0
  103. package/browser/lib/index.d.ts +113 -0
  104. package/browser/lib/inject.d.ts +9 -0
  105. package/browser/lib/models.d.ts +175 -0
  106. package/browser/lib/orm.d.ts +3 -0
  107. package/browser/lib/realtime/realtime-client.d.ts +32 -0
  108. package/browser/lib/realtime/realtime-core.d.ts +41 -0
  109. package/browser/lib/realtime/realtime-server.d.ts +14 -0
  110. package/browser/lib/realtime/realtime-strategy/index.d.ts +5 -0
  111. package/browser/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.d.ts +22 -0
  112. package/browser/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.d.ts +17 -0
  113. package/browser/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.d.ts +11 -0
  114. package/browser/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.d.ts +11 -0
  115. package/browser/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.d.ts +14 -0
  116. package/browser/lib/realtime/realtime-strategy/realtime-strategy-ipc.d.ts +23 -0
  117. package/browser/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.d.ts +3 -0
  118. package/browser/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.d.ts +17 -0
  119. package/browser/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.d.ts +18 -0
  120. package/browser/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.d.ts +12 -0
  121. package/browser/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.d.ts +14 -0
  122. package/browser/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.d.ts +12 -0
  123. package/browser/lib/realtime/realtime-strategy/realtime-strategy-mock.d.ts +15 -0
  124. package/browser/lib/realtime/realtime-strategy/realtime-strategy-socket-io.d.ts +17 -0
  125. package/browser/lib/realtime/realtime-strategy/realtime-strategy.d.ts +13 -0
  126. package/browser/lib/realtime/realtime-subs-manager.d.ts +15 -0
  127. package/browser/lib/realtime/realtime.models.d.ts +14 -0
  128. package/browser/lib/storage.d.ts +2 -0
  129. package/browser/lib/symbols.d.ts +73 -0
  130. package/browser/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.d.ts +6 -0
  131. package/browser/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.d.ts +18 -0
  132. package/browser/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.d.ts +51 -0
  133. package/browser/lib/ui/taon-admin-mode-configuration/taon-admin.service.d.ts +25 -0
  134. package/browser/lib/validators.d.ts +8 -0
  135. package/browser/package.json +25 -0
  136. package/browser/public-api.d.ts +2 -0
  137. package/cli.d.ts +1 -0
  138. package/cli.js +24 -0
  139. package/cli.js.map +1 -0
  140. package/client/README.md +24 -0
  141. package/client/esm2022/lib/base-classes/base-abstract-entity.mjs +18 -0
  142. package/client/esm2022/lib/base-classes/base-class.mjs +17 -0
  143. package/client/esm2022/lib/base-classes/base-context.mjs +14 -0
  144. package/client/esm2022/lib/base-classes/base-controller.mjs +18 -0
  145. package/client/esm2022/lib/base-classes/base-crud-controller.mjs +279 -0
  146. package/client/esm2022/lib/base-classes/base-entity.mjs +18 -0
  147. package/client/esm2022/lib/base-classes/base-injector.mjs +160 -0
  148. package/client/esm2022/lib/base-classes/base-provider.mjs +6 -0
  149. package/client/esm2022/lib/base-classes/base-repository.mjs +514 -0
  150. package/client/esm2022/lib/base-classes/base-subscriber-for-entity.mjs +137 -0
  151. package/client/esm2022/lib/base-classes/base-subscriber.mjs +27 -0
  152. package/client/esm2022/lib/base-classes/base.mjs +26 -0
  153. package/client/esm2022/lib/constants.mjs +4 -0
  154. package/client/esm2022/lib/create-context.mjs +87 -0
  155. package/client/esm2022/lib/decorators/classes/controller-decorator.mjs +15 -0
  156. package/client/esm2022/lib/decorators/classes/entity-decorator.mjs +27 -0
  157. package/client/esm2022/lib/decorators/classes/provider-decorator.mjs +15 -0
  158. package/client/esm2022/lib/decorators/classes/repository-decorator.mjs +15 -0
  159. package/client/esm2022/lib/decorators/classes/subscriber-decorator.mjs +41 -0
  160. package/client/esm2022/lib/decorators/http/http-decorators.mjs +22 -0
  161. package/client/esm2022/lib/decorators/http/http-methods-decorators.mjs +78 -0
  162. package/client/esm2022/lib/decorators/http/http-params-decorators.mjs +47 -0
  163. package/client/esm2022/lib/dependency-injection/di-container.mjs +32 -0
  164. package/client/esm2022/lib/endpoint-context.mjs +1746 -0
  165. package/client/esm2022/lib/entity-process.mjs +207 -0
  166. package/client/esm2022/lib/env.mjs +6 -0
  167. package/client/esm2022/lib/get-response-value.mjs +41 -0
  168. package/client/esm2022/lib/helpers/class-helpers.mjs +183 -0
  169. package/client/esm2022/lib/helpers/taon-helpers.mjs +120 -0
  170. package/client/esm2022/lib/index.mjs +79 -0
  171. package/client/esm2022/lib/inject.mjs +70 -0
  172. package/client/esm2022/lib/models.mjs +77 -0
  173. package/client/esm2022/lib/orm.mjs +6 -0
  174. package/client/esm2022/lib/realtime/realtime-client.mjs +129 -0
  175. package/client/esm2022/lib/realtime/realtime-core.mjs +54 -0
  176. package/client/esm2022/lib/realtime/realtime-server.mjs +274 -0
  177. package/client/esm2022/lib/realtime/realtime-strategy/index.mjs +7 -0
  178. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.mjs +98 -0
  179. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.mjs +45 -0
  180. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.mjs +40 -0
  181. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.mjs +25 -0
  182. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.mjs +4 -0
  183. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc.mjs +49 -0
  184. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.mjs +5 -0
  185. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.mjs +50 -0
  186. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.mjs +48 -0
  187. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.mjs +35 -0
  188. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.mjs +43 -0
  189. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.mjs +4 -0
  190. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock.mjs +28 -0
  191. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-socket-io.mjs +33 -0
  192. package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy.mjs +10 -0
  193. package/client/esm2022/lib/realtime/realtime-subs-manager.mjs +79 -0
  194. package/client/esm2022/lib/realtime/realtime.models.mjs +4 -0
  195. package/client/esm2022/lib/storage.mjs +5 -0
  196. package/client/esm2022/lib/symbols.mjs +89 -0
  197. package/client/esm2022/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.mjs +4 -0
  198. package/client/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.mjs +32 -0
  199. package/client/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.mjs +167 -0
  200. package/client/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin.service.mjs +64 -0
  201. package/client/esm2022/lib/validators.mjs +76 -0
  202. package/client/esm2022/public-api.mjs +2 -0
  203. package/client/esm2022/taon.mjs +5 -0
  204. package/client/fesm2022/taon.mjs +4901 -0
  205. package/client/fesm2022/taon.mjs.map +1 -0
  206. package/client/index.d.ts +6 -0
  207. package/client/lib/base-classes/base-abstract-entity.d.ts +7 -0
  208. package/client/lib/base-classes/base-class.d.ts +9 -0
  209. package/client/lib/base-classes/base-context.d.ts +17 -0
  210. package/client/lib/base-classes/base-controller.d.ts +8 -0
  211. package/client/lib/base-classes/base-crud-controller.d.ts +28 -0
  212. package/client/lib/base-classes/base-entity.d.ts +8 -0
  213. package/client/lib/base-classes/base-injector.d.ts +60 -0
  214. package/client/lib/base-classes/base-provider.d.ts +4 -0
  215. package/client/lib/base-classes/base-repository.d.ts +249 -0
  216. package/client/lib/base-classes/base-subscriber-for-entity.d.ts +82 -0
  217. package/client/lib/base-classes/base-subscriber.d.ts +5 -0
  218. package/client/lib/base-classes/base.d.ts +36 -0
  219. package/client/lib/constants.d.ts +2 -0
  220. package/client/lib/create-context.d.ts +25 -0
  221. package/client/lib/decorators/classes/controller-decorator.d.ts +13 -0
  222. package/client/lib/decorators/classes/entity-decorator.d.ts +17 -0
  223. package/client/lib/decorators/classes/provider-decorator.d.ts +5 -0
  224. package/client/lib/decorators/classes/repository-decorator.d.ts +5 -0
  225. package/client/lib/decorators/classes/subscriber-decorator.d.ts +6 -0
  226. package/client/lib/decorators/http/http-decorators.d.ts +18 -0
  227. package/client/lib/decorators/http/http-methods-decorators.d.ts +15 -0
  228. package/client/lib/decorators/http/http-params-decorators.d.ts +6 -0
  229. package/client/lib/dependency-injection/di-container.d.ts +6 -0
  230. package/client/lib/endpoint-context.d.ts +117 -0
  231. package/client/lib/entity-process.d.ts +40 -0
  232. package/client/lib/env.d.ts +3 -0
  233. package/client/lib/get-response-value.d.ts +7 -0
  234. package/client/lib/helpers/class-helpers.d.ts +19 -0
  235. package/client/lib/helpers/taon-helpers.d.ts +17 -0
  236. package/client/lib/index.d.ts +113 -0
  237. package/client/lib/inject.d.ts +9 -0
  238. package/client/lib/models.d.ts +175 -0
  239. package/client/lib/orm.d.ts +3 -0
  240. package/client/lib/realtime/realtime-client.d.ts +32 -0
  241. package/client/lib/realtime/realtime-core.d.ts +41 -0
  242. package/client/lib/realtime/realtime-server.d.ts +14 -0
  243. package/client/lib/realtime/realtime-strategy/index.d.ts +5 -0
  244. package/client/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.d.ts +22 -0
  245. package/client/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.d.ts +17 -0
  246. package/client/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.d.ts +11 -0
  247. package/client/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.d.ts +11 -0
  248. package/client/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.d.ts +14 -0
  249. package/client/lib/realtime/realtime-strategy/realtime-strategy-ipc.d.ts +23 -0
  250. package/client/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.d.ts +3 -0
  251. package/client/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.d.ts +17 -0
  252. package/client/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.d.ts +18 -0
  253. package/client/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.d.ts +12 -0
  254. package/client/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.d.ts +14 -0
  255. package/client/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.d.ts +12 -0
  256. package/client/lib/realtime/realtime-strategy/realtime-strategy-mock.d.ts +15 -0
  257. package/client/lib/realtime/realtime-strategy/realtime-strategy-socket-io.d.ts +17 -0
  258. package/client/lib/realtime/realtime-strategy/realtime-strategy.d.ts +13 -0
  259. package/client/lib/realtime/realtime-subs-manager.d.ts +15 -0
  260. package/client/lib/realtime/realtime.models.d.ts +14 -0
  261. package/client/lib/storage.d.ts +2 -0
  262. package/client/lib/symbols.d.ts +73 -0
  263. package/client/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.d.ts +6 -0
  264. package/client/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.d.ts +18 -0
  265. package/client/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.d.ts +51 -0
  266. package/client/lib/ui/taon-admin-mode-configuration/taon-admin.service.d.ts +25 -0
  267. package/client/lib/validators.d.ts +8 -0
  268. package/client/public-api.d.ts +2 -0
  269. package/index.d.ts +1 -0
  270. package/index.js +5 -1
  271. package/index.js.map +1 -0
  272. package/lib/base-classes/base-abstract-entity.d.ts +6 -0
  273. package/lib/base-classes/base-abstract-entity.js +40 -0
  274. package/lib/base-classes/base-abstract-entity.js.map +1 -0
  275. package/lib/base-classes/base-class.d.ts +8 -0
  276. package/lib/base-classes/base-class.js +35 -0
  277. package/lib/base-classes/base-class.js.map +1 -0
  278. package/lib/base-classes/base-context.d.ts +16 -0
  279. package/lib/base-classes/base-context.js +15 -0
  280. package/lib/base-classes/base-context.js.map +1 -0
  281. package/lib/base-classes/base-controller.d.ts +7 -0
  282. package/lib/base-classes/base-controller.js +24 -0
  283. package/lib/base-classes/base-controller.js.map +1 -0
  284. package/lib/base-classes/base-crud-controller.d.ts +27 -0
  285. package/lib/base-classes/base-crud-controller.js +385 -0
  286. package/lib/base-classes/base-crud-controller.js.map +1 -0
  287. package/lib/base-classes/base-entity.d.ts +7 -0
  288. package/lib/base-classes/base-entity.js +25 -0
  289. package/lib/base-classes/base-entity.js.map +1 -0
  290. package/lib/base-classes/base-injector.d.ts +59 -0
  291. package/lib/base-classes/base-injector.js +220 -0
  292. package/lib/base-classes/base-injector.js.map +1 -0
  293. package/lib/base-classes/base-provider.d.ts +3 -0
  294. package/lib/base-classes/base-provider.js +14 -0
  295. package/lib/base-classes/base-provider.js.map +1 -0
  296. package/lib/base-classes/base-repository.d.ts +254 -0
  297. package/lib/base-classes/base-repository.js +780 -0
  298. package/lib/base-classes/base-repository.js.map +1 -0
  299. package/lib/base-classes/base-subscriber-for-entity.d.ts +81 -0
  300. package/lib/base-classes/base-subscriber-for-entity.js +136 -0
  301. package/lib/base-classes/base-subscriber-for-entity.js.map +1 -0
  302. package/lib/base-classes/base-subscriber.d.ts +4 -0
  303. package/lib/base-classes/base-subscriber.js +25 -0
  304. package/lib/base-classes/base-subscriber.js.map +1 -0
  305. package/lib/base-classes/base.d.ts +35 -0
  306. package/lib/base-classes/base.js +27 -0
  307. package/lib/base-classes/base.js.map +1 -0
  308. package/lib/build-info._auto-generated_.d.ts +1 -0
  309. package/lib/build-info._auto-generated_.js +5 -0
  310. package/lib/build-info._auto-generated_.js.map +1 -0
  311. package/lib/constants.d.ts +1 -0
  312. package/lib/constants.js +3 -0
  313. package/lib/constants.js.map +1 -0
  314. package/lib/create-context.d.ts +24 -0
  315. package/lib/create-context.js +183 -0
  316. package/lib/create-context.js.map +1 -0
  317. package/lib/decorators/classes/controller-decorator.d.ts +12 -0
  318. package/lib/decorators/classes/controller-decorator.js +24 -0
  319. package/lib/decorators/classes/controller-decorator.js.map +1 -0
  320. package/lib/decorators/classes/entity-decorator.d.ts +16 -0
  321. package/lib/decorators/classes/entity-decorator.js +39 -0
  322. package/lib/decorators/classes/entity-decorator.js.map +1 -0
  323. package/lib/decorators/classes/provider-decorator.d.ts +4 -0
  324. package/lib/decorators/classes/provider-decorator.js +24 -0
  325. package/lib/decorators/classes/provider-decorator.js.map +1 -0
  326. package/lib/decorators/classes/repository-decorator.d.ts +4 -0
  327. package/lib/decorators/classes/repository-decorator.js +24 -0
  328. package/lib/decorators/classes/repository-decorator.js.map +1 -0
  329. package/lib/decorators/classes/subscriber-decorator.d.ts +5 -0
  330. package/lib/decorators/classes/subscriber-decorator.js +75 -0
  331. package/lib/decorators/classes/subscriber-decorator.js.map +1 -0
  332. package/lib/decorators/http/http-decorators.d.ts +17 -0
  333. package/lib/decorators/http/http-decorators.js +23 -0
  334. package/lib/decorators/http/http-decorators.js.map +1 -0
  335. package/lib/decorators/http/http-methods-decorators.d.ts +14 -0
  336. package/lib/decorators/http/http-methods-decorators.js +91 -0
  337. package/lib/decorators/http/http-methods-decorators.js.map +1 -0
  338. package/lib/decorators/http/http-params-decorators.d.ts +5 -0
  339. package/lib/decorators/http/http-params-decorators.js +55 -0
  340. package/lib/decorators/http/http-params-decorators.js.map +1 -0
  341. package/lib/dependency-injection/di-container.d.ts +5 -0
  342. package/lib/dependency-injection/di-container.js +40 -0
  343. package/lib/dependency-injection/di-container.js.map +1 -0
  344. package/lib/endpoint-context.d.ts +117 -0
  345. package/lib/endpoint-context.js +2128 -0
  346. package/lib/endpoint-context.js.map +1 -0
  347. package/lib/entity-process.d.ts +39 -0
  348. package/lib/entity-process.js +261 -0
  349. package/lib/entity-process.js.map +1 -0
  350. package/lib/env.d.ts +2 -0
  351. package/lib/env.js +7 -0
  352. package/lib/env.js.map +1 -0
  353. package/lib/formly/formly-group-wrapper-component.d.ts +5 -0
  354. package/lib/formly/formly-group-wrapper-component.js +28 -0
  355. package/lib/formly/formly-group-wrapper-component.js.map +1 -0
  356. package/lib/formly/formly-repeat-component.d.ts +5 -0
  357. package/lib/formly/formly-repeat-component.js +47 -0
  358. package/lib/formly/formly-repeat-component.js.map +1 -0
  359. package/lib/formly/formly.models.d.ts +1 -0
  360. package/lib/formly/formly.models.js +3 -0
  361. package/lib/formly/formly.models.js.map +1 -0
  362. package/lib/formly/fromly.d.ts +16 -0
  363. package/lib/formly/fromly.js +213 -0
  364. package/lib/formly/fromly.js.map +1 -0
  365. package/lib/formly/type-from-entity.d.ts +20 -0
  366. package/lib/formly/type-from-entity.js +65 -0
  367. package/lib/formly/type-from-entity.js.map +1 -0
  368. package/lib/get-response-value.d.ts +6 -0
  369. package/lib/get-response-value.js +65 -0
  370. package/lib/get-response-value.js.map +1 -0
  371. package/lib/helpers/class-helpers.d.ts +18 -0
  372. package/lib/helpers/class-helpers.js +227 -0
  373. package/lib/helpers/class-helpers.js.map +1 -0
  374. package/lib/helpers/taon-helpers.d.ts +16 -0
  375. package/lib/helpers/taon-helpers.js +144 -0
  376. package/lib/helpers/taon-helpers.js.map +1 -0
  377. package/lib/index.d.ts +112 -0
  378. package/lib/index.js +113 -0
  379. package/lib/index.js.map +1 -0
  380. package/lib/inject.d.ts +8 -0
  381. package/lib/inject.js +84 -0
  382. package/lib/inject.js.map +1 -0
  383. package/lib/models.d.ts +180 -0
  384. package/lib/models.js +107 -0
  385. package/lib/models.js.map +1 -0
  386. package/lib/orm.d.ts +51 -0
  387. package/lib/orm.js +79 -0
  388. package/lib/orm.js.map +1 -0
  389. package/lib/realtime/realtime-client.d.ts +31 -0
  390. package/lib/realtime/realtime-client.js +158 -0
  391. package/lib/realtime/realtime-client.js.map +1 -0
  392. package/lib/realtime/realtime-core.d.ts +40 -0
  393. package/lib/realtime/realtime-core.js +72 -0
  394. package/lib/realtime/realtime-core.js.map +1 -0
  395. package/lib/realtime/realtime-server.d.ts +13 -0
  396. package/lib/realtime/realtime-server.js +193 -0
  397. package/lib/realtime/realtime-server.js.map +1 -0
  398. package/lib/realtime/realtime-strategy/index.d.ts +4 -0
  399. package/lib/realtime/realtime-strategy/index.js +8 -0
  400. package/lib/realtime/realtime-strategy/index.js.map +1 -0
  401. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.d.ts +0 -0
  402. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js +5 -0
  403. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js.map +1 -0
  404. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.d.ts +22 -0
  405. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js +139 -0
  406. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js.map +1 -0
  407. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.d.ts +16 -0
  408. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js +68 -0
  409. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js.map +1 -0
  410. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.d.ts +10 -0
  411. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js +56 -0
  412. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js.map +1 -0
  413. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.d.ts +10 -0
  414. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js +50 -0
  415. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js.map +1 -0
  416. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.d.ts +13 -0
  417. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js +3 -0
  418. package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js.map +1 -0
  419. package/lib/realtime/realtime-strategy/realtime-strategy-ipc.d.ts +22 -0
  420. package/lib/realtime/realtime-strategy/realtime-strategy-ipc.js +68 -0
  421. package/lib/realtime/realtime-strategy/realtime-strategy-ipc.js.map +1 -0
  422. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.d.ts +2 -0
  423. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js +6 -0
  424. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js.map +1 -0
  425. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.d.ts +16 -0
  426. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js +54 -0
  427. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js.map +1 -0
  428. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.d.ts +17 -0
  429. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js +52 -0
  430. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js.map +1 -0
  431. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.d.ts +11 -0
  432. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js +39 -0
  433. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js.map +1 -0
  434. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.d.ts +13 -0
  435. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js +46 -0
  436. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js.map +1 -0
  437. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.d.ts +11 -0
  438. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js +3 -0
  439. package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js.map +1 -0
  440. package/lib/realtime/realtime-strategy/realtime-strategy-mock.d.ts +14 -0
  441. package/lib/realtime/realtime-strategy/realtime-strategy-mock.js +42 -0
  442. package/lib/realtime/realtime-strategy/realtime-strategy-mock.js.map +1 -0
  443. package/lib/realtime/realtime-strategy/realtime-strategy-socket-io.d.ts +17 -0
  444. package/lib/realtime/realtime-strategy/realtime-strategy-socket-io.js +48 -0
  445. package/lib/realtime/realtime-strategy/realtime-strategy-socket-io.js.map +1 -0
  446. package/lib/realtime/realtime-strategy/realtime-strategy.d.ts +12 -0
  447. package/lib/realtime/realtime-strategy/realtime-strategy.js +14 -0
  448. package/lib/realtime/realtime-strategy/realtime-strategy.js.map +1 -0
  449. package/lib/realtime/realtime-subs-manager.d.ts +14 -0
  450. package/lib/realtime/realtime-subs-manager.js +102 -0
  451. package/lib/realtime/realtime-subs-manager.js.map +1 -0
  452. package/lib/realtime/realtime.models.d.ts +13 -0
  453. package/lib/realtime/realtime.models.js +3 -0
  454. package/lib/realtime/realtime.models.js.map +1 -0
  455. package/lib/storage.d.ts +1 -0
  456. package/lib/storage.js +6 -0
  457. package/lib/storage.js.map +1 -0
  458. package/lib/symbols.d.ts +72 -0
  459. package/lib/symbols.js +91 -0
  460. package/lib/symbols.js.map +1 -0
  461. package/lib/ui/directives/firedev-inject-html.directive.d.ts +6 -0
  462. package/lib/ui/directives/firedev-long-press.directive.d.ts +22 -0
  463. package/lib/ui/directives/index.d.ts +4 -0
  464. package/lib/ui/directives/index.js +5 -0
  465. package/lib/ui/directives/index.js.map +1 -0
  466. package/lib/ui/directives/safe.pipe.d.ts +7 -0
  467. package/lib/ui/directives/view-mode.d.ts +5 -0
  468. package/lib/ui/directives/view-mode.js +10 -0
  469. package/lib/ui/directives/view-mode.js.map +1 -0
  470. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.d.ts +2 -0
  471. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js +5 -0
  472. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js.map +1 -0
  473. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.component.d.ts +31 -0
  474. package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.module.d.ts +2 -0
  475. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.d.ts +1 -0
  476. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js +5 -0
  477. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js.map +1 -0
  478. package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/taon-db-admin.component.d.ts +9 -0
  479. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.d.ts +2 -0
  480. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js +5 -0
  481. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js.map +1 -0
  482. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.component.d.ts +14 -0
  483. package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.module.d.ts +2 -0
  484. package/lib/ui/taon-admin-mode-configuration/index.d.ts +4 -0
  485. package/lib/ui/taon-admin-mode-configuration/index.js +5 -0
  486. package/lib/ui/taon-admin-mode-configuration/index.js.map +1 -0
  487. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.d.ts +5 -0
  488. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js +3 -0
  489. package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js.map +1 -0
  490. package/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.d.ts +14 -0
  491. package/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.d.ts +47 -0
  492. package/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.module.d.ts +2 -0
  493. package/lib/ui/taon-admin-mode-configuration/taon-admin.service.d.ts +21 -0
  494. package/lib/ui/taon-github-fork-me-corner/index.d.ts +2 -0
  495. package/lib/ui/taon-github-fork-me-corner/index.js +5 -0
  496. package/lib/ui/taon-github-fork-me-corner/index.js.map +1 -0
  497. package/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.d.ts +3 -0
  498. package/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.d.ts +2 -0
  499. package/lib/ui/taon-github-fork-me-ribbon/index.d.ts +2 -0
  500. package/lib/ui/taon-github-fork-me-ribbon/index.js +5 -0
  501. package/lib/ui/taon-github-fork-me-ribbon/index.js.map +1 -0
  502. package/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.component.d.ts +3 -0
  503. package/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.module.d.ts +2 -0
  504. package/lib/ui/taon-notifications/index.d.ts +4 -0
  505. package/lib/ui/taon-notifications/index.js +11 -0
  506. package/lib/ui/taon-notifications/index.js.map +1 -0
  507. package/lib/ui/taon-notifications/taon-notifications.component.d.ts +9 -0
  508. package/lib/ui/taon-notifications/taon-notifications.models.d.ts +6 -0
  509. package/lib/ui/taon-notifications/taon-notifications.models.js +5 -0
  510. package/lib/ui/taon-notifications/taon-notifications.models.js.map +1 -0
  511. package/lib/ui/taon-notifications/taon-notifications.module.d.ts +2 -0
  512. package/lib/ui/taon-notifications/taon-notifications.service.d.ts +11 -0
  513. package/lib/ui/taon-progress-bar/index.d.ts +2 -0
  514. package/lib/ui/taon-progress-bar/index.js +5 -0
  515. package/lib/ui/taon-progress-bar/index.js.map +1 -0
  516. package/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +14 -0
  517. package/lib/ui/taon-progress-bar/taon-progress-bar.module.d.ts +2 -0
  518. package/lib/ui/taon-session-passcode/index.d.ts +1 -0
  519. package/lib/ui/taon-session-passcode/index.js +5 -0
  520. package/lib/ui/taon-session-passcode/index.js.map +1 -0
  521. package/lib/ui/taon-session-passcode/taon-session-passcode.component.d.ts +35 -0
  522. package/lib/ui/taon.models.d.ts +11 -0
  523. package/lib/ui/taon.models.js +3 -0
  524. package/lib/ui/taon.models.js.map +1 -0
  525. package/lib/ui/toan-full-material.module.d.ts +2 -0
  526. package/lib/validators.d.ts +7 -0
  527. package/lib/validators.js +53 -0
  528. package/lib/validators.js.map +1 -0
  529. package/old-app .d.ts +0 -0
  530. package/old-app .js +115 -0
  531. package/old-app .js.map +1 -0
  532. package/package.json +74 -11
  533. package/playground.d.ts +0 -0
  534. package/playground.js +172 -0
  535. package/playground.js.map +1 -0
  536. package/src.d.ts +6 -0
  537. package/taon.jsonc +48 -0
  538. package/tmp-environment.json +393 -0
  539. package/websql/README.md +24 -0
  540. package/websql/esm2022/lib/base-classes/base-abstract-entity.mjs +25 -0
  541. package/websql/esm2022/lib/base-classes/base-class.mjs +17 -0
  542. package/websql/esm2022/lib/base-classes/base-context.mjs +14 -0
  543. package/websql/esm2022/lib/base-classes/base-controller.mjs +18 -0
  544. package/websql/esm2022/lib/base-classes/base-crud-controller.mjs +238 -0
  545. package/websql/esm2022/lib/base-classes/base-entity.mjs +16 -0
  546. package/websql/esm2022/lib/base-classes/base-injector.mjs +160 -0
  547. package/websql/esm2022/lib/base-classes/base-provider.mjs +6 -0
  548. package/websql/esm2022/lib/base-classes/base-repository.mjs +431 -0
  549. package/websql/esm2022/lib/base-classes/base-subscriber-for-entity.mjs +137 -0
  550. package/websql/esm2022/lib/base-classes/base-subscriber.mjs +27 -0
  551. package/websql/esm2022/lib/base-classes/base.mjs +26 -0
  552. package/websql/esm2022/lib/constants.mjs +4 -0
  553. package/websql/esm2022/lib/create-context.mjs +86 -0
  554. package/websql/esm2022/lib/decorators/classes/controller-decorator.mjs +15 -0
  555. package/websql/esm2022/lib/decorators/classes/entity-decorator.mjs +25 -0
  556. package/websql/esm2022/lib/decorators/classes/provider-decorator.mjs +15 -0
  557. package/websql/esm2022/lib/decorators/classes/repository-decorator.mjs +15 -0
  558. package/websql/esm2022/lib/decorators/classes/subscriber-decorator.mjs +41 -0
  559. package/websql/esm2022/lib/decorators/http/http-decorators.mjs +22 -0
  560. package/websql/esm2022/lib/decorators/http/http-methods-decorators.mjs +78 -0
  561. package/websql/esm2022/lib/decorators/http/http-params-decorators.mjs +47 -0
  562. package/websql/esm2022/lib/dependency-injection/di-container.mjs +32 -0
  563. package/websql/esm2022/lib/endpoint-context.mjs +1506 -0
  564. package/websql/esm2022/lib/entity-process.mjs +207 -0
  565. package/websql/esm2022/lib/env.mjs +6 -0
  566. package/websql/esm2022/lib/get-response-value.mjs +45 -0
  567. package/websql/esm2022/lib/helpers/class-helpers.mjs +183 -0
  568. package/websql/esm2022/lib/helpers/taon-helpers.mjs +120 -0
  569. package/websql/esm2022/lib/index.mjs +81 -0
  570. package/websql/esm2022/lib/inject.mjs +70 -0
  571. package/websql/esm2022/lib/models.mjs +70 -0
  572. package/websql/esm2022/lib/orm.mjs +60 -0
  573. package/websql/esm2022/lib/realtime/realtime-client.mjs +129 -0
  574. package/websql/esm2022/lib/realtime/realtime-core.mjs +54 -0
  575. package/websql/esm2022/lib/realtime/realtime-server.mjs +158 -0
  576. package/websql/esm2022/lib/realtime/realtime-strategy/index.mjs +7 -0
  577. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.mjs +98 -0
  578. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.mjs +45 -0
  579. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.mjs +40 -0
  580. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.mjs +25 -0
  581. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.mjs +4 -0
  582. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc.mjs +48 -0
  583. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.mjs +5 -0
  584. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.mjs +50 -0
  585. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.mjs +48 -0
  586. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.mjs +35 -0
  587. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.mjs +43 -0
  588. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.mjs +4 -0
  589. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock.mjs +28 -0
  590. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-socket-io.mjs +33 -0
  591. package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy.mjs +10 -0
  592. package/websql/esm2022/lib/realtime/realtime-subs-manager.mjs +79 -0
  593. package/websql/esm2022/lib/realtime/realtime.models.mjs +4 -0
  594. package/websql/esm2022/lib/storage.mjs +5 -0
  595. package/websql/esm2022/lib/symbols.mjs +89 -0
  596. package/websql/esm2022/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.mjs +4 -0
  597. package/websql/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.mjs +32 -0
  598. package/websql/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.mjs +167 -0
  599. package/websql/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin.service.mjs +64 -0
  600. package/websql/esm2022/lib/validators.mjs +76 -0
  601. package/websql/esm2022/public-api.mjs +2 -0
  602. package/websql/esm2022/taon.mjs +5 -0
  603. package/websql/fesm2022/taon.mjs +4595 -0
  604. package/websql/fesm2022/taon.mjs.map +1 -0
  605. package/websql/index.d.ts +6 -0
  606. package/websql/lib/base-classes/base-abstract-entity.d.ts +7 -0
  607. package/websql/lib/base-classes/base-class.d.ts +9 -0
  608. package/websql/lib/base-classes/base-context.d.ts +17 -0
  609. package/websql/lib/base-classes/base-controller.d.ts +8 -0
  610. package/websql/lib/base-classes/base-crud-controller.d.ts +28 -0
  611. package/websql/lib/base-classes/base-entity.d.ts +8 -0
  612. package/websql/lib/base-classes/base-injector.d.ts +60 -0
  613. package/websql/lib/base-classes/base-provider.d.ts +4 -0
  614. package/websql/lib/base-classes/base-repository.d.ts +255 -0
  615. package/websql/lib/base-classes/base-subscriber-for-entity.d.ts +82 -0
  616. package/websql/lib/base-classes/base-subscriber.d.ts +5 -0
  617. package/websql/lib/base-classes/base.d.ts +36 -0
  618. package/websql/lib/constants.d.ts +2 -0
  619. package/websql/lib/create-context.d.ts +25 -0
  620. package/websql/lib/decorators/classes/controller-decorator.d.ts +13 -0
  621. package/websql/lib/decorators/classes/entity-decorator.d.ts +17 -0
  622. package/websql/lib/decorators/classes/provider-decorator.d.ts +5 -0
  623. package/websql/lib/decorators/classes/repository-decorator.d.ts +5 -0
  624. package/websql/lib/decorators/classes/subscriber-decorator.d.ts +6 -0
  625. package/websql/lib/decorators/http/http-decorators.d.ts +18 -0
  626. package/websql/lib/decorators/http/http-methods-decorators.d.ts +15 -0
  627. package/websql/lib/decorators/http/http-params-decorators.d.ts +6 -0
  628. package/websql/lib/dependency-injection/di-container.d.ts +6 -0
  629. package/websql/lib/endpoint-context.d.ts +117 -0
  630. package/websql/lib/entity-process.d.ts +40 -0
  631. package/websql/lib/env.d.ts +3 -0
  632. package/websql/lib/get-response-value.d.ts +7 -0
  633. package/websql/lib/helpers/class-helpers.d.ts +19 -0
  634. package/websql/lib/helpers/taon-helpers.d.ts +17 -0
  635. package/websql/lib/index.d.ts +113 -0
  636. package/websql/lib/inject.d.ts +9 -0
  637. package/websql/lib/models.d.ts +181 -0
  638. package/websql/lib/orm.d.ts +52 -0
  639. package/websql/lib/realtime/realtime-client.d.ts +32 -0
  640. package/websql/lib/realtime/realtime-core.d.ts +41 -0
  641. package/websql/lib/realtime/realtime-server.d.ts +14 -0
  642. package/websql/lib/realtime/realtime-strategy/index.d.ts +5 -0
  643. package/websql/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.d.ts +22 -0
  644. package/websql/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.d.ts +17 -0
  645. package/websql/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.d.ts +11 -0
  646. package/websql/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.d.ts +11 -0
  647. package/websql/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.d.ts +14 -0
  648. package/websql/lib/realtime/realtime-strategy/realtime-strategy-ipc.d.ts +23 -0
  649. package/websql/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.d.ts +3 -0
  650. package/websql/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.d.ts +17 -0
  651. package/websql/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.d.ts +18 -0
  652. package/websql/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.d.ts +12 -0
  653. package/websql/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.d.ts +14 -0
  654. package/websql/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.d.ts +12 -0
  655. package/websql/lib/realtime/realtime-strategy/realtime-strategy-mock.d.ts +15 -0
  656. package/websql/lib/realtime/realtime-strategy/realtime-strategy-socket-io.d.ts +17 -0
  657. package/websql/lib/realtime/realtime-strategy/realtime-strategy.d.ts +13 -0
  658. package/websql/lib/realtime/realtime-subs-manager.d.ts +15 -0
  659. package/websql/lib/realtime/realtime.models.d.ts +14 -0
  660. package/websql/lib/storage.d.ts +2 -0
  661. package/websql/lib/symbols.d.ts +73 -0
  662. package/websql/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.d.ts +6 -0
  663. package/websql/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.d.ts +18 -0
  664. package/websql/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.d.ts +51 -0
  665. package/websql/lib/ui/taon-admin-mode-configuration/taon-admin.service.d.ts +25 -0
  666. package/websql/lib/validators.d.ts +8 -0
  667. package/websql/package.json +25 -0
  668. package/websql/public-api.d.ts +2 -0
@@ -0,0 +1,79 @@
1
+ import 'reflect-metadata';
2
+ import * as http from './decorators/http/http-decorators';
3
+ import * as base from './base-classes/base';
4
+ import * as controllerDecorator from './decorators/classes/controller-decorator';
5
+ import * as entityDecorator from './decorators/classes/entity-decorator';
6
+ import * as providerDecorator from './decorators/classes/provider-decorator';
7
+ import * as repositoryDecorator from './decorators/classes/repository-decorator';
8
+ import * as subscriberDecorator from './decorators/classes/subscriber-decorator';
9
+ import * as createContextFn from './create-context';
10
+ import * as coreHelpers from 'tnp-core/browser';
11
+ import * as injectFn from './inject';
12
+ import * as endpointContext from './endpoint-context';
13
+ import * as allSymbols from './symbols';
14
+ import * as getResponse from './get-response-value';
15
+ export { BaseRepository } from './base-classes/base-repository';
16
+ export { BaseController } from './base-classes/base-controller';
17
+ export { BaseProvider } from './base-classes/base-provider';
18
+ export { BaseSubscriber } from './base-classes/base-subscriber';
19
+ export { BaseEntity } from './base-classes/base-entity';
20
+ export { BaseContext } from './base-classes/base-context';
21
+ export { createContext } from './create-context';
22
+ export { inject } from './inject';
23
+ export { Models } from './models';
24
+ export * from './constants';
25
+ export { ClassHelpers } from './helpers/class-helpers';
26
+ export var Taon;
27
+ (function (Taon) {
28
+ Taon.Http = http.Http;
29
+ Taon.Base = base.Base;
30
+ Taon.getResponseValue = getResponse.getResponseValue;
31
+ Taon.Controller = controllerDecorator.TaonController;
32
+ Taon.Entity = entityDecorator.TaonEntity;
33
+ Taon.Provider = providerDecorator.TaonProvider;
34
+ Taon.Repository = repositoryDecorator.TaonRepository;
35
+ Taon.Subscriber = subscriberDecorator.TaonSubscriber;
36
+ /**
37
+ * @deprecated
38
+ */
39
+ Taon.isBrowser = coreHelpers.Helpers.isBrowser;
40
+ /**
41
+ * @deprecated
42
+ */
43
+ Taon.isNode = coreHelpers.Helpers.isNode;
44
+ /**
45
+ * @deprecated
46
+ */
47
+ Taon.isWebSQL = coreHelpers.Helpers.isWebSQL;
48
+ /**
49
+ * @deprecated
50
+ */
51
+ Taon.isElectron = coreHelpers.Helpers.isElectron;
52
+ Taon.createContext = createContextFn.createContext;
53
+ Taon.inject = injectFn.inject;
54
+ Taon.initNgZone = (ngZone) => {
55
+ endpointContext.EndpointContext.initNgZone(ngZone);
56
+ };
57
+ Taon.symbols = allSymbols.Symbols;
58
+ /**
59
+ * @deprecated
60
+ * use createContext instead
61
+ */
62
+ Taon.init = async (options) => {
63
+ const BaseContext = (await import('./base-classes/base-context'))
64
+ .BaseContext;
65
+ const context = Taon.createContext(() => ({
66
+ contextName: 'default',
67
+ host: options.host,
68
+ contexts: { BaseContext },
69
+ database: true,
70
+ entities: Array.from(options.entities),
71
+ controllers: Array.from(options.controllers),
72
+ }));
73
+ await context.initialize();
74
+ return context;
75
+ };
76
+ })(Taon || (Taon = {}));
77
+ ;
78
+ ({}); // @--end-of-file-for-module=taon lib/index.ts
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90YW9uL3Byb2plY3RzL3Rhb24vc3JjL2xpYi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sS0FBSyxJQUFJLE1BQU0sbUNBQW1DLENBQUM7QUFDMUQsT0FBTyxLQUFLLElBQUksTUFBTSxxQkFBcUIsQ0FBQztBQUM1QyxPQUFPLEtBQUssbUJBQW1CLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxLQUFLLGVBQWUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEtBQUssaUJBQWlCLE1BQU0seUNBQXlDLENBQUM7QUFDN0UsT0FBTyxLQUFLLG1CQUFtQixNQUFNLDJDQUEyQyxDQUFDO0FBQ2pGLE9BQU8sS0FBSyxtQkFBbUIsTUFBTSwyQ0FBMkMsQ0FBQztBQUNqRixPQUFPLEtBQUssZUFBZSxNQUFNLGtCQUFrQixDQUFDO0FBR3BELE9BQU8sS0FBSyxXQUFXLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxLQUFLLFFBQVEsTUFBTSxVQUFVLENBQUM7QUFDckMsT0FBTyxLQUFLLGVBQWUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEtBQUssVUFBVSxNQUFNLFdBQVcsQ0FBQztBQUN4QyxPQUFPLEtBQUssV0FBVyxNQUFNLHNCQUFzQixDQUFDO0FBTXBELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsY0FBYyxhQUFhLENBQUM7QUFDNUIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBR3ZELE1BQU0sS0FBVyxJQUFJLENBc0VwQjtBQXRFRCxXQUFpQixJQUFJO0lBRUwsU0FBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDakIsU0FBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7SUFHbEIscUJBQWdCLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixDQUFDO0lBRy9DLGVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxjQUFjLENBQUM7SUFDaEQsV0FBTSxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQUM7SUFDcEMsYUFBUSxHQUFHLGlCQUFpQixDQUFDLFlBQVksQ0FBQztJQUMxQyxlQUFVLEdBQUcsbUJBQW1CLENBQUMsY0FBYyxDQUFDO0lBQ2hELGVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxjQUFjLENBQUM7SUFHOUQ7O09BRUc7SUFDVSxjQUFTLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDdkQ7O09BRUc7SUFDVSxXQUFNLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7SUFDakQ7O09BRUc7SUFDVSxhQUFRLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDckQ7O09BRUc7SUFDVSxlQUFVLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7SUFFNUMsa0JBQWEsR0FBRyxlQUFlLENBQUMsYUFBYSxDQUFDO0lBRTlDLFdBQU0sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBS3pCLGVBQVUsR0FBRyxDQUFDLE1BQWMsRUFBRSxFQUFFO1FBQzNDLGVBQWUsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JELENBQUMsQ0FBQztJQUdXLFlBQU8sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDO0lBRTFDOzs7T0FHRztJQUNVLFNBQUksR0FBRyxLQUFLLEVBQUUsT0FJMUIsRUFBRSxFQUFFO1FBQ0gsTUFBTSxXQUFXLEdBQUcsQ0FBQyxNQUFNLE1BQU0sQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO2FBQzlELFdBQVcsQ0FBQztRQUNmLE1BQU0sT0FBTyxHQUFHLEtBQUEsYUFBYSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDbkMsV0FBVyxFQUFFLFNBQVM7WUFDdEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFFBQVEsRUFBRSxFQUFFLFdBQVcsRUFBRTtZQUN6QixRQUFRLEVBQUUsSUFBSTtZQUNkLFFBQVEsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQVE7WUFDN0MsV0FBVyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBUTtTQUNwRCxDQUFDLENBQUMsQ0FBQztRQUVKLE1BQU0sT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQzNCLE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUMsQ0FBQztBQUNKLENBQUMsRUF0RWdCLElBQUksS0FBSixJQUFJLFFBc0VwQjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsOENBQThDIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCAncmVmbGVjdC1tZXRhZGF0YSc7XG5pbXBvcnQgKiBhcyBodHRwIGZyb20gJy4vZGVjb3JhdG9ycy9odHRwL2h0dHAtZGVjb3JhdG9ycyc7XG5pbXBvcnQgKiBhcyBiYXNlIGZyb20gJy4vYmFzZS1jbGFzc2VzL2Jhc2UnO1xuaW1wb3J0ICogYXMgY29udHJvbGxlckRlY29yYXRvciBmcm9tICcuL2RlY29yYXRvcnMvY2xhc3Nlcy9jb250cm9sbGVyLWRlY29yYXRvcic7XG5pbXBvcnQgKiBhcyBlbnRpdHlEZWNvcmF0b3IgZnJvbSAnLi9kZWNvcmF0b3JzL2NsYXNzZXMvZW50aXR5LWRlY29yYXRvcic7XG5pbXBvcnQgKiBhcyBwcm92aWRlckRlY29yYXRvciBmcm9tICcuL2RlY29yYXRvcnMvY2xhc3Nlcy9wcm92aWRlci1kZWNvcmF0b3InO1xuaW1wb3J0ICogYXMgcmVwb3NpdG9yeURlY29yYXRvciBmcm9tICcuL2RlY29yYXRvcnMvY2xhc3Nlcy9yZXBvc2l0b3J5LWRlY29yYXRvcic7XG5pbXBvcnQgKiBhcyBzdWJzY3JpYmVyRGVjb3JhdG9yIGZyb20gJy4vZGVjb3JhdG9ycy9jbGFzc2VzL3N1YnNjcmliZXItZGVjb3JhdG9yJztcbmltcG9ydCAqIGFzIGNyZWF0ZUNvbnRleHRGbiBmcm9tICcuL2NyZWF0ZS1jb250ZXh0JztcbmltcG9ydCAqIGFzIG9ybSBmcm9tICcuL29ybSc7XG5pbXBvcnQgKiBhcyBtb2RlbHMgZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0ICogYXMgY29yZUhlbHBlcnMgZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5pbXBvcnQgKiBhcyBpbmplY3RGbiBmcm9tICcuL2luamVjdCc7XG5pbXBvcnQgKiBhcyBlbmRwb2ludENvbnRleHQgZnJvbSAnLi9lbmRwb2ludC1jb250ZXh0JztcbmltcG9ydCAqIGFzIGFsbFN5bWJvbHMgZnJvbSAnLi9zeW1ib2xzJztcbmltcG9ydCAqIGFzIGdldFJlc3BvbnNlIGZyb20gJy4vZ2V0LXJlc3BvbnNlLXZhbHVlJztcblxuaW1wb3J0IHsgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuXG5leHBvcnQgeyBCYXNlUmVwb3NpdG9yeSB9IGZyb20gJy4vYmFzZS1jbGFzc2VzL2Jhc2UtcmVwb3NpdG9yeSc7XG5leHBvcnQgeyBCYXNlQ29udHJvbGxlciB9IGZyb20gJy4vYmFzZS1jbGFzc2VzL2Jhc2UtY29udHJvbGxlcic7XG5leHBvcnQgeyBCYXNlUHJvdmlkZXIgfSBmcm9tICcuL2Jhc2UtY2xhc3Nlcy9iYXNlLXByb3ZpZGVyJztcbmV4cG9ydCB7IEJhc2VTdWJzY3JpYmVyIH0gZnJvbSAnLi9iYXNlLWNsYXNzZXMvYmFzZS1zdWJzY3JpYmVyJztcbmV4cG9ydCB7IEJhc2VFbnRpdHkgfSBmcm9tICcuL2Jhc2UtY2xhc3Nlcy9iYXNlLWVudGl0eSc7XG5leHBvcnQgeyBCYXNlQ29udGV4dCB9IGZyb20gJy4vYmFzZS1jbGFzc2VzL2Jhc2UtY29udGV4dCc7XG5leHBvcnQgeyBjcmVhdGVDb250ZXh0IH0gZnJvbSAnLi9jcmVhdGUtY29udGV4dCc7XG5leHBvcnQgeyBpbmplY3QgfSBmcm9tICcuL2luamVjdCc7XG5leHBvcnQgeyBNb2RlbHMgfSBmcm9tICcuL21vZGVscyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cyc7XG5leHBvcnQgeyBDbGFzc0hlbHBlcnMgfSBmcm9tICcuL2hlbHBlcnMvY2xhc3MtaGVscGVycyc7XG5cblxuZXhwb3J0IG5hbWVzcGFjZSBUYW9uIHtcbiAgZXhwb3J0IGltcG9ydCBSZXNwb25zZSA9IG1vZGVscy5Nb2RlbHMuSHR0cC5SZXNwb25zZTtcbiAgZXhwb3J0IGltcG9ydCBIdHRwID0gaHR0cC5IdHRwO1xuICBleHBvcnQgaW1wb3J0IEJhc2UgPSBiYXNlLkJhc2U7XG4gIGV4cG9ydCBpbXBvcnQgT3JtID0gb3JtLk9ybTtcblxuICBleHBvcnQgY29uc3QgZ2V0UmVzcG9uc2VWYWx1ZSA9IGdldFJlc3BvbnNlLmdldFJlc3BvbnNlVmFsdWU7XG5cblxuICBleHBvcnQgaW1wb3J0IENvbnRyb2xsZXIgPSBjb250cm9sbGVyRGVjb3JhdG9yLlRhb25Db250cm9sbGVyO1xuICBleHBvcnQgaW1wb3J0IEVudGl0eSA9IGVudGl0eURlY29yYXRvci5UYW9uRW50aXR5O1xuICBleHBvcnQgaW1wb3J0IFByb3ZpZGVyID0gcHJvdmlkZXJEZWNvcmF0b3IuVGFvblByb3ZpZGVyO1xuICBleHBvcnQgaW1wb3J0IFJlcG9zaXRvcnkgPSByZXBvc2l0b3J5RGVjb3JhdG9yLlRhb25SZXBvc2l0b3J5O1xuICBleHBvcnQgaW1wb3J0IFN1YnNjcmliZXIgPSBzdWJzY3JpYmVyRGVjb3JhdG9yLlRhb25TdWJzY3JpYmVyO1xuXG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkXG4gICAqL1xuICBleHBvcnQgY29uc3QgaXNCcm93c2VyID0gY29yZUhlbHBlcnMuSGVscGVycy5pc0Jyb3dzZXI7XG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKi9cbiAgZXhwb3J0IGNvbnN0IGlzTm9kZSA9IGNvcmVIZWxwZXJzLkhlbHBlcnMuaXNOb2RlO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWRcbiAgICovXG4gIGV4cG9ydCBjb25zdCBpc1dlYlNRTCA9IGNvcmVIZWxwZXJzLkhlbHBlcnMuaXNXZWJTUUw7XG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKi9cbiAgZXhwb3J0IGNvbnN0IGlzRWxlY3Ryb24gPSBjb3JlSGVscGVycy5IZWxwZXJzLmlzRWxlY3Ryb247XG5cbiAgZXhwb3J0IGNvbnN0IGNyZWF0ZUNvbnRleHQgPSBjcmVhdGVDb250ZXh0Rm4uY3JlYXRlQ29udGV4dDtcblxuICBleHBvcnQgY29uc3QgaW5qZWN0ID0gaW5qZWN0Rm4uaW5qZWN0O1xuXG5cblxuXG4gIGV4cG9ydCBjb25zdCBpbml0Tmdab25lID0gKG5nWm9uZTogTmdab25lKSA9PiB7XG4gICAgZW5kcG9pbnRDb250ZXh0LkVuZHBvaW50Q29udGV4dC5pbml0Tmdab25lKG5nWm9uZSk7XG4gIH07XG5cblxuICBleHBvcnQgY29uc3Qgc3ltYm9scyA9IGFsbFN5bWJvbHMuU3ltYm9scztcblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWRcbiAgICogdXNlIGNyZWF0ZUNvbnRleHQgaW5zdGVhZFxuICAgKi9cbiAgZXhwb3J0IGNvbnN0IGluaXQgPSBhc3luYyAob3B0aW9uczoge1xuICAgIGhvc3Q6IHN0cmluZztcbiAgICBlbnRpdGllczogRnVuY3Rpb25bXTtcbiAgICBjb250cm9sbGVyczogRnVuY3Rpb25bXTtcbiAgfSkgPT4ge1xuICAgIGNvbnN0IEJhc2VDb250ZXh0ID0gKGF3YWl0IGltcG9ydCgnLi9iYXNlLWNsYXNzZXMvYmFzZS1jb250ZXh0JykpXG4gICAgICAuQmFzZUNvbnRleHQ7XG4gICAgY29uc3QgY29udGV4dCA9IGNyZWF0ZUNvbnRleHQoKCkgPT4gKHtcbiAgICAgIGNvbnRleHROYW1lOiAnZGVmYXVsdCcsXG4gICAgICBob3N0OiBvcHRpb25zLmhvc3QsXG4gICAgICBjb250ZXh0czogeyBCYXNlQ29udGV4dCB9LFxuICAgICAgZGF0YWJhc2U6IHRydWUsXG4gICAgICBlbnRpdGllczogQXJyYXkuZnJvbShvcHRpb25zLmVudGl0aWVzKSBhcyBhbnksXG4gICAgICBjb250cm9sbGVyczogQXJyYXkuZnJvbShvcHRpb25zLmNvbnRyb2xsZXJzKSBhcyBhbnksXG4gICAgfSkpO1xuXG4gICAgYXdhaXQgY29udGV4dC5pbml0aWFsaXplKCk7XG4gICAgcmV0dXJuIGNvbnRleHQ7XG4gIH07XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uIGxpYi9pbmRleC50cyJdfQ==
@@ -0,0 +1,70 @@
1
+ import { inject as angularInject } from '@angular/core';
2
+ import { Symbols } from './symbols';
3
+ import { Subject } from 'rxjs';
4
+ export const inject = (entity) => {
5
+ return new Proxy({}, {
6
+ get: (_, propName) => {
7
+ if (propName === 'hasOwnProperty') {
8
+ return () => false;
9
+ }
10
+ const ctor = entity();
11
+ const contextFromClass = ctor[Symbols.ctxInClassOrClassObj];
12
+ const resultContext = contextFromClass;
13
+ if (resultContext) {
14
+ let instance = resultContext.inject(ctor);
15
+ if (propName === 'getOriginalPrototype') {
16
+ return () => Object.getPrototypeOf(instance);
17
+ }
18
+ if (propName === 'getOriginalConstructor') {
19
+ return () => instance.constructor;
20
+ }
21
+ const methods = ctor[Symbols.classMethodsNames] || [];
22
+ const isMethods = methods.includes(propName);
23
+ const methodOrProperty = isMethods
24
+ ? instance[propName].bind(instance)
25
+ : instance[propName];
26
+ return methodOrProperty;
27
+ }
28
+ return angularInject(ctor)[propName];
29
+ },
30
+ });
31
+ };
32
+ export const injectController = inject;
33
+ export const injectSubscriberEvents = (subscriberClassResolveFn, eventName) => {
34
+ const eventsSrc = new Subject();
35
+ const obs = eventsSrc.asObservable();
36
+ let isFirstSubscription = true;
37
+ const proxiedObservable = new Proxy(obs, {
38
+ get(target, prop, receiver) {
39
+ if (prop === 'subscribe') {
40
+ return (...args) => {
41
+ if (isFirstSubscription) {
42
+ isFirstSubscription = false;
43
+ const subscriberClassFN = subscriberClassResolveFn();
44
+ const ctx = subscriberClassFN[Symbols.ctxInClassOrClassObj];
45
+ if (!ctx) {
46
+ throw new Error(`You are trying to inject class without context. Use context like this;
47
+
48
+ Taon.injectSubscriberEvents( ()=> ` +
49
+ `MyContext.getInstance(${subscriberClassFN?.name}), '${eventName}' )
50
+
51
+
52
+ `);
53
+ }
54
+ const subscriberInstance = ctx.getInstanceBy(subscriberClassFN);
55
+ console.log('First subscription, you can access arguments here:', {
56
+ subscriberClassFN,
57
+ eventName,
58
+ });
59
+ }
60
+ return target.subscribe(...args);
61
+ };
62
+ }
63
+ return Reflect.get(target, prop, receiver);
64
+ },
65
+ });
66
+ return proxiedObservable;
67
+ };
68
+ ;
69
+ ({}); // @--end-of-file-for-module=taon lib/inject.ts
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdGFvbi9wcm9qZWN0cy90YW9uL3NyYy9saWIvaW5qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxNQUFNLElBQUksYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHcEMsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUczQyxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsQ0FBSSxNQUF1QyxFQUFLLEVBQUU7SUFDdEUsT0FBTyxJQUFJLEtBQUssQ0FDZCxFQUFFLEVBQ0Y7UUFDRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUU7WUFDbkIsSUFBSSxRQUFRLEtBQUssZ0JBQWdCLEVBQUUsQ0FBQztnQkFDbEMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDckIsQ0FBQztZQUVELE1BQU0sSUFBSSxHQUFHLE1BQU0sRUFBRSxDQUFDO1lBQ3RCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUMzQixPQUFPLENBQUMsb0JBQW9CLENBQ1YsQ0FBQztZQUNyQixNQUFNLGFBQWEsR0FBRyxnQkFBZ0IsQ0FBQztZQUN2QyxJQUFJLGFBQWEsRUFBRSxDQUFDO2dCQUNsQixJQUFJLFFBQVEsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBaUIsQ0FBQztnQkFHMUQsSUFBSSxRQUFRLEtBQUssc0JBQXNCLEVBQUUsQ0FBQztvQkFDeEMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUMvQyxDQUFDO2dCQUNELElBQUksUUFBUSxLQUFLLHdCQUF3QixFQUFFLENBQUM7b0JBQzFDLE9BQU8sR0FBRyxFQUFFLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztnQkFDcEMsQ0FBQztnQkFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN0RCxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUU3QyxNQUFNLGdCQUFnQixHQUFHLFNBQVM7b0JBQ2hDLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztvQkFDbkMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFNdkIsT0FBTyxnQkFBZ0IsQ0FBQztZQUMxQixDQUFDO1lBR0QsT0FBTyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFFdkMsQ0FBQztLQUNGLENBQ0csQ0FBQztBQUNULENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQztBQU92QyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxDQUNwQyx3QkFBeUQsRUFDekQsU0FBa0IsRUFDYyxFQUFFO0lBQ2xDLE1BQU0sU0FBUyxHQUFHLElBQUksT0FBTyxFQUFzQixDQUFDO0lBQ3BELE1BQU0sR0FBRyxHQUFHLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUVyQyxJQUFJLG1CQUFtQixHQUFHLElBQUksQ0FBQztJQUUvQixNQUFNLGlCQUFpQixHQUFHLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRTtRQUN2QyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRO1lBQ3hCLElBQUksSUFBSSxLQUFLLFdBQVcsRUFBRSxDQUFDO2dCQUN6QixPQUFPLENBQUMsR0FBRyxJQUFXLEVBQUUsRUFBRTtvQkFDeEIsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO3dCQUN4QixtQkFBbUIsR0FBRyxLQUFLLENBQUM7d0JBQzVCLE1BQU0saUJBQWlCLEdBQ3JCLHdCQUF3QixFQUFTLENBQUM7d0JBQ3BDLE1BQU0sR0FBRyxHQUFHLGlCQUFpQixDQUMzQixPQUFPLENBQUMsb0JBQW9CLENBQ1YsQ0FBQzt3QkFDckIsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDOzRCQUNULE1BQU0sSUFBSSxLQUFLLENBQ2I7O2lEQUVpQztnQ0FDL0IseUJBQXlCLGlCQUFpQixFQUFFLElBQUksT0FBTyxTQUFnQjs7O2VBRzFFLENBQ0EsQ0FBQzt3QkFDSixDQUFDO3dCQUNELE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO3dCQUdoRSxPQUFPLENBQUMsR0FBRyxDQUFDLG9EQUFvRCxFQUFFOzRCQUNoRSxpQkFBaUI7NEJBQ2pCLFNBQVM7eUJBQ1YsQ0FBQyxDQUFDO29CQUVMLENBQUM7b0JBQ0QsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQ25DLENBQUMsQ0FBQztZQUNKLENBQUM7WUFDRCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM3QyxDQUFDO0tBQ0YsQ0FBQyxDQUFDO0lBRUgsT0FBTyxpQkFBbUQsQ0FBQztBQUM3RCxDQUFDLENBQUM7QUFFRCxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLCtDQUErQyIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmltcG9ydCB7IGluamVjdCBhcyBhbmd1bGFySW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFN5bWJvbHMgfSBmcm9tICcuL3N5bWJvbHMnO1xuaW1wb3J0IHR5cGUgeyBFbmRwb2ludENvbnRleHQgfSBmcm9tICcuL2VuZHBvaW50LWNvbnRleHQnO1xuaW1wb3J0IHR5cGUgeyBCYXNlSW5qZWN0b3IgfSBmcm9tICcuL2Jhc2UtY2xhc3Nlcy9iYXNlLWluamVjdG9yJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB0eXBlIHsgQmFzZUNsYXNzIH0gZnJvbSAnLi9iYXNlLWNsYXNzZXMvYmFzZS1jbGFzcyc7XG5cbmV4cG9ydCBjb25zdCBpbmplY3QgPSA8VD4oZW50aXR5OiAoKSA9PiBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBUKTogVCA9PiB7XG4gIHJldHVybiBuZXcgUHJveHkoXG4gICAge30sXG4gICAge1xuICAgICAgZ2V0OiAoXywgcHJvcE5hbWUpID0+IHtcbiAgICAgICAgaWYgKHByb3BOYW1lID09PSAnaGFzT3duUHJvcGVydHknKSB7XG4gICAgICAgICAgcmV0dXJuICgpID0+IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY3RvciA9IGVudGl0eSgpO1xuICAgICAgICBjb25zdCBjb250ZXh0RnJvbUNsYXNzID0gY3RvcltcbiAgICAgICAgICBTeW1ib2xzLmN0eEluQ2xhc3NPckNsYXNzT2JqXG4gICAgICAgIF0gYXMgRW5kcG9pbnRDb250ZXh0O1xuICAgICAgICBjb25zdCByZXN1bHRDb250ZXh0ID0gY29udGV4dEZyb21DbGFzcztcbiAgICAgICAgaWYgKHJlc3VsdENvbnRleHQpIHtcbiAgICAgICAgICBsZXQgaW5zdGFuY2UgPSByZXN1bHRDb250ZXh0LmluamVjdChjdG9yKSBhcyBCYXNlSW5qZWN0b3I7XG5cblxuICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gJ2dldE9yaWdpbmFsUHJvdG90eXBlJykge1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IE9iamVjdC5nZXRQcm90b3R5cGVPZihpbnN0YW5jZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gJ2dldE9yaWdpbmFsQ29uc3RydWN0b3InKSB7XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gaW5zdGFuY2UuY29uc3RydWN0b3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgbWV0aG9kcyA9IGN0b3JbU3ltYm9scy5jbGFzc01ldGhvZHNOYW1lc10gfHwgW107XG4gICAgICAgICAgY29uc3QgaXNNZXRob2RzID0gbWV0aG9kcy5pbmNsdWRlcyhwcm9wTmFtZSk7XG5cbiAgICAgICAgICBjb25zdCBtZXRob2RPclByb3BlcnR5ID0gaXNNZXRob2RzXG4gICAgICAgICAgICA/IGluc3RhbmNlW3Byb3BOYW1lXS5iaW5kKGluc3RhbmNlKVxuICAgICAgICAgICAgOiBpbnN0YW5jZVtwcm9wTmFtZV07XG5cblxuXG5cblxuICAgICAgICAgIHJldHVybiBtZXRob2RPclByb3BlcnR5O1xuICAgICAgICB9XG5cblxuICAgICAgICByZXR1cm4gYW5ndWxhckluamVjdChjdG9yKVtwcm9wTmFtZV07XG5cbiAgICAgIH0sXG4gICAgfSxcbiAgKSBhcyBUO1xufTtcblxuZXhwb3J0IGNvbnN0IGluamVjdENvbnRyb2xsZXIgPSBpbmplY3Q7XG5cbmV4cG9ydCB0eXBlIFN1YnNjYnRpb25FdmVudDxUPiA9IHtcbiAgbmFtZToga2V5b2YgVDtcbiAgZGF0YTogYW55O1xufTtcblxuZXhwb3J0IGNvbnN0IGluamVjdFN1YnNjcmliZXJFdmVudHMgPSA8VD4oXG4gIHN1YnNjcmliZXJDbGFzc1Jlc29sdmVGbjogKCkgPT4gbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gVCxcbiAgZXZlbnROYW1lOiBrZXlvZiBULFxuKTogT2JzZXJ2YWJsZTxTdWJzY2J0aW9uRXZlbnQ8VD4+ID0+IHtcbiAgY29uc3QgZXZlbnRzU3JjID0gbmV3IFN1YmplY3Q8U3Vic2NidGlvbkV2ZW50PFQ+PigpO1xuICBjb25zdCBvYnMgPSBldmVudHNTcmMuYXNPYnNlcnZhYmxlKCk7XG5cbiAgbGV0IGlzRmlyc3RTdWJzY3JpcHRpb24gPSB0cnVlO1xuXG4gIGNvbnN0IHByb3hpZWRPYnNlcnZhYmxlID0gbmV3IFByb3h5KG9icywge1xuICAgIGdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKSB7XG4gICAgICBpZiAocHJvcCA9PT0gJ3N1YnNjcmliZScpIHtcbiAgICAgICAgcmV0dXJuICguLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgICAgICAgIGlmIChpc0ZpcnN0U3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICBpc0ZpcnN0U3Vic2NyaXB0aW9uID0gZmFsc2U7XG4gICAgICAgICAgICBjb25zdCBzdWJzY3JpYmVyQ2xhc3NGTjogdHlwZW9mIEJhc2VDbGFzcyA9XG4gICAgICAgICAgICAgIHN1YnNjcmliZXJDbGFzc1Jlc29sdmVGbigpIGFzIGFueTtcbiAgICAgICAgICAgIGNvbnN0IGN0eCA9IHN1YnNjcmliZXJDbGFzc0ZOW1xuICAgICAgICAgICAgICBTeW1ib2xzLmN0eEluQ2xhc3NPckNsYXNzT2JqXG4gICAgICAgICAgICBdIGFzIEVuZHBvaW50Q29udGV4dDtcbiAgICAgICAgICAgIGlmICghY3R4KSB7XG4gICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICBgWW91IGFyZSB0cnlpbmcgdG8gaW5qZWN0IGNsYXNzIHdpdGhvdXQgY29udGV4dC4gVXNlIGNvbnRleHQgbGlrZSB0aGlzO1xuXG4gICAgICAgICAgICAgIFRhb24uaW5qZWN0U3Vic2NyaWJlckV2ZW50cyggKCk9PiBgICtcbiAgICAgICAgICAgICAgICAgIGBNeUNvbnRleHQuZ2V0SW5zdGFuY2UoJHtzdWJzY3JpYmVyQ2xhc3NGTj8ubmFtZX0pLCAnJHtldmVudE5hbWUgYXMgYW55fScgKVxuXG5cbiAgICAgICAgICAgICAgYCxcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHN1YnNjcmliZXJJbnN0YW5jZSA9IGN0eC5nZXRJbnN0YW5jZUJ5KHN1YnNjcmliZXJDbGFzc0ZOKTtcblxuXG4gICAgICAgICAgICBjb25zb2xlLmxvZygnRmlyc3Qgc3Vic2NyaXB0aW9uLCB5b3UgY2FuIGFjY2VzcyBhcmd1bWVudHMgaGVyZTonLCB7XG4gICAgICAgICAgICAgIHN1YnNjcmliZXJDbGFzc0ZOLFxuICAgICAgICAgICAgICBldmVudE5hbWUsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gdGFyZ2V0LnN1YnNjcmliZSguLi5hcmdzKTtcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBSZWZsZWN0LmdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKTtcbiAgICB9LFxuICB9KTtcblxuICByZXR1cm4gcHJveGllZE9ic2VydmFibGUgYXMgT2JzZXJ2YWJsZTxTdWJzY2J0aW9uRXZlbnQ8VD4+O1xufTtcblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL2luamVjdC50cyJdfQ==
@@ -0,0 +1,77 @@
1
+ /* */
2
+ /* */
3
+ import { Models as ModelsNg2Rest } from 'ng2-rest/browser';
4
+ import { ClassHelpers } from './helpers/class-helpers';
5
+ export var Models;
6
+ (function (Models) {
7
+ let ClassType;
8
+ (function (ClassType) {
9
+ ClassType["ENTITY"] = "ENTITY";
10
+ ClassType["CONTROLLER"] = "CONTROLLER";
11
+ ClassType["REPOSITORY"] = "REPOSITORY";
12
+ ClassType["PROVIDER"] = "PROVIDER";
13
+ ClassType["SUBSCRIBER"] = "SUBSCRIBER";
14
+ })(ClassType = Models.ClassType || (Models.ClassType = {}));
15
+ Models.ClassTypeKey = {
16
+ [ClassType.ENTITY]: 'entities',
17
+ [ClassType.CONTROLLER]: 'controllers',
18
+ [ClassType.REPOSITORY]: 'repositories',
19
+ [ClassType.PROVIDER]: 'providers',
20
+ [ClassType.SUBSCRIBER]: 'subscribers',
21
+ };
22
+ class DecoratorAbstractOpt {
23
+ }
24
+ Models.DecoratorAbstractOpt = DecoratorAbstractOpt;
25
+ class ParamConfig {
26
+ }
27
+ Models.ParamConfig = ParamConfig;
28
+ class MethodConfig {
29
+ constructor() {
30
+ /* */
31
+ /* */
32
+ this.parameters = {};
33
+ }
34
+ }
35
+ Models.MethodConfig = MethodConfig;
36
+ class ControllerConfig extends DecoratorAbstractOpt {
37
+ constructor() {
38
+ super(...arguments);
39
+ this.methods = {};
40
+ }
41
+ }
42
+ Models.ControllerConfig = ControllerConfig;
43
+ class RuntimeControllerConfig extends ControllerConfig {
44
+ }
45
+ Models.RuntimeControllerConfig = RuntimeControllerConfig;
46
+ let Http;
47
+ (function (Http) {
48
+ Http.Rest = ModelsNg2Rest;
49
+ class Errors {
50
+ constructor(message, code = 400) {
51
+ this.message = message;
52
+ this.code = code;
53
+ this.toString = () => {
54
+ return this.message;
55
+ };
56
+ }
57
+ static create(message, code = 400) {
58
+ return new Errors(message, code);
59
+ }
60
+ static entityNotFound(entity) {
61
+ return Errors.create(`Entity ${ClassHelpers.getName(entity)} not found`);
62
+ }
63
+ static custom(message, code = 400) {
64
+ return Errors.create(message, code);
65
+ }
66
+ }
67
+ Http.Errors = Errors;
68
+ /* */
69
+ /* */
70
+ /* */
71
+ /* */
72
+ /* */
73
+ })(Http = Models.Http || (Models.Http = {}));
74
+ })(Models || (Models = {}));
75
+ ;
76
+ ({}); // @--end-of-file-for-module=taon lib/models.ts
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdGFvbi9wcm9qZWN0cy90YW9uL3NyYy9saWIvbW9kZWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLEtBQUs7QUFDTCxLQUFLO0FBRUwsT0FBTyxFQUFFLE1BQU0sSUFBSSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJdkQsTUFBTSxLQUFXLE1BQU0sQ0FvUnRCO0FBcFJELFdBQWlCLE1BQU07SUFRckIsSUFBWSxTQU1YO0lBTkQsV0FBWSxTQUFTO1FBQ25CLDhCQUFpQixDQUFBO1FBQ2pCLHNDQUF5QixDQUFBO1FBQ3pCLHNDQUF5QixDQUFBO1FBQ3pCLGtDQUFxQixDQUFBO1FBQ3JCLHNDQUF5QixDQUFBO0lBQzNCLENBQUMsRUFOVyxTQUFTLEdBQVQsZ0JBQVMsS0FBVCxnQkFBUyxRQU1wQjtJQUVZLG1CQUFZLEdBQUc7UUFDMUIsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVTtRQUM5QixDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxhQUFhO1FBQ3JDLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLGNBQWM7UUFDdEMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsV0FBVztRQUNqQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxhQUFhO0tBR3RDLENBQUM7SUE0R0YsTUFBYSxvQkFBb0I7S0FFaEM7SUFGWSwyQkFBb0IsdUJBRWhDLENBQUE7SUFJRCxNQUFhLFdBQVc7S0FNdkI7SUFOWSxrQkFBVyxjQU12QixDQUFBO0lBSUQsTUFBYSxZQUFZO1FBQXpCO1lBaUJGLEtBQUs7WUFDTCxLQUFLO1lBRUQsZUFBVSxHQUF5QyxFQUFFLENBQUM7UUFDeEQsQ0FBQztLQUFBO0lBckJZLG1CQUFZLGVBcUJ4QixDQUFBO0lBSUQsTUFBYSxnQkFBaUIsU0FBUSxvQkFBb0I7UUFBMUQ7O1lBSUUsWUFBTyxHQUEyQyxFQUFFLENBQUM7UUFDdkQsQ0FBQztLQUFBO0lBTFksdUJBQWdCLG1CQUs1QixDQUFBO0lBSUQsTUFBYSx1QkFBd0IsU0FBUSxnQkFBZ0I7S0FHNUQ7SUFIWSw4QkFBdUIsMEJBR25DLENBQUE7SUFJRCxJQUFpQixJQUFJLENBcUZwQjtJQXJGRCxXQUFpQixJQUFJO1FBQ0wsU0FBSSxHQUFHLGFBQWEsQ0FBQztRQStDbkMsTUFBYSxNQUFNO1lBS2pCLFlBQ1MsT0FBZSxFQUNkLE9BQStCLEdBQUc7Z0JBRG5DLFlBQU8sR0FBUCxPQUFPLENBQVE7Z0JBQ2QsU0FBSSxHQUFKLElBQUksQ0FBOEI7Z0JBTnJDLGFBQVEsR0FBRyxHQUFXLEVBQUU7b0JBQzdCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztnQkFDdEIsQ0FBQyxDQUFDO1lBS0MsQ0FBQztZQUVJLE1BQU0sQ0FBQyxNQUFNLENBQ25CLE9BQWUsRUFDZixPQUErQixHQUFHO2dCQUVsQyxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBRU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFpQjtnQkFDNUMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUNsQixVQUFVLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FDbkQsQ0FBQztZQUNKLENBQUM7WUFFTSxNQUFNLENBQUMsTUFBTSxDQUNsQixPQUFlLEVBQ2YsT0FBK0IsR0FBRztnQkFFbEMsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0QyxDQUFDO1NBQ0Y7UUE3QlksV0FBTSxTQTZCbEIsQ0FBQTtRQUVMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO0lBRUgsQ0FBQyxFQXJGZ0IsSUFBSSxHQUFKLFdBQUksS0FBSixXQUFJLFFBcUZwQjtBQUVILENBQUMsRUFwUmdCLE1BQU0sS0FBTixNQUFNLFFBb1J0QjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsK0NBQStDIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IENvcmVNb2RlbHMgfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IFJlc3BvbnNlLCBSZXF1ZXN0SGFuZGxlciB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IHsgICBSZXNwb25zZSBhcyBFeHByZXNzUmVzcG9uc2UsICAgUmVxdWVzdCBhcyBFeHByZXNzUmVxdWVzdCwgfSBmcm9tICdleHByZXNzJzsvKiAqL1xuLyogKi9cbi8qICovXG5cbmltcG9ydCB7IE1vZGVscyBhcyBNb2RlbHNOZzJSZXN0IH0gZnJvbSAnbmcyLXJlc3QvYnJvd3Nlcic7XG5pbXBvcnQgeyBDbGFzc0hlbHBlcnMgfSBmcm9tICcuL2hlbHBlcnMvY2xhc3MtaGVscGVycyc7XG5pbXBvcnQgdHlwZSB7IFRhb25Db250cm9sbGVyT3B0aW9ucyB9IGZyb20gJy4vZGVjb3JhdG9ycy9jbGFzc2VzL2NvbnRyb2xsZXItZGVjb3JhdG9yJztcbmltcG9ydCB0eXBlIHsgVGFvbkVudGl0eU9wdGlvbnMgfSBmcm9tICcuL2RlY29yYXRvcnMvY2xhc3Nlcy9lbnRpdHktZGVjb3JhdG9yJztcblxuZXhwb3J0IG5hbWVzcGFjZSBNb2RlbHMge1xuICBleHBvcnQgdHlwZSBGcmFtZXdvcmtNb2RlID1cbiAgICB8ICdiYWNrZW5kLWZyb250ZW5kKHRjcCt1ZHApJ1xuICAgIHwgJ3JlbW90ZS1iYWNrZW5kKHRjcCt1ZHApJ1xuICAgIHwgJ2JhY2tlbmQtZnJvbnRlbmQoaXBjLWVsZWN0cm9uKSdcbiAgICB8ICdiYWNrZW5kLWZyb250ZW5kKHdlYnNxbCknO1xuXG5cbiAgZXhwb3J0IGVudW0gQ2xhc3NUeXBlIHtcbiAgICBFTlRJVFkgPSAnRU5USVRZJyxcbiAgICBDT05UUk9MTEVSID0gJ0NPTlRST0xMRVInLFxuICAgIFJFUE9TSVRPUlkgPSAnUkVQT1NJVE9SWScsXG4gICAgUFJPVklERVIgPSAnUFJPVklERVInLFxuICAgIFNVQlNDUklCRVIgPSAnU1VCU0NSSUJFUicsXG4gIH1cblxuICBleHBvcnQgY29uc3QgQ2xhc3NUeXBlS2V5ID0ge1xuICAgIFtDbGFzc1R5cGUuRU5USVRZXTogJ2VudGl0aWVzJyxcbiAgICBbQ2xhc3NUeXBlLkNPTlRST0xMRVJdOiAnY29udHJvbGxlcnMnLFxuICAgIFtDbGFzc1R5cGUuUkVQT1NJVE9SWV06ICdyZXBvc2l0b3JpZXMnLFxuICAgIFtDbGFzc1R5cGUuUFJPVklERVJdOiAncHJvdmlkZXJzJyxcbiAgICBbQ2xhc3NUeXBlLlNVQlNDUklCRVJdOiAnc3Vic2NyaWJlcnMnLFxuICB9IGFzIHtcbiAgICBba2V5IGluIENsYXNzVHlwZV06IGtleW9mIENvbnRleHRPcHRpb25zPGFueSwgYW55LCBhbnksIGFueSwgYW55LCBhbnk+O1xuICB9O1xuXG5cblxuXG4gIGV4cG9ydCB0eXBlIE1pZGRsZXdhcmVUeXBlID0gW0Z1bmN0aW9uLCBhbnlbXV07XG5cblxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgRGF0YWJhc2VDb25maWcge1xuICAgIC8qKlxuICAgICAqIGRhdGFiYXNlIG5hbWVcbiAgICAgKi9cbiAgICBkYXRhYmFzZT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBvbmx5IGZvciBmaWxlIGJhc2UgZGI6IHNxbGl0ZSwgc3FsanNcbiAgICAgKi9cbiAgICBsb2NhdGlvbj86IHN0cmluZztcbiAgICBzeW5jaHJvbml6ZTogYm9vbGVhbjtcbiAgICBkcm9wU2NoZW1hOiBib29sZWFuO1xuICAgIHR5cGU/OiBDb3JlTW9kZWxzLkRhdGFiYXNlVHlwZTtcblxuICAgIGF1dG9TYXZlOiBib29sZWFuOyAvLyBUT0RPIHdoYXQgaXMgdGhpcyA/XG4gICAgLyoqXG4gICAgICogZm9yIHdlYnNxbCBkYiBtb2RlXG4gICAgICovXG4gICAgdXNlTG9jYWxGb3JhZ2U/OiBib29sZWFuO1xuICAgIGxvZ2dpbmc6IGJvb2xlYW47XG5cbiAgICBkYXRhYmFzZVBvcnQ/OiBudW1iZXI7XG4gICAgZGF0YWJhc2VIb3N0Pzogc3RyaW5nO1xuICAgIGRhdGFiYXNlVXNlcm5hbWU/OiBzdHJpbmc7XG4gICAgZGF0YWJhc2VQYXNzd29yZD86IHN0cmluZztcbiAgfVxuXG5cblxuXG4gIGV4cG9ydCB0eXBlIElTZXNzaW9uID0ge1xuICAgIHNlY3JldD86IHN0cmluZztcbiAgICBzYXZlVW5pbml0aWFsaXplZD86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogbWF4IGFnZSBvZiBzZXNzaW9uXG4gICAgICovXG4gICAgY29va2llTWF4QWdlPzogbnVtYmVyO1xuICAgIHNlY3VyZT86IGJvb2xlYW47XG4gICAgcmVzYXZlPzogYm9vbGVhbjtcbiAgfTtcblxuXG5cbiAgZXhwb3J0IHR5cGUgQ29udGVjdGlvbk9wdGlvbnNMb2dzID0ge1xuICAgIGh0dHA6IGJvb2xlYW47XG4gICAgcmVhbHRpbWU6IGJvb2xlYW47XG4gICAgZnJhbWV3b3JrOiBib29sZWFuO1xuICAgIGRiOiBib29sZWFuO1xuICB9O1xuICBleHBvcnQgaW50ZXJmYWNlIENvbnRleHRPcHRpb25zPFxuICAgIENPTlRFWFRTLFxuICAgIENPTlRST0xMRVJTLFxuICAgIEVOVElUSUVTLFxuICAgIFJFUE9TSVRPUklFUyxcbiAgICBQUk9WSURFUlMsXG4gICAgU1VCU0NSSUJFUlMsXG4gID4ge1xuICAgIGNvbnRleHROYW1lOiBzdHJpbmc7XG4gICAgaG9zdD86IHN0cmluZztcbiAgICAvKipcbiAgICogZnJvbnRlbmQgaG9zdCBvbmx5IG5lZWRlZCB3aGVuIHdlIGFyZSB1c2luZ1xuICAgKiB3aXRoQ3JlZGVudGlhbHMgZm9yIGF4aW9zXG4gICAqIGFuZCBzZXNzaW9uIGNvb2tpZVxuICAgKi9cbiAgICBmcm9udGVuZEhvc3Q/OiBzdHJpbmc7XG4gICAgcmVtb3RlSG9zdD86IHN0cmluZztcbiAgICB1c2VJcGNXaGVuRWxlY3Ryb24/OiBib29sZWFuO1xuICAgIGNvbnRleHRzPzogQ09OVEVYVFM7XG4gICAgY29udHJvbGxlcnM/OiBDT05UUk9MTEVSUztcbiAgICBlbnRpdGllcz86IEVOVElUSUVTO1xuICAgIHJlcG9zaXRvcmllcz86IFJFUE9TSVRPUklFUztcbiAgICBwcm92aWRlcnM/OiBQUk9WSURFUlM7XG4gICAgc3Vic2NyaWJlcnM/OiBTVUJTQ1JJQkVSUztcbiAgICBzZXNzaW9uPzogSVNlc3Npb247XG4gICAgcHJvZHVjdGlvbk1vZGU/OiBib29sZWFuO1xuICAgIGFic3RyYWN0PzogYm9vbGVhbjtcbiAgICBsb2dzPzogYm9vbGVhbiB8IENvbnRlY3Rpb25PcHRpb25zTG9ncztcbiAgICBkYXRhYmFzZT86IGJvb2xlYW4gfCBEYXRhYmFzZUNvbmZpZztcbiAgICBkaXNhYmxlZFJlYWx0aW1lPzogYm9vbGVhbjtcbiAgICBodHRwcz86IHtcbiAgICAgIGtleTogc3RyaW5nO1xuICAgICAgY2VydDogc3RyaW5nO1xuICAgIH07XG4gICAgcHVibGljQXNzZXRzPzogeyBzZXJ2ZXJQYXRoOiBzdHJpbmc7IGxvY2F0aW9uT25EaXNrOiBzdHJpbmcgfVtdO1xuICAgIG1pZGRsZXdhcmVzPzogTWlkZGxld2FyZVR5cGVbXTtcbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZFxuICAgICAqIG9ubHkgZm9yIGRlYnVnZ2luZyBwdXJwb3NlXG4gICAgICovXG4gICAgb3ZlcnJpZGU/OiB7XG4gICAgICBlbnRpdGllcz86IEZ1bmN0aW9uW107XG4gICAgICBjb250cm9sbGVycz86IEZ1bmN0aW9uW107XG4gICAgICByZXBvc2l0b3JpZXM/OiBGdW5jdGlvbltdO1xuICAgICAgcHJvdmlkZXJzPzogRnVuY3Rpb25bXTtcbiAgICAgIHN1YnNjcmliZXJzPzogRnVuY3Rpb25bXTtcbiAgICB9O1xuICB9XG5cblxuXG4gIGV4cG9ydCBjbGFzcyBEZWNvcmF0b3JBYnN0cmFjdE9wdCB7XG4gICAgY2xhc3NOYW1lOiBzdHJpbmc7XG4gIH1cblxuXG5cbiAgZXhwb3J0IGNsYXNzIFBhcmFtQ29uZmlnIHtcbiAgICBwYXJhbU5hbWU6IHN0cmluZztcbiAgICBwYXJhbVR5cGU6IENvcmVNb2RlbHMuUGFyYW1UeXBlO1xuICAgIGluZGV4OiBudW1iZXI7XG4gICAgZGVmYXVsdFR5cGU6IGFueTtcbiAgICBleHBpcmVJblNlY29uZHM/OiBudW1iZXI7XG4gIH1cblxuXG5cbiAgZXhwb3J0IGNsYXNzIE1ldGhvZENvbmZpZyB7XG4gICAgbWV0aG9kTmFtZTogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIHBhdGggaXMgZ2xvYmFsIGluIGV4cHJlc3MgYXBwXG4gICAgICovXG4gICAgZ2xvYmFsPzogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBvdmVycmlkZSBkZWZhdWx0IGNvbnRlbnQgdHlwZVxuICAgICAqL1xuICAgIGNvbnRlbnRUeXBlPzogYW55O1xuICAgIC8qKlxuICAgICAqIG92ZXJyaWRlIGRlZmF1bHQgYXhpc28gcmVzcG9uc2UgdHlwZVxuICAgICAqL1xuICAgIHJlc3BvbnNlVHlwZT86IGFueTtcbiAgICBwYXRoOiBzdHJpbmc7XG4gICAgZGVzY3JpcHRvcjogUHJvcGVydHlEZXNjcmlwdG9yO1xuICAgIHR5cGU6IENvcmVNb2RlbHMuSHR0cE1ldGhvZDtcbi8qICovXG4vKiAqL1xuICBcbiAgICBwYXJhbWV0ZXJzOiB7IFtwYXJhbU5hbWU6IHN0cmluZ106IFBhcmFtQ29uZmlnIH0gPSB7fTtcbiAgfVxuXG5cblxuICBleHBvcnQgY2xhc3MgQ29udHJvbGxlckNvbmZpZyBleHRlbmRzIERlY29yYXRvckFic3RyYWN0T3B0IHtcbiAgICByZWFsdGltZT86IGJvb2xlYW47XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIHVuaXF1ZUtleT86IHN0cmluZztcbiAgICBtZXRob2RzOiB7IFttZXRob2ROYW1lOiBzdHJpbmddOiBNZXRob2RDb25maWcgfSA9IHt9O1xuICB9XG5cblxuXG4gIGV4cG9ydCBjbGFzcyBSdW50aW1lQ29udHJvbGxlckNvbmZpZyBleHRlbmRzIENvbnRyb2xsZXJDb25maWcge1xuICAgIGNhbGN1bGF0ZWRQYXRoPzogc3RyaW5nO1xuICAgIGJyb3dzZXJUcmFuc2Zvcm1Gbj86IChlbnRpdHk6IGFueSkgPT4gYW55O1xuICB9XG5cblxuXG4gIGV4cG9ydCBuYW1lc3BhY2UgSHR0cCB7XG4gICAgZXhwb3J0IGltcG9ydCBSZXN0ID0gTW9kZWxzTmcyUmVzdDtcblxuICAgIGV4cG9ydCB0eXBlIENvbnRleHRFTkRQT0lOVCA9IHsgdGFyZ2V0OiBGdW5jdGlvbjsgaW5pdEZOOiBGdW5jdGlvbiB9O1xuXG4gICAgZXhwb3J0IHR5cGUgRm9ybWx5RnJvbVR5cGUgPSAnbWF0ZXJpYWwnIHwgJ2Jvb3RzdHJhcCc7XG5cbiAgICBleHBvcnQgdHlwZSBFeHByZXNzQ29udGV4dDxUPiA9IChcbiAgICAgIHJlcTogRXhwcmVzc1JlcXVlc3QsXG4gICAgICByZXM6IEV4cHJlc3NSZXNwb25zZSxcbiAgICApID0+IFQ7XG5cbiAgICBleHBvcnQgdHlwZSBTeW5jUmVzcG9uc2U8VD4gPSBzdHJpbmcgfCBUO1xuXG4gICAgZXhwb3J0IHR5cGUgUmVzcG9uc2VGdW5jT3B0PFQ+ID0ge1xuICAgICAgbGltaXRTaXplPzogKFxuICAgICAgICBlbnRpZXM6IEZ1bmN0aW9uIHwgRnVuY3Rpb25bXSxcbiAgICAgICAgaW5jbHVkZTogc3RyaW5nW10sXG4gICAgICAgIGV4Y2x1ZGU6IHN0cmluZ1tdLFxuICAgICAgKSA9PiB2b2lkO1xuICAgIH07XG5cbiAgICBleHBvcnQgdHlwZSBTeW5jUmVzcG9uc2VGdW5jPFQ+ID0gKFxuICAgICAgb3B0aW9ucz86IFJlc3BvbnNlRnVuY09wdDxUPixcbiAgICApID0+IFN5bmNSZXNwb25zZTxUPjtcbiAgICBleHBvcnQgdHlwZSBNaXhSZXNwb25zZTxUPiA9IFN5bmNSZXNwb25zZTxUPiB8IEV4cHJlc3NDb250ZXh0PFQ+O1xuXG4gICAgZXhwb3J0IGludGVyZmFjZSBDbGllbnRBY3Rpb248VD4ge1xuICAgICAgcmVjZWl2ZWQ/OiBSZXN0LlByb21pc2VPYnNlcnZhYmxlTWl4PFJlc3QuSHR0cFJlc3BvbnNlPFQ+PjtcbiAgICB9XG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIF9fUmVzcG9uc2U8VD4ge1xuLyogKi9cbi8qICovXG4gIFxuICAgIH1cblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQXN5bmNSZXNwb25zZTxUPiB7XG4gICAgICAoXG4gICAgICAgIHJlcT86IEV4cHJlc3NSZXF1ZXN0LFxuICAgICAgICByZXM/OiBFeHByZXNzUmVzcG9uc2UsXG4gICAgICApOiBQcm9taXNlPFN5bmNSZXNwb25zZTxUPiB8IFN5bmNSZXNwb25zZUZ1bmM8VD4+O1xuICAgIH1cblxuICAgIGV4cG9ydCB0eXBlIFJlc3BvbnNlPFQgPSBzdHJpbmc+ID0gKF9fUmVzcG9uc2U8VD4gfCBBc3luY1Jlc3BvbnNlPFQ+KSAmXG4gICAgICBDbGllbnRBY3Rpb248VD4gJlxuICAgICAgX19SZXNwb25zZTxUPjtcblxuICAgIGV4cG9ydCBjbGFzcyBFcnJvcnMge1xuICAgICAgcHVibGljIHRvU3RyaW5nID0gKCk6IHN0cmluZyA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLm1lc3NhZ2U7XG4gICAgICB9O1xuXG4gICAgICBwcml2YXRlIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgbWVzc2FnZTogc3RyaW5nLFxuICAgICAgICBwcml2YXRlIGNvZGU6IE1vZGVsc05nMlJlc3QuSHR0cENvZGUgPSA0MDAsXG4gICAgICApIHt9XG5cbiAgICAgIHByaXZhdGUgc3RhdGljIGNyZWF0ZShcbiAgICAgICAgbWVzc2FnZTogc3RyaW5nLFxuICAgICAgICBjb2RlOiBNb2RlbHNOZzJSZXN0Lkh0dHBDb2RlID0gNDAwLFxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBuZXcgRXJyb3JzKG1lc3NhZ2UsIGNvZGUpO1xuICAgICAgfVxuXG4gICAgICBwdWJsaWMgc3RhdGljIGVudGl0eU5vdEZvdW5kKGVudGl0eT86IEZ1bmN0aW9uKSB7XG4gICAgICAgIHJldHVybiBFcnJvcnMuY3JlYXRlKFxuICAgICAgICAgIGBFbnRpdHkgJHtDbGFzc0hlbHBlcnMuZ2V0TmFtZShlbnRpdHkpfSBub3QgZm91bmRgLFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBwdWJsaWMgc3RhdGljIGN1c3RvbShcbiAgICAgICAgbWVzc2FnZTogc3RyaW5nLFxuICAgICAgICBjb2RlOiBNb2RlbHNOZzJSZXN0Lkh0dHBDb2RlID0gNDAwLFxuICAgICAgKSB7XG4gICAgICAgIHJldHVybiBFcnJvcnMuY3JlYXRlKG1lc3NhZ2UsIGNvZGUpO1xuICAgICAgfVxuICAgIH1cblxuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL21vZGVscy50cyJdfQ==
@@ -0,0 +1,6 @@
1
+ /* */
2
+ /* */
3
+ ;
4
+ ({}); // @--end-of-file-for-module=taon lib/orm.ts
5
+ export {};
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdGFvbi9wcm9qZWN0cy90YW9uL3NyYy9saWIvb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLEtBQUs7QUFDTCxLQUFLO0FBMkVKLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsNENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbi8qICovXG4vKiAqL1xuICBcblxuXG5leHBvcnQgbmFtZXNwYWNlIE9ybSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgXG59XG5cblxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbiBsaWIvb3JtLnRzIl19
@@ -0,0 +1,129 @@
1
+ import { _ } from 'tnp-core/browser';
2
+ import { Symbols } from '../symbols';
3
+ import { Observable } from 'rxjs';
4
+ import { ClassHelpers } from '../helpers/class-helpers';
5
+ import { RealtimeSubsManager } from './realtime-subs-manager';
6
+ export class RealtimeClient {
7
+ constructor(core) {
8
+ this.core = core;
9
+ this.subsmanagers = {};
10
+ this.core = core;
11
+ if (!core.ctx.disabledRealtime) {
12
+ this.init();
13
+ }
14
+ }
15
+ init() {
16
+ const nspPath = {
17
+ global: this.core.pathFor(),
18
+ realtime: this.core.pathFor(Symbols.REALTIME.NAMESPACE(this.core.ctx.contextName)),
19
+ };
20
+ this.core.ctx.logRealtime &&
21
+ console.info('[CLIENT] NAMESPACE GLOBAL ', nspPath.global.href + ` host: ${this.core.ctx.host}`);
22
+ this.core.ctx.logRealtime &&
23
+ console.info('[CLIENT] NAMESPACE REALTIME', nspPath.realtime.href + ` host: ${this.core.ctx.host}`);
24
+ this.core.FE = this.core.strategy.io(nspPath.global.origin, {
25
+ path: nspPath.global.pathname,
26
+ });
27
+ if (this.core.FE.on) {
28
+ this.core.FE.on('connect', () => {
29
+ console.info(`[CLIENT] conented to GLOBAL namespace ${this.core.FE.id} of host: ${this.core.ctx.host}`);
30
+ });
31
+ }
32
+ this.core.FE_REALTIME = this.core.strategy.io(nspPath.realtime.origin, {
33
+ path: nspPath.realtime.pathname,
34
+ });
35
+ if (this.core.FE_REALTIME.on) {
36
+ this.core.FE_REALTIME.on('connect', () => {
37
+ console.info(`[CLIENT] conented to REALTIME namespace ${this.core.FE_REALTIME.id} host: ${this.core.ctx.host}`);
38
+ });
39
+ }
40
+ }
41
+ /**
42
+ * Changes trigger on backend needs to be done manually.. example code:
43
+ *
44
+ * ...
45
+ * Context.Realtime.Server.TrigggerEntityChanges(myEntityInstance);
46
+ * ...
47
+ */
48
+ listenChangesEntity(entityClassFn, idOrUniqValue, options) {
49
+ options = options || {};
50
+ const { property, customEvent } = options;
51
+ const className = !customEvent && ClassHelpers.getName(entityClassFn);
52
+ if (_.isString(property)) {
53
+ if (property.trim() === '') {
54
+ throw new Error(`[Taon][listenChangesEntity.. incorect property '' for ${className}`);
55
+ }
56
+ }
57
+ return new Observable(observer => {
58
+ if (this.core.ctx.disabledRealtime) {
59
+ console.error(`[Taon][realtime rxjs] remove taon config flag:
60
+
61
+ ...
62
+ disabledRealtime: true
63
+ ...
64
+
65
+ to use socket realtime connection;
66
+ `);
67
+ return () => {
68
+ };
69
+ }
70
+ let roomName;
71
+ if (customEvent) {
72
+ roomName = Symbols.REALTIME.ROOM_NAME.CUSTOM(this.core.ctx.contextName, customEvent);
73
+ }
74
+ else {
75
+ roomName = _.isString(property)
76
+ ? Symbols.REALTIME.ROOM_NAME.UPDATE_ENTITY_PROPERTY(this.core.ctx.contextName, className, property, idOrUniqValue)
77
+ : Symbols.REALTIME.ROOM_NAME.UPDATE_ENTITY(this.core.ctx.contextName, className, idOrUniqValue);
78
+ }
79
+ const roomSubOptions = {
80
+ core: this.core,
81
+ property,
82
+ roomName,
83
+ customEvent,
84
+ };
85
+ const subManagerId = this.getRoomIdFrom(roomSubOptions);
86
+ if (!this.subsmanagers[subManagerId]) {
87
+ this.subsmanagers[subManagerId] = new RealtimeSubsManager(roomSubOptions);
88
+ }
89
+ const inst = this.subsmanagers[subManagerId];
90
+ inst.add(observer);
91
+ inst.startListenIfNotStarted(this.core.FE_REALTIME);
92
+ return () => {
93
+ inst.remove(observer);
94
+ };
95
+ });
96
+ }
97
+ listenChangesEntityTable(entityClassFn) {
98
+ const className = ClassHelpers.getName(entityClassFn);
99
+ return this.listenChangesEntity(entityClassFn, void 0, {
100
+ customEvent: Symbols.REALTIME.TABLE_CHANGE(this.core.ctx.contextName, className),
101
+ });
102
+ }
103
+ /**
104
+ * Changes trigger on backend needs to be done manually.. example code:
105
+ *
106
+ * ...
107
+ * Context.Realtime.Server.TrigggerEntityChanges(myEntityInstance);
108
+ * // or
109
+ * Context.Realtime.Server.TrigggerEntityPropertyChanges(myEntityInstance,{ property: 'geolocationX' });
110
+ * ...
111
+ */
112
+ listenChangesEntityObj(entity, options) {
113
+ const classFn = ClassHelpers.getClassFnFromObject(entity);
114
+ const uniqueKey = ClassHelpers.getUniquKey(classFn);
115
+ return this.listenChangesEntity(classFn, entity[uniqueKey], options);
116
+ }
117
+ listenChangesCustomEvent(customEvent) {
118
+ return this.listenChangesEntity(void 0, void 0, {
119
+ customEvent,
120
+ });
121
+ }
122
+ getRoomIdFrom(options) {
123
+ const url = new URL(options.core.ctx.host);
124
+ return `${this.core.ctx.contextName}:${url.origin}|${options.roomName}|${options.property}|${options.customEvent}`;
125
+ }
126
+ }
127
+ ;
128
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-client.ts
129
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdGFvbi9wcm9qZWN0cy90YW9uL3NyYy9saWIvcmVhbHRpbWUvcmVhbHRpbWUtY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBTTlELE1BQU0sT0FBTyxjQUFjO0lBRXpCLFlBQW9CLElBQWtCO1FBQWxCLFNBQUksR0FBSixJQUFJLENBQWM7UUFEOUIsaUJBQVksR0FBNEMsRUFBRSxDQUFDO1FBRWpFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFFL0IsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRWQsQ0FBQztJQUNILENBQUM7SUFHTyxJQUFJO1FBRVYsTUFBTSxPQUFPLEdBQUc7WUFDZCxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDM0IsUUFBUSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUN6QixPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FDdEQ7U0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVztZQUN2QixPQUFPLENBQUMsSUFBSSxDQUNW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QyxNQUFNLElBQUksT0FBTyxDQUFDLFFBQVEsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNySCxDQUFDO0NBRUY7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGlFQUFpRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcbmltcG9ydCB7IFJlYWx0aW1lQ29yZSB9IGZyb20gJy4vcmVhbHRpbWUtY29yZSc7XG5pbXBvcnQgeyBTeW1ib2xzIH0gZnJvbSAnLi4vc3ltYm9scyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDbGFzc0hlbHBlcnMgfSBmcm9tICcuLi9oZWxwZXJzL2NsYXNzLWhlbHBlcnMnO1xuaW1wb3J0IHsgUmVhbHRpbWVTdWJzTWFuYWdlciB9IGZyb20gJy4vcmVhbHRpbWUtc3Vicy1tYW5hZ2VyJztcbmltcG9ydCB7IFJlYWx0aW1lTW9kZWxzIH0gZnJvbSAnLi9yZWFsdGltZS5tb2RlbHMnO1xuaW1wb3J0IHR5cGUgeyBCYXNlRW50aXR5IH0gZnJvbSAnLi4vYmFzZS1jbGFzc2VzL2Jhc2UtZW50aXR5JztcbmltcG9ydCB7IEhlbHBlcnMgfSBmcm9tICd0bnAtY29yZS9icm93c2VyJztcblxuXG5leHBvcnQgY2xhc3MgUmVhbHRpbWVDbGllbnQge1xuICBwcml2YXRlIHN1YnNtYW5hZ2VyczogeyBbcGF0aDogc3RyaW5nXTogUmVhbHRpbWVTdWJzTWFuYWdlciB9ID0ge307XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29yZTogUmVhbHRpbWVDb3JlKSB7XG4gICAgdGhpcy5jb3JlID0gY29yZTtcbiAgICBpZiAoIWNvcmUuY3R4LmRpc2FibGVkUmVhbHRpbWUpIHtcblxuICAgICAgdGhpcy5pbml0KCk7XG5cbiAgICB9XG4gIH1cblxuXG4gIHByaXZhdGUgaW5pdCgpIHtcblxuICAgIGNvbnN0IG5zcFBhdGggPSB7XG4gICAgICBnbG9iYWw6IHRoaXMuY29yZS5wYXRoRm9yKCksXG4gICAgICByZWFsdGltZTogdGhpcy5jb3JlLnBhdGhGb3IoXG4gICAgICAgIFN5bWJvbHMuUkVBTFRJTUUuTkFNRVNQQUNFKHRoaXMuY29yZS5jdHguY29udGV4dE5hbWUpLFxuICAgICAgKSxcbiAgICB9O1xuXG4gICAgdGhpcy5jb3JlLmN0eC5sb2dSZWFsdGltZSAmJlxuICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAnW0NMSUVOVF0gTkFNRVNQQUNFIEdMT0JBTCAnLFxuICAgICAgICBuc3BQYXRoLmdsb2JhbC5ocmVmICsgYCBob3N0OiAke3RoaXMuY29yZS5jdHguaG9zdH1gLFxuICAgICAgKTtcblxuICAgIHRoaXMuY29yZS5jdHgubG9nUmVhbHRpbWUgJiZcbiAgICAgIGNvbnNvbGUuaW5mbyhcbiAgICAgICAgJ1tDTElFTlRdIE5BTUVTUEFDRSBSRUFMVElNRScsXG4gICAgICAgIG5zcFBhdGgucmVhbHRpbWUuaHJlZiArIGAgaG9zdDogJHt0aGlzLmNvcmUuY3R4Lmhvc3R9YCxcbiAgICAgICk7XG5cblxuXG4gICAgdGhpcy5jb3JlLkZFID0gdGhpcy5jb3JlLnN0cmF0ZWd5LmlvKG5zcFBhdGguZ2xvYmFsLm9yaWdpbiwge1xuICAgICAgcGF0aDogbnNwUGF0aC5nbG9iYWwucGF0aG5hbWUsXG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5jb3JlLkZFLm9uKSB7XG4gICAgICB0aGlzLmNvcmUuRkUub24oJ2Nvbm5lY3QnLCAoKSA9PiB7XG5cblxuXG4gICAgICAgIGNvbnNvbGUuaW5mbyhcbiAgICAgICAgICBgW0NMSUVOVF0gY29uZW50ZWQgdG8gR0xPQkFMIG5hbWVzcGFjZSAke3RoaXMuY29yZS5GRS5pZH0gb2YgaG9zdDogJHt0aGlzLmNvcmUuY3R4Lmhvc3R9YCxcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH1cblxuXG5cblxuICAgIHRoaXMuY29yZS5GRV9SRUFMVElNRSA9IHRoaXMuY29yZS5zdHJhdGVneS5pbyhuc3BQYXRoLnJlYWx0aW1lLm9yaWdpbiwge1xuICAgICAgcGF0aDogbnNwUGF0aC5yZWFsdGltZS5wYXRobmFtZSxcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmNvcmUuRkVfUkVBTFRJTUUub24pIHtcbiAgICAgIHRoaXMuY29yZS5GRV9SRUFMVElNRS5vbignY29ubmVjdCcsICgpID0+IHtcblxuXG5cbiAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgIGBbQ0xJRU5UXSBjb25lbnRlZCB0byBSRUFMVElNRSBuYW1lc3BhY2UgJHt0aGlzLmNvcmUuRkVfUkVBTFRJTUUuaWR9IGhvc3Q6ICR7dGhpcy5jb3JlLmN0eC5ob3N0fWAsXG4gICAgICAgICk7XG4gICAgICB9KTtcbiAgICB9XG5cblxuICB9XG5cblxuXG4gIC8qKlxuICAgKiBDaGFuZ2VzIHRyaWdnZXIgb24gYmFja2VuZCBuZWVkcyB0byBiZSBkb25lIG1hbnVhbGx5Li4gZXhhbXBsZSBjb2RlOlxuICAgKlxuICAgKiAuLi5cbiAgICogQ29udGV4dC5SZWFsdGltZS5TZXJ2ZXIuVHJpZ2dnZXJFbnRpdHlDaGFuZ2VzKG15RW50aXR5SW5zdGFuY2UpO1xuICAgKiAuLi5cbiAgICovXG4gIGxpc3RlbkNoYW5nZXNFbnRpdHkoXG4gICAgZW50aXR5Q2xhc3NGbjogRnVuY3Rpb24sXG4gICAgaWRPclVuaXFWYWx1ZTogYW55LFxuICAgIG9wdGlvbnM6IFJlYWx0aW1lTW9kZWxzLkNoYW5nZU9wdGlvbixcbiAgKSB7XG4gICAgb3B0aW9ucyA9IG9wdGlvbnMgfHwgKHt9IGFzIGFueSk7XG5cblxuICAgIGNvbnN0IHsgcHJvcGVydHksIGN1c3RvbUV2ZW50IH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9ICFjdXN0b21FdmVudCAmJiBDbGFzc0hlbHBlcnMuZ2V0TmFtZShlbnRpdHlDbGFzc0ZuKTtcblxuICAgIGlmIChfLmlzU3RyaW5nKHByb3BlcnR5KSkge1xuICAgICAgaWYgKHByb3BlcnR5LnRyaW0oKSA9PT0gJycpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBbVGFvbl1bbGlzdGVuQ2hhbmdlc0VudGl0eS4uIGluY29yZWN0IHByb3BlcnR5ICcnIGZvciAke2NsYXNzTmFtZX1gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcblxuXG4gICAgICBpZiAodGhpcy5jb3JlLmN0eC5kaXNhYmxlZFJlYWx0aW1lKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoYFtUYW9uXVtyZWFsdGltZSByeGpzXSByZW1vdmUgdGFvbiBjb25maWcgZmxhZzpcblxuICAgICAgICAuLi5cbiAgICAgICAgZGlzYWJsZWRSZWFsdGltZTogdHJ1ZVxuICAgICAgICAuLi5cblxudG8gdXNlIHNvY2tldCByZWFsdGltZSBjb25uZWN0aW9uO1xuICAgICAgICBgKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcblxuICAgICAgICB9O1xuICAgICAgfVxuXG4gICAgICBsZXQgcm9vbU5hbWU6IHN0cmluZztcblxuICAgICAgaWYgKGN1c3RvbUV2ZW50KSB7XG4gICAgICAgIHJvb21OYW1lID0gU3ltYm9scy5SRUFMVElNRS5ST09NX05BTUUuQ1VTVE9NKFxuICAgICAgICAgIHRoaXMuY29yZS5jdHguY29udGV4dE5hbWUsXG4gICAgICAgICAgY3VzdG9tRXZlbnQsXG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByb29tTmFtZSA9IF8uaXNTdHJpbmcocHJvcGVydHkpXG4gICAgICAgICAgPyBTeW1ib2xzLlJFQUxUSU1FLlJPT01fTkFNRS5VUERBVEVfRU5USVRZX1BST1BFUlRZKFxuICAgICAgICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICAgIHByb3BlcnR5LFxuICAgICAgICAgICAgICBpZE9yVW5pcVZhbHVlLFxuICAgICAgICAgICAgKVxuICAgICAgICAgIDogU3ltYm9scy5SRUFMVElNRS5ST09NX05BTUUuVVBEQVRFX0VOVElUWShcbiAgICAgICAgICAgICAgdGhpcy5jb3JlLmN0eC5jb250ZXh0TmFtZSxcbiAgICAgICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICAgICAgICBpZE9yVW5pcVZhbHVlLFxuICAgICAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgY29uc3Qgcm9vbVN1Yk9wdGlvbnM6IFJlYWx0aW1lTW9kZWxzLlN1YnNNYW5hZ2VyT3B0ID0ge1xuICAgICAgICBjb3JlOiB0aGlzLmNvcmUsXG4gICAgICAgIHByb3BlcnR5LFxuICAgICAgICByb29tTmFtZSxcbiAgICAgICAgY3VzdG9tRXZlbnQsXG4gICAgICB9O1xuXG5cbiAgICAgIGNvbnN0IHN1Yk1hbmFnZXJJZCA9IHRoaXMuZ2V0Um9vbUlkRnJvbShyb29tU3ViT3B0aW9ucyk7XG4gICAgICBpZiAoIXRoaXMuc3Vic21hbmFnZXJzW3N1Yk1hbmFnZXJJZF0pIHtcbiAgICAgICAgdGhpcy5zdWJzbWFuYWdlcnNbc3ViTWFuYWdlcklkXSA9IG5ldyBSZWFsdGltZVN1YnNNYW5hZ2VyKFxuICAgICAgICAgIHJvb21TdWJPcHRpb25zLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgaW5zdCA9IHRoaXMuc3Vic21hbmFnZXJzW3N1Yk1hbmFnZXJJZF07XG4gICAgICBpbnN0LmFkZChvYnNlcnZlcik7XG5cbiAgICAgIGluc3Quc3RhcnRMaXN0ZW5JZk5vdFN0YXJ0ZWQodGhpcy5jb3JlLkZFX1JFQUxUSU1FKTtcblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgaW5zdC5yZW1vdmUob2JzZXJ2ZXIpO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG5cblxuXG4gIGxpc3RlbkNoYW5nZXNFbnRpdHlUYWJsZShlbnRpdHlDbGFzc0ZuOiBGdW5jdGlvbikge1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IENsYXNzSGVscGVycy5nZXROYW1lKGVudGl0eUNsYXNzRm4pO1xuICAgIHJldHVybiB0aGlzLmxpc3RlbkNoYW5nZXNFbnRpdHkoZW50aXR5Q2xhc3NGbiwgdm9pZCAwLCB7XG4gICAgICBjdXN0b21FdmVudDogU3ltYm9scy5SRUFMVElNRS5UQUJMRV9DSEFOR0UoXG4gICAgICAgIHRoaXMuY29yZS5jdHguY29udGV4dE5hbWUsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICksXG4gICAgfSk7XG4gIH1cblxuXG5cblxuICAvKipcbiAgICogQ2hhbmdlcyB0cmlnZ2VyIG9uIGJhY2tlbmQgbmVlZHMgdG8gYmUgZG9uZSBtYW51YWxseS4uIGV4YW1wbGUgY29kZTpcbiAgICpcbiAgICogLi4uXG4gICAqIENvbnRleHQuUmVhbHRpbWUuU2VydmVyLlRyaWdnZ2VyRW50aXR5Q2hhbmdlcyhteUVudGl0eUluc3RhbmNlKTtcbiAgICogLy8gb3JcbiAgICogQ29udGV4dC5SZWFsdGltZS5TZXJ2ZXIuVHJpZ2dnZXJFbnRpdHlQcm9wZXJ0eUNoYW5nZXMobXlFbnRpdHlJbnN0YW5jZSx7IHByb3BlcnR5OiAnZ2VvbG9jYXRpb25YJyB9KTtcbiAgICogLi4uXG4gICAqL1xuICBsaXN0ZW5DaGFuZ2VzRW50aXR5T2JqPFQgZXh0ZW5kcyBCYXNlRW50aXR5PihcbiAgICBlbnRpdHk6IFQsXG4gICAgb3B0aW9ucz86IFJlYWx0aW1lTW9kZWxzLkNoYW5nZU9wdGlvbixcbiAgKSB7XG4gICAgY29uc3QgY2xhc3NGbiA9IENsYXNzSGVscGVycy5nZXRDbGFzc0ZuRnJvbU9iamVjdChlbnRpdHkpO1xuICAgIGNvbnN0IHVuaXF1ZUtleSA9IENsYXNzSGVscGVycy5nZXRVbmlxdUtleShjbGFzc0ZuKTtcbiAgICByZXR1cm4gdGhpcy5saXN0ZW5DaGFuZ2VzRW50aXR5KGNsYXNzRm4sIGVudGl0eVt1bmlxdWVLZXldLCBvcHRpb25zKTtcbiAgfVxuXG5cblxuICBsaXN0ZW5DaGFuZ2VzQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmxpc3RlbkNoYW5nZXNFbnRpdHkodm9pZCAwLCB2b2lkIDAsIHtcbiAgICAgIGN1c3RvbUV2ZW50LFxuICAgIH0pO1xuICB9XG5cblxuXG4gIHByaXZhdGUgZ2V0Um9vbUlkRnJvbShvcHRpb25zOiBSZWFsdGltZU1vZGVscy5TdWJzTWFuYWdlck9wdCkge1xuICAgIGNvbnN0IHVybCA9IG5ldyBVUkwob3B0aW9ucy5jb3JlLmN0eC5ob3N0KTtcbiAgICByZXR1cm4gYCR7dGhpcy5jb3JlLmN0eC5jb250ZXh0TmFtZX06JHt1cmwub3JpZ2lufXwke29wdGlvbnMucm9vbU5hbWV9fCR7b3B0aW9ucy5wcm9wZXJ0eX18JHtvcHRpb25zLmN1c3RvbUV2ZW50fWA7XG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbiBsaWIvcmVhbHRpbWUvcmVhbHRpbWUtY2xpZW50LnRzIl19
@@ -0,0 +1,54 @@
1
+ import { RealtimeClient } from './realtime-client';
2
+ import { RealtimeServer } from './realtime-server';
3
+ import { RealtimeStrategyIpc, RealtimeStrategyMock, RealtimeStrategySocketIO, } from './realtime-strategy'; /* */
4
+ import { Helpers } from 'tnp-core/browser';
5
+ /**
6
+ * Realtime class
7
+ * - mock (when browser-browser)
8
+ * - sockets (from socket io when backend-browser)
9
+ * - ipc (when electron is used or between processes)
10
+ * - webworker (when webworker is used in browser or nodejs)
11
+ */
12
+ export class RealtimeCore {
13
+ constructor(ctx) {
14
+ this.ctx = ctx;
15
+ this.allHttpMethods = [
16
+ 'GET',
17
+ 'POST',
18
+ 'PUT',
19
+ 'DELETE',
20
+ 'PATCH',
21
+ 'OPTIONS',
22
+ 'HEAD',
23
+ ];
24
+ this.strategy = this.resolveStrategy();
25
+ ctx.logFramework &&
26
+ console.log(`[taon] realtime strategy: ${this.strategy}`);
27
+ this.client = new RealtimeClient(this);
28
+ this.server = new RealtimeServer(this);
29
+ }
30
+ resolveStrategy() {
31
+ if (this.ctx.mode === 'backend-frontend(websql)') {
32
+ return new RealtimeStrategyMock(this.ctx);
33
+ }
34
+ if (this.ctx.mode === 'backend-frontend(ipc-electron)') {
35
+ return new RealtimeStrategyIpc(this.ctx);
36
+ }
37
+ return new RealtimeStrategySocketIO(this.ctx);
38
+ }
39
+ pathFor(namespace) {
40
+ const uri = this.ctx.uri;
41
+ let nsp = namespace ? namespace : '';
42
+ nsp = nsp === '/' ? '' : nsp;
43
+ const pathname = uri.pathname !== '/' ? uri.pathname : '';
44
+ let prefix = `taonContext-`;
45
+ if (Helpers.isElectron) {
46
+ prefix = ``;
47
+ }
48
+ const href = `${uri.origin}${pathname}/${prefix}${nsp}`;
49
+ return new URL(href);
50
+ }
51
+ }
52
+ ;
53
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-core.ts
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3Rhb24vcHJvamVjdHMvdGFvbi9zcmMvbGliL3JlYWx0aW1lL3JlYWx0aW1lLWNvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRCxPQUFPLEVBQUksbUJBQW1CLEVBQUksb0JBQW9CLEVBQUksd0JBQXdCLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQyxDQUFBLEtBQUs7QUFPdEgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzNDOzs7Ozs7R0FNRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBc0N2QixZQUFtQixHQUFvQjtRQUFwQixRQUFHLEdBQUgsR0FBRyxDQUFpQjtRQXBDOUIsbUJBQWMsR0FBRztZQUN4QixLQUFLO1lBQ0wsTUFBTTtZQUNOLEtBQUs7WUFDTCxRQUFRO1lBQ1IsT0FBTztZQUNQLFNBQVM7WUFDVCxNQUFNO1NBQ1AsQ0FBQztRQTZCQSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN2QyxHQUFHLENBQUMsWUFBWTtZQUNkLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBSU8sZUFBZTtRQUNyQixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLDBCQUEwQixFQUFFLENBQUM7WUFDakQsT0FBTyxJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxnQ0FBZ0MsRUFBRSxDQUFDO1lBQ3ZELE9BQU8sSUFBSSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0MsQ0FBQztRQU9ELE9BQU8sSUFBSSx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUlNLE9BQU8sQ0FBQyxTQUFrQjtRQUMvQixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQztRQUN6QixJQUFJLEdBQUcsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3JDLEdBQUcsR0FBRyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztRQUM3QixNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQzFELElBQUksTUFBTSxHQUFHLGNBQWMsQ0FBQztRQUM1QixJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QixNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUNELE1BQU0sSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDLE1BQU0sR0FBRyxRQUFRLElBQUksTUFBTSxHQUFHLEdBQUcsRUFBRSxDQUFDO1FBRXhELE9BQU8sSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFRLENBQUM7SUFDOUIsQ0FBQztDQUVGO0FBRUEsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywrREFBK0QiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5pbXBvcnQgeyBTb2NrZXQgYXMgU29ja2V0Q2xpZW50IH0gZnJvbSAnc29ja2V0LmlvLWNsaWVudCc7XG5pbXBvcnQgdHlwZSB7IEVuZHBvaW50Q29udGV4dCB9IGZyb20gJy4uL2VuZHBvaW50LWNvbnRleHQnO1xuaW1wb3J0IHsgUmVhbHRpbWVDbGllbnQgfSBmcm9tICcuL3JlYWx0aW1lLWNsaWVudCc7XG5pbXBvcnQgeyBSZWFsdGltZVNlcnZlciB9IGZyb20gJy4vcmVhbHRpbWUtc2VydmVyJztcbmltcG9ydCB0eXBlIHsgUmVhbHRpbWVTdHJhdGVneSB9IGZyb20gJy4vcmVhbHRpbWUtc3RyYXRlZ3knO1xuaW1wb3J0IHsgICBSZWFsdGltZVN0cmF0ZWd5SXBjLCAgIFJlYWx0aW1lU3RyYXRlZ3lNb2NrLCAgIFJlYWx0aW1lU3RyYXRlZ3lTb2NrZXRJTywgfSBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5JzsvKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuXG5pbXBvcnQgeyBEZWZhdWx0RXZlbnRzTWFwIH0gZnJvbSAnc29ja2V0LmlvL2Rpc3QvdHlwZWQtZXZlbnRzJztcbmltcG9ydCB7IFNlcnZlciB9IGZyb20gJ3NvY2tldC5pbyc7XG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAndG5wLWNvcmUvYnJvd3Nlcic7XG5cblxuLyoqXG4gKiBSZWFsdGltZSBjbGFzc1xuICogLSBtb2NrICh3aGVuIGJyb3dzZXItYnJvd3NlcilcbiAqIC0gc29ja2V0cyAoZnJvbSBzb2NrZXQgaW8gd2hlbiBiYWNrZW5kLWJyb3dzZXIpXG4gKiAtIGlwYyAod2hlbiBlbGVjdHJvbiBpcyB1c2VkIG9yIGJldHdlZW4gcHJvY2Vzc2VzKVxuICogLSB3ZWJ3b3JrZXIgKHdoZW4gd2Vid29ya2VyIGlzIHVzZWQgaW4gYnJvd3NlciBvciBub2RlanMpXG4gKi9cbmV4cG9ydCBjbGFzcyBSZWFsdGltZUNvcmUge1xuXG4gIHJlYWRvbmx5IGFsbEh0dHBNZXRob2RzID0gW1xuICAgICdHRVQnLFxuICAgICdQT1NUJyxcbiAgICAnUFVUJyxcbiAgICAnREVMRVRFJyxcbiAgICAnUEFUQ0gnLFxuICAgICdPUFRJT05TJyxcbiAgICAnSEVBRCcsXG4gIF07XG4gIHB1YmxpYyByZWFkb25seSBjbGllbnQ6IFJlYWx0aW1lQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmVyOiBSZWFsdGltZVNlcnZlcjtcbiAgcHVibGljIHJlYWRvbmx5IHN0cmF0ZWd5OiBSZWFsdGltZVN0cmF0ZWd5O1xuICAvKipcbiAgICogZ2xvYmFsIEZFIHNvY2tldFxuICAgKi9cbiAgcHVibGljIEZFOiBTb2NrZXRDbGllbnQ8RGVmYXVsdEV2ZW50c01hcCwgRGVmYXVsdEV2ZW50c01hcD47XG4gIC8qKlxuICAgKiBzb2NrZXQgZm9yIG5hbWVzcGFjZXMgYW5kIHJvb21zXG4gICAqL1xuICBwdWJsaWMgRkVfUkVBTFRJTUU6IFNvY2tldENsaWVudDxEZWZhdWx0RXZlbnRzTWFwLCBEZWZhdWx0RXZlbnRzTWFwPjtcbiAgLyoqXG4gICAqIGdsb2JhbCBCRSBzb2NrZXRcbiAgICovXG4gIHB1YmxpYyBCRTogU2VydmVyPERlZmF1bHRFdmVudHNNYXAsIERlZmF1bHRFdmVudHNNYXAsIERlZmF1bHRFdmVudHNNYXAsIGFueT47XG4gIC8qKlxuICAgKiBzb2NrZXQgZm9yIG5hbWVzcGFjZXMgYW5kIHJvb21zXG4gICAqL1xuICBwdWJsaWMgQkVfUkVBTFRJTUU6IFNlcnZlcjxcbiAgICBEZWZhdWx0RXZlbnRzTWFwLFxuICAgIERlZmF1bHRFdmVudHNNYXAsXG4gICAgRGVmYXVsdEV2ZW50c01hcCxcbiAgICBhbnlcbiAgPjtcblxuXG5cbiAgY29uc3RydWN0b3IocHVibGljIGN0eDogRW5kcG9pbnRDb250ZXh0KSB7XG4gICAgdGhpcy5zdHJhdGVneSA9IHRoaXMucmVzb2x2ZVN0cmF0ZWd5KCk7XG4gICAgY3R4LmxvZ0ZyYW1ld29yayAmJlxuICAgICAgY29uc29sZS5sb2coYFt0YW9uXSByZWFsdGltZSBzdHJhdGVneTogJHt0aGlzLnN0cmF0ZWd5fWApO1xuICAgIHRoaXMuY2xpZW50ID0gbmV3IFJlYWx0aW1lQ2xpZW50KHRoaXMpO1xuICAgIHRoaXMuc2VydmVyID0gbmV3IFJlYWx0aW1lU2VydmVyKHRoaXMpO1xuICB9XG5cblxuXG4gIHByaXZhdGUgcmVzb2x2ZVN0cmF0ZWd5KCk6IFJlYWx0aW1lU3RyYXRlZ3kge1xuICAgIGlmICh0aGlzLmN0eC5tb2RlID09PSAnYmFja2VuZC1mcm9udGVuZCh3ZWJzcWwpJykge1xuICAgICAgcmV0dXJuIG5ldyBSZWFsdGltZVN0cmF0ZWd5TW9jayh0aGlzLmN0eCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmN0eC5tb2RlID09PSAnYmFja2VuZC1mcm9udGVuZChpcGMtZWxlY3Ryb24pJykge1xuICAgICAgcmV0dXJuIG5ldyBSZWFsdGltZVN0cmF0ZWd5SXBjKHRoaXMuY3R4KTtcbiAgICB9XG5cblxuXG5cblxuXG4gICAgcmV0dXJuIG5ldyBSZWFsdGltZVN0cmF0ZWd5U29ja2V0SU8odGhpcy5jdHgpO1xuICB9XG5cblxuXG4gIHB1YmxpYyBwYXRoRm9yKG5hbWVzcGFjZT86IHN0cmluZykge1xuICAgIGNvbnN0IHVyaSA9IHRoaXMuY3R4LnVyaTtcbiAgICBsZXQgbnNwID0gbmFtZXNwYWNlID8gbmFtZXNwYWNlIDogJyc7XG4gICAgbnNwID0gbnNwID09PSAnLycgPyAnJyA6IG5zcDtcbiAgICBjb25zdCBwYXRobmFtZSA9IHVyaS5wYXRobmFtZSAhPT0gJy8nID8gdXJpLnBhdGhuYW1lIDogJyc7XG4gICAgbGV0IHByZWZpeCA9IGB0YW9uQ29udGV4dC1gO1xuICAgIGlmIChIZWxwZXJzLmlzRWxlY3Ryb24pIHtcbiAgICAgIHByZWZpeCA9IGBgO1xuICAgIH1cbiAgICBjb25zdCBocmVmID0gYCR7dXJpLm9yaWdpbn0ke3BhdGhuYW1lfS8ke3ByZWZpeH0ke25zcH1gO1xuXG4gICAgcmV0dXJuIG5ldyBVUkwoaHJlZikgYXMgVVJMO1xuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL3JlYWx0aW1lL3JlYWx0aW1lLWNvcmUudHMiXX0=