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,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/websql';
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uL3Byb2plY3RzL3Rhb24vc3JjL2xpYi9yZWFsdGltZS9yZWFsdGltZS1jb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFJLG1CQUFtQixFQUFJLG9CQUFvQixFQUFJLHdCQUF3QixHQUFHLE1BQU0scUJBQXFCLENBQUMsQ0FBQSxLQUFLO0FBT3RILE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUcxQzs7Ozs7O0dBTUc7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQXNDdkIsWUFBbUIsR0FBb0I7UUFBcEIsUUFBRyxHQUFILEdBQUcsQ0FBaUI7UUFwQzlCLG1CQUFjLEdBQUc7WUFDeEIsS0FBSztZQUNMLE1BQU07WUFDTixLQUFLO1lBQ0wsUUFBUTtZQUNSLE9BQU87WUFDUCxTQUFTO1lBQ1QsTUFBTTtTQUNQLENBQUM7UUE2QkEsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkMsR0FBRyxDQUFDLFlBQVk7WUFDZCxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUlPLGVBQWU7UUFDckIsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSywwQkFBMEIsRUFBRSxDQUFDO1lBQ2pELE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssZ0NBQWdDLEVBQUUsQ0FBQztZQUN2RCxPQUFPLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFPRCxPQUFPLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFJTSxPQUFPLENBQUMsU0FBa0I7UUFDL0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUM7UUFDekIsSUFBSSxHQUFHLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNyQyxHQUFHLEdBQUcsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDN0IsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLFFBQVEsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMxRCxJQUFJLE1BQU0sR0FBRyxjQUFjLENBQUM7UUFDNUIsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEdBQUcsUUFBUSxJQUFJLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUV4RCxPQUFPLElBQUksR0FBRyxDQUFDLElBQUksQ0FBUSxDQUFDO0lBQzlCLENBQUM7Q0FFRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsK0RBQStEIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgU29ja2V0IGFzIFNvY2tldENsaWVudCB9IGZyb20gJ3NvY2tldC5pby1jbGllbnQnO1xuaW1wb3J0IHR5cGUgeyBFbmRwb2ludENvbnRleHQgfSBmcm9tICcuLi9lbmRwb2ludC1jb250ZXh0JztcbmltcG9ydCB7IFJlYWx0aW1lQ2xpZW50IH0gZnJvbSAnLi9yZWFsdGltZS1jbGllbnQnO1xuaW1wb3J0IHsgUmVhbHRpbWVTZXJ2ZXIgfSBmcm9tICcuL3JlYWx0aW1lLXNlcnZlcic7XG5pbXBvcnQgdHlwZSB7IFJlYWx0aW1lU3RyYXRlZ3kgfSBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5JztcbmltcG9ydCB7ICAgUmVhbHRpbWVTdHJhdGVneUlwYywgICBSZWFsdGltZVN0cmF0ZWd5TW9jaywgICBSZWFsdGltZVN0cmF0ZWd5U29ja2V0SU8sIH0gZnJvbSAnLi9yZWFsdGltZS1zdHJhdGVneSc7LyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cblxuaW1wb3J0IHsgRGVmYXVsdEV2ZW50c01hcCB9IGZyb20gJ3NvY2tldC5pby9kaXN0L3R5cGVkLWV2ZW50cyc7XG5pbXBvcnQgeyBTZXJ2ZXIgfSBmcm9tICdzb2NrZXQuaW8nO1xuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5cblxuLyoqXG4gKiBSZWFsdGltZSBjbGFzc1xuICogLSBtb2NrICh3aGVuIGJyb3dzZXItYnJvd3NlcilcbiAqIC0gc29ja2V0cyAoZnJvbSBzb2NrZXQgaW8gd2hlbiBiYWNrZW5kLWJyb3dzZXIpXG4gKiAtIGlwYyAod2hlbiBlbGVjdHJvbiBpcyB1c2VkIG9yIGJldHdlZW4gcHJvY2Vzc2VzKVxuICogLSB3ZWJ3b3JrZXIgKHdoZW4gd2Vid29ya2VyIGlzIHVzZWQgaW4gYnJvd3NlciBvciBub2RlanMpXG4gKi9cbmV4cG9ydCBjbGFzcyBSZWFsdGltZUNvcmUge1xuXG4gIHJlYWRvbmx5IGFsbEh0dHBNZXRob2RzID0gW1xuICAgICdHRVQnLFxuICAgICdQT1NUJyxcbiAgICAnUFVUJyxcbiAgICAnREVMRVRFJyxcbiAgICAnUEFUQ0gnLFxuICAgICdPUFRJT05TJyxcbiAgICAnSEVBRCcsXG4gIF07XG4gIHB1YmxpYyByZWFkb25seSBjbGllbnQ6IFJlYWx0aW1lQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmVyOiBSZWFsdGltZVNlcnZlcjtcbiAgcHVibGljIHJlYWRvbmx5IHN0cmF0ZWd5OiBSZWFsdGltZVN0cmF0ZWd5O1xuICAvKipcbiAgICogZ2xvYmFsIEZFIHNvY2tldFxuICAgKi9cbiAgcHVibGljIEZFOiBTb2NrZXRDbGllbnQ8RGVmYXVsdEV2ZW50c01hcCwgRGVmYXVsdEV2ZW50c01hcD47XG4gIC8qKlxuICAgKiBzb2NrZXQgZm9yIG5hbWVzcGFjZXMgYW5kIHJvb21zXG4gICAqL1xuICBwdWJsaWMgRkVfUkVBTFRJTUU6IFNvY2tldENsaWVudDxEZWZhdWx0RXZlbnRzTWFwLCBEZWZhdWx0RXZlbnRzTWFwPjtcbiAgLyoqXG4gICAqIGdsb2JhbCBCRSBzb2NrZXRcbiAgICovXG4gIHB1YmxpYyBCRTogU2VydmVyPERlZmF1bHRFdmVudHNNYXAsIERlZmF1bHRFdmVudHNNYXAsIERlZmF1bHRFdmVudHNNYXAsIGFueT47XG4gIC8qKlxuICAgKiBzb2NrZXQgZm9yIG5hbWVzcGFjZXMgYW5kIHJvb21zXG4gICAqL1xuICBwdWJsaWMgQkVfUkVBTFRJTUU6IFNlcnZlcjxcbiAgICBEZWZhdWx0RXZlbnRzTWFwLFxuICAgIERlZmF1bHRFdmVudHNNYXAsXG4gICAgRGVmYXVsdEV2ZW50c01hcCxcbiAgICBhbnlcbiAgPjtcblxuXG5cbiAgY29uc3RydWN0b3IocHVibGljIGN0eDogRW5kcG9pbnRDb250ZXh0KSB7XG4gICAgdGhpcy5zdHJhdGVneSA9IHRoaXMucmVzb2x2ZVN0cmF0ZWd5KCk7XG4gICAgY3R4LmxvZ0ZyYW1ld29yayAmJlxuICAgICAgY29uc29sZS5sb2coYFt0YW9uXSByZWFsdGltZSBzdHJhdGVneTogJHt0aGlzLnN0cmF0ZWd5fWApO1xuICAgIHRoaXMuY2xpZW50ID0gbmV3IFJlYWx0aW1lQ2xpZW50KHRoaXMpO1xuICAgIHRoaXMuc2VydmVyID0gbmV3IFJlYWx0aW1lU2VydmVyKHRoaXMpO1xuICB9XG5cblxuXG4gIHByaXZhdGUgcmVzb2x2ZVN0cmF0ZWd5KCk6IFJlYWx0aW1lU3RyYXRlZ3kge1xuICAgIGlmICh0aGlzLmN0eC5tb2RlID09PSAnYmFja2VuZC1mcm9udGVuZCh3ZWJzcWwpJykge1xuICAgICAgcmV0dXJuIG5ldyBSZWFsdGltZVN0cmF0ZWd5TW9jayh0aGlzLmN0eCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmN0eC5tb2RlID09PSAnYmFja2VuZC1mcm9udGVuZChpcGMtZWxlY3Ryb24pJykge1xuICAgICAgcmV0dXJuIG5ldyBSZWFsdGltZVN0cmF0ZWd5SXBjKHRoaXMuY3R4KTtcbiAgICB9XG5cblxuXG5cblxuXG4gICAgcmV0dXJuIG5ldyBSZWFsdGltZVN0cmF0ZWd5U29ja2V0SU8odGhpcy5jdHgpO1xuICB9XG5cblxuXG4gIHB1YmxpYyBwYXRoRm9yKG5hbWVzcGFjZT86IHN0cmluZykge1xuICAgIGNvbnN0IHVyaSA9IHRoaXMuY3R4LnVyaTtcbiAgICBsZXQgbnNwID0gbmFtZXNwYWNlID8gbmFtZXNwYWNlIDogJyc7XG4gICAgbnNwID0gbnNwID09PSAnLycgPyAnJyA6IG5zcDtcbiAgICBjb25zdCBwYXRobmFtZSA9IHVyaS5wYXRobmFtZSAhPT0gJy8nID8gdXJpLnBhdGhuYW1lIDogJyc7XG4gICAgbGV0IHByZWZpeCA9IGB0YW9uQ29udGV4dC1gO1xuICAgIGlmIChIZWxwZXJzLmlzRWxlY3Ryb24pIHtcbiAgICAgIHByZWZpeCA9IGBgO1xuICAgIH1cbiAgICBjb25zdCBocmVmID0gYCR7dXJpLm9yaWdpbn0ke3BhdGhuYW1lfS8ke3ByZWZpeH0ke25zcH1gO1xuXG4gICAgcmV0dXJuIG5ldyBVUkwoaHJlZikgYXMgVVJMO1xuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL3JlYWx0aW1lL3JlYWx0aW1lLWNvcmUudHMiXX0=
@@ -0,0 +1,158 @@
1
+ import { Symbols } from '../symbols';
2
+ import { Helpers, _ } from 'tnp-core/websql';
3
+ import { ClassHelpers } from '../helpers/class-helpers';
4
+ const SOCKET_EVENT_DEBOUNCE = 500;
5
+ export class RealtimeServer {
6
+ constructor(core) {
7
+ this.core = core;
8
+ this.jobs = {};
9
+ this.core = core;
10
+ if (!core.ctx.disabledRealtime) {
11
+ this.init();
12
+ }
13
+ }
14
+ init() {
15
+ const nspPath = {
16
+ global: this.core.pathFor(),
17
+ realtime: this.core.pathFor(Symbols.REALTIME.NAMESPACE(this.core.ctx.contextName)),
18
+ };
19
+ this.core.BE = new this.core.strategy.Server(this.core.ctx.serverTcpUdp, {
20
+ path: nspPath.global.pathname,
21
+ cors: {
22
+ origin: this.core.ctx.config.frontendHost,
23
+ methods: this.core.allHttpMethods,
24
+ },
25
+ });
26
+ this.core.ctx.logRealtime &&
27
+ console.info(`CREATE GLOBAL NAMESPACE: '${this.core.BE.path()}' , path: '${nspPath.global.pathname}'`);
28
+ this.core.BE.on('connection', clientSocket => {
29
+ if (Helpers.isElectron) {
30
+ // @ts-ignore
31
+ this.core.BE.emit('connect'); // TODO QUICK_FIX
32
+ }
33
+ console.info(`client conected to namespace "${clientSocket.nsp?.name}", host: ${this.core.ctx.host}`);
34
+ });
35
+ this.core.BE_REALTIME = new this.core.strategy.Server(this.core.ctx.serverTcpUdp, {
36
+ path: nspPath.realtime.pathname,
37
+ cors: {
38
+ origin: this.core.ctx.config.frontendHost,
39
+ methods: this.core.allHttpMethods,
40
+ },
41
+ });
42
+ this.core.ctx.logRealtime &&
43
+ console.info(`CREATE REALTIME NAMESPACE: '${this.core.BE_REALTIME.path()}' , path: '${nspPath.realtime.pathname}' `);
44
+ this.core.BE_REALTIME.on('connection', backendSocketForClient => {
45
+ console.info(`client conected to namespace "${backendSocketForClient.nsp?.name}", host: ${this.core.ctx.host}`);
46
+ if (Helpers.isElectron) {
47
+ // @ts-ignore
48
+ backendSocketForClient = this.core.BE_REALTIME; // TODO QUICK_FIX
49
+ this.core.BE_REALTIME.emit('connect');
50
+ }
51
+ backendSocketForClient.on(Symbols.REALTIME.ROOM_NAME.SUBSCRIBE.CUSTOM(this.core.ctx.contextName), roomName => {
52
+ console.info(`Joining room ${roomName} in namespace REALTIME` +
53
+ ` host: ${this.core.ctx.contextName}/${this.core.ctx.host}`);
54
+ backendSocketForClient.join(roomName);
55
+ });
56
+ backendSocketForClient.on(Symbols.REALTIME.ROOM_NAME.SUBSCRIBE.ENTITY_UPDATE_EVENTS(this.core.ctx.contextName), roomName => {
57
+ console.info(`Joining room ${roomName} in namespace REALTIME` +
58
+ ` host: ${this.core.ctx.contextName}/${this.core.ctx.host}`);
59
+ backendSocketForClient.join(roomName);
60
+ });
61
+ backendSocketForClient.on(Symbols.REALTIME.ROOM_NAME.SUBSCRIBE.ENTITY_PROPERTY_UPDATE_EVENTS(this.core.ctx.contextName), roomName => {
62
+ console.info(`Joining room ${roomName} in namespace REALTIME ` +
63
+ ` host: ${this.core.ctx.contextName}/${this.core.ctx.host}`);
64
+ backendSocketForClient.join(roomName);
65
+ });
66
+ backendSocketForClient.on(Symbols.REALTIME.ROOM_NAME.UNSUBSCRIBE.CUSTOM(this.core.ctx.contextName), roomName => {
67
+ console.info(`Leaving room ${roomName} in namespace REALTIME` +
68
+ ` host: ${this.core.ctx.contextName}/${this.core.ctx.host}`);
69
+ backendSocketForClient.leave(roomName);
70
+ });
71
+ backendSocketForClient.on(Symbols.REALTIME.ROOM_NAME.UNSUBSCRIBE.ENTITY_UPDATE_EVENTS(this.core.ctx.contextName), roomName => {
72
+ console.info(`Leaving room ${roomName} in namespace REALTIME ` +
73
+ ` host: ${this.core.ctx.contextName}/${this.core.ctx.host}`);
74
+ backendSocketForClient.leave(roomName);
75
+ });
76
+ backendSocketForClient.on(Symbols.REALTIME.ROOM_NAME.UNSUBSCRIBE.ENTITY_PROPERTY_UPDATE_EVENTS(this.core.ctx.contextName), roomName => {
77
+ console.info(`Leaving room ${roomName} in namespace REALTIME ` +
78
+ ` host: ${this.core.ctx.contextName}/${this.core.ctx.host}`);
79
+ backendSocketForClient.leave(roomName);
80
+ });
81
+ });
82
+ }
83
+ triggerChanges(entityObjOrClass, property, valueOfUniquPropery, customEvent, customEventData) {
84
+ let roomName;
85
+ if (this.core.ctx.disabledRealtime) {
86
+ return;
87
+ }
88
+ if (customEvent) {
89
+ roomName = Symbols.REALTIME.ROOM_NAME.CUSTOM(this.core.ctx.contextName, customEvent);
90
+ }
91
+ else {
92
+ let entityFn = entityObjOrClass;
93
+ const enittyIsObject = !_.isFunction(entityObjOrClass) && _.isObject(entityObjOrClass);
94
+ if (enittyIsObject) {
95
+ entityFn = ClassHelpers.getClassFnFromObject(entityObjOrClass);
96
+ }
97
+ const uniqueKey = ClassHelpers.getUniquKey(entityFn);
98
+ if (enittyIsObject) {
99
+ valueOfUniquPropery = entityObjOrClass[uniqueKey];
100
+ }
101
+ if (!valueOfUniquPropery) {
102
+ Helpers.error(`[Taon][Realtime] Entity without iD ! ${ClassHelpers.getName(entityFn)} `, true, true);
103
+ return;
104
+ }
105
+ roomName = _.isString(property)
106
+ ? Symbols.REALTIME.ROOM_NAME.UPDATE_ENTITY_PROPERTY(this.core.ctx.contextName, ClassHelpers.getName(entityFn), property, valueOfUniquPropery)
107
+ : Symbols.REALTIME.ROOM_NAME.UPDATE_ENTITY(this.core.ctx.contextName, ClassHelpers.getName(entityFn), valueOfUniquPropery);
108
+ }
109
+ const job = () => {
110
+ console.log(`Trigger realtime: ${this.core.ctx.contextName}/${roomName}`);
111
+ this.core.BE_REALTIME.in(roomName).emit(roomName, // roomName == eventName in room na
112
+ customEventData ? customEventData : '');
113
+ };
114
+ if (!_.isFunction(this.jobs[roomName])) {
115
+ this.jobs[roomName] = _.debounce(() => {
116
+ job();
117
+ }, SOCKET_EVENT_DEBOUNCE);
118
+ }
119
+ this.jobs[roomName]();
120
+ }
121
+ trigggerEntityChanges(entityObjOrClass, idToTrigger) {
122
+ if (this.core.ctx.disabledRealtime) {
123
+ const className = ClassHelpers.getName(entityObjOrClass);
124
+ console.warn(`[Taon][TrigggerEntityChanges] Entity "${className}' is not realtime`);
125
+ return;
126
+ }
127
+ this.triggerChanges(entityObjOrClass, void 0, idToTrigger);
128
+ }
129
+ trigggerEntityPropertyChanges(entityObjOrClass, property, idToTrigger) {
130
+ if (this.core.ctx.disabledRealtime) {
131
+ const className = ClassHelpers.getName(entityObjOrClass);
132
+ console.warn(`[Taon][TrigggerEntityPropertyChanges][property=${property}] Entity "${className}' is not realtime`);
133
+ return;
134
+ }
135
+ if (_.isArray(property)) {
136
+ property.forEach(propertyFromArr => {
137
+ this.triggerChanges(entityObjOrClass, propertyFromArr, idToTrigger);
138
+ });
139
+ }
140
+ else {
141
+ this.triggerChanges(entityObjOrClass, property, idToTrigger);
142
+ }
143
+ }
144
+ triggerCustomEvent(customEvent, dataToPush) {
145
+ this.triggerChanges(void 0, void 0, void 0, customEvent, dataToPush);
146
+ }
147
+ trigggerEntityTableChanges(entityClass) {
148
+ const className = ClassHelpers.getName(entityClass);
149
+ if (this.core.ctx.disabledRealtime) {
150
+ console.warn(`[Taon][TrigggerEntityTableChanges] Entity "${className}' is not realtime`);
151
+ return;
152
+ }
153
+ this.triggerChanges(entityClass, void 0, void 0, Symbols.REALTIME.TABLE_CHANGE(this.core.ctx.contextName, className));
154
+ }
155
+ }
156
+ ;
157
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-server.ts
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtc2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24vcHJvamVjdHMvdGFvbi9zcmMvbGliL3JlYWx0aW1lL3JlYWx0aW1lLXNlcnZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBSXhELE1BQU0scUJBQXFCLEdBQUcsR0FBRyxDQUFDO0FBRWxDLE1BQU0sT0FBTyxjQUFjO0lBRXpCLFlBQW9CLElBQWtCO1FBQWxCLFNBQUksR0FBSixJQUFJLENBQWM7UUFEOUIsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUVoQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBRS9CLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVkLENBQUM7SUFDSCxDQUFDO0lBR08sSUFBSTtRQUlWLE1BQU0sT0FBTyxHQUFHO1lBQ2QsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FDekIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQ3REO1NBQ0YsQ0FBQztRQUtGLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FB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QUMsV0FBbUIsRUFBRSxVQUFlO1FBQzVELElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFJTSwwQkFBMEIsQ0FBQyxXQUFxQjtRQUNyRCxNQUFNLFNBQVMsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3BELElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNuQyxPQUFPLENBQUMsSUFBSSxDQUNWLDhDQUE4QyxTQUFTLG1CQUFtQixDQUMzRSxDQUFDO1lBQ0YsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUNqQixXQUFrQixFQUNsQixLQUFLLENBQUMsRUFDTixLQUFLLENBQUMsRUFDTixPQUFPLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQ3BFLENBQUM7SUFDSixDQUFDO0NBRUY7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGlFQUFpRSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5cbmltcG9ydCB7IFN5bWJvbHMgfSBmcm9tICcuLi9zeW1ib2xzJztcbmltcG9ydCB7IEhlbHBlcnMsIF8gfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuaW1wb3J0IHsgUmVhbHRpbWVDb3JlIH0gZnJvbSAnLi9yZWFsdGltZS1jb3JlJztcbmltcG9ydCB7IENsYXNzSGVscGVycyB9IGZyb20gJy4uL2hlbHBlcnMvY2xhc3MtaGVscGVycyc7XG5pbXBvcnQgdHlwZSB7IEJhc2VFbnRpdHkgfSBmcm9tICcuLi9iYXNlLWNsYXNzZXMvYmFzZS1lbnRpdHknO1xuXG5cbmNvbnN0IFNPQ0tFVF9FVkVOVF9ERUJPVU5DRSA9IDUwMDtcblxuZXhwb3J0IGNsYXNzIFJlYWx0aW1lU2VydmVyIHtcbiAgcHJpdmF0ZSBqb2JzID0ge307XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29yZTogUmVhbHRpbWVDb3JlKSB7XG4gICAgdGhpcy5jb3JlID0gY29yZTtcbiAgICBpZiAoIWNvcmUuY3R4LmRpc2FibGVkUmVhbHRpbWUpIHtcblxuICAgICAgdGhpcy5pbml0KCk7XG5cbiAgICB9XG4gIH1cblxuXG4gIHByaXZhdGUgaW5pdCgpIHtcblxuXG5cbiAgICBjb25zdCBuc3BQYXRoID0ge1xuICAgICAgZ2xvYmFsOiB0aGlzLmNvcmUucGF0aEZvcigpLFxuICAgICAgcmVhbHRpbWU6IHRoaXMuY29yZS5wYXRoRm9yKFxuICAgICAgICBTeW1ib2xzLlJFQUxUSU1FLk5BTUVTUEFDRSh0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lKSxcbiAgICAgICksXG4gICAgfTtcblxuXG5cblxuICAgIHRoaXMuY29yZS5CRSA9IG5ldyB0aGlzLmNvcmUuc3RyYXRlZ3kuU2VydmVyKHRoaXMuY29yZS5jdHguc2VydmVyVGNwVWRwLCB7XG4gICAgICBwYXRoOiBuc3BQYXRoLmdsb2JhbC5wYXRobmFtZSxcblxuICAgICAgY29yczoge1xuICAgICAgICBvcmlnaW46IHRoaXMuY29yZS5jdHguY29uZmlnLmZyb250ZW5kSG9zdCxcbiAgICAgICAgbWV0aG9kczogdGhpcy5jb3JlLmFsbEh0dHBNZXRob2RzLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHRoaXMuY29yZS5jdHgubG9nUmVhbHRpbWUgJiZcbiAgICAgIGNvbnNvbGUuaW5mbyhcbiAgICAgICAgYENSRUFURSBHTE9CQUwgTkFNRVNQQUNFOiAnJHt0aGlzLmNvcmUuQkUucGF0aCgpfScgLCBwYXRoOiAnJHtcbiAgICAgICAgICBuc3BQYXRoLmdsb2JhbC5wYXRobmFtZVxuICAgICAgICB9J2AsXG4gICAgICApO1xuXG4gICAgdGhpcy5jb3JlLkJFLm9uKCdjb25uZWN0aW9uJywgY2xpZW50U29ja2V0ID0+IHtcbiAgICAgIGlmIChIZWxwZXJzLmlzRWxlY3Ryb24pIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICB0aGlzLmNvcmUuQkUuZW1pdCgnY29ubmVjdCcpOyAvLyBUT0RPIFFVSUNLX0ZJWFxuICAgICAgfVxuICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICBgY2xpZW50IGNvbmVjdGVkIHRvIG5hbWVzcGFjZSBcIiR7Y2xpZW50U29ja2V0Lm5zcD8ubmFtZX1cIiwgIGhvc3Q6ICR7dGhpcy5jb3JlLmN0eC5ob3N0fWAsXG4gICAgICApO1xuICAgIH0pO1xuXG5cblxuXG4gICAgdGhpcy5jb3JlLkJFX1JFQUxUSU1FID0gbmV3IHRoaXMuY29yZS5zdHJhdGVneS5TZXJ2ZXIoXG4gICAgICB0aGlzLmNvcmUuY3R4LnNlcnZlclRjcFVkcCxcbiAgICAgIHtcbiAgICAgICAgcGF0aDogbnNwUGF0aC5yZWFsdGltZS5wYXRobmFtZSxcbiAgICAgICAgY29yczoge1xuICAgICAgICAgIG9yaWdpbjogdGhpcy5jb3JlLmN0eC5jb25maWcuZnJvbnRlbmRIb3N0LFxuICAgICAgICAgIG1ldGhvZHM6IHRoaXMuY29yZS5hbGxIdHRwTWV0aG9kcyxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgKTtcblxuICAgIHRoaXMuY29yZS5jdHgubG9nUmVhbHRpbWUgJiZcbiAgICAgIGNvbnNvbGUuaW5mbyhcbiAgICAgICAgYENSRUFURSBSRUFMVElNRSBOQU1FU1BBQ0U6ICcke3RoaXMuY29yZS5CRV9SRUFMVElNRS5wYXRoKCl9JyAsIHBhdGg6ICcke1xuICAgICAgICAgIG5zcFBhdGgucmVhbHRpbWUucGF0aG5hbWVcbiAgICAgICAgfScgYCxcbiAgICAgICk7XG5cbiAgICB0aGlzLmNvcmUuQkVfUkVBTFRJTUUub24oJ2Nvbm5lY3Rpb24nLCBiYWNrZW5kU29ja2V0Rm9yQ2xpZW50ID0+IHtcbiAgICAgIGNvbnNvbGUuaW5mbyhcbiAgICAgICAgYGNsaWVudCBjb25lY3RlZCB0byBuYW1lc3BhY2UgXCIke2JhY2tlbmRTb2NrZXRGb3JDbGllbnQubnNwPy5uYW1lfVwiLCAgaG9zdDogJHt0aGlzLmNvcmUuY3R4Lmhvc3R9YCxcbiAgICAgICk7XG5cbiAgICAgIGlmIChIZWxwZXJzLmlzRWxlY3Ryb24pIHtcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICBiYWNrZW5kU29ja2V0Rm9yQ2xpZW50ID0gdGhpcy5jb3JlLkJFX1JFQUxUSU1FOyAvLyBUT0RPIFFVSUNLX0ZJWFxuICAgICAgICB0aGlzLmNvcmUuQkVfUkVBTFRJTUUuZW1pdCgnY29ubmVjdCcpO1xuICAgICAgfVxuXG4gICAgICBiYWNrZW5kU29ja2V0Rm9yQ2xpZW50Lm9uKFxuICAgICAgICBTeW1ib2xzLlJFQUxUSU1FLlJPT01fTkFNRS5TVUJTQ1JJQkUuQ1VTVE9NKHRoaXMuY29yZS5jdHguY29udGV4dE5hbWUpLFxuICAgICAgICByb29tTmFtZSA9PiB7XG4gICAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgICAgYEpvaW5pbmcgcm9vbSAke3Jvb21OYW1lfSBpbiBuYW1lc3BhY2UgIFJFQUxUSU1FYCArXG4gICAgICAgICAgICAgIGAgaG9zdDogJHt0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lfS8ke3RoaXMuY29yZS5jdHguaG9zdH1gLFxuICAgICAgICAgICk7XG4gICAgICAgICAgYmFja2VuZFNvY2tldEZvckNsaWVudC5qb2luKHJvb21OYW1lKTtcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICAgIGJhY2tlbmRTb2NrZXRGb3JDbGllbnQub24oXG4gICAgICAgIFN5bWJvbHMuUkVBTFRJTUUuUk9PTV9OQU1FLlNVQlNDUklCRS5FTlRJVFlfVVBEQVRFX0VWRU5UUyhcbiAgICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICApLFxuICAgICAgICByb29tTmFtZSA9PiB7XG4gICAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgICAgYEpvaW5pbmcgcm9vbSAke3Jvb21OYW1lfSBpbiBuYW1lc3BhY2UgIFJFQUxUSU1FYCArXG4gICAgICAgICAgICAgIGAgaG9zdDogJHt0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lfS8ke3RoaXMuY29yZS5jdHguaG9zdH1gLFxuICAgICAgICAgICk7XG4gICAgICAgICAgYmFja2VuZFNvY2tldEZvckNsaWVudC5qb2luKHJvb21OYW1lKTtcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICAgIGJhY2tlbmRTb2NrZXRGb3JDbGllbnQub24oXG4gICAgICAgIFN5bWJvbHMuUkVBTFRJTUUuUk9PTV9OQU1FLlNVQlNDUklCRS5FTlRJVFlfUFJPUEVSVFlfVVBEQVRFX0VWRU5UUyhcbiAgICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICApLFxuICAgICAgICByb29tTmFtZSA9PiB7XG4gICAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgICAgYEpvaW5pbmcgcm9vbSAke3Jvb21OYW1lfSBpbiBuYW1lc3BhY2UgUkVBTFRJTUUgYCArXG4gICAgICAgICAgICAgIGAgaG9zdDogJHt0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lfS8ke3RoaXMuY29yZS5jdHguaG9zdH1gLFxuICAgICAgICAgICk7XG4gICAgICAgICAgYmFja2VuZFNvY2tldEZvckNsaWVudC5qb2luKHJvb21OYW1lKTtcbiAgICAgICAgfSxcbiAgICAgICk7XG5cbiAgICAgIGJhY2tlbmRTb2NrZXRGb3JDbGllbnQub24oXG4gICAgICAgIFN5bWJvbHMuUkVBTFRJTUUuUk9PTV9OQU1FLlVOU1VCU0NSSUJFLkNVU1RPTShcbiAgICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICApLFxuICAgICAgICByb29tTmFtZSA9PiB7XG4gICAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgICAgYExlYXZpbmcgcm9vbSAke3Jvb21OYW1lfSBpbiBuYW1lc3BhY2UgIFJFQUxUSU1FYCArXG4gICAgICAgICAgICAgIGAgaG9zdDogJHt0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lfS8ke3RoaXMuY29yZS5jdHguaG9zdH1gLFxuICAgICAgICAgICk7XG4gICAgICAgICAgYmFja2VuZFNvY2tldEZvckNsaWVudC5sZWF2ZShyb29tTmFtZSk7XG4gICAgICAgIH0sXG4gICAgICApO1xuXG4gICAgICBiYWNrZW5kU29ja2V0Rm9yQ2xpZW50Lm9uKFxuICAgICAgICBTeW1ib2xzLlJFQUxUSU1FLlJPT01fTkFNRS5VTlNVQlNDUklCRS5FTlRJVFlfVVBEQVRFX0VWRU5UUyhcbiAgICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICApLFxuICAgICAgICByb29tTmFtZSA9PiB7XG4gICAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgICAgYExlYXZpbmcgcm9vbSAke3Jvb21OYW1lfSBpbiBuYW1lc3BhY2UgUkVBTFRJTUUgYCArXG4gICAgICAgICAgICAgIGAgaG9zdDogJHt0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lfS8ke3RoaXMuY29yZS5jdHguaG9zdH1gLFxuICAgICAgICAgICk7XG4gICAgICAgICAgYmFja2VuZFNvY2tldEZvckNsaWVudC5sZWF2ZShyb29tTmFtZSk7XG4gICAgICAgIH0sXG4gICAgICApO1xuXG4gICAgICBiYWNrZW5kU29ja2V0Rm9yQ2xpZW50Lm9uKFxuICAgICAgICBTeW1ib2xzLlJFQUxUSU1FLlJPT01fTkFNRS5VTlNVQlNDUklCRS5FTlRJVFlfUFJPUEVSVFlfVVBEQVRFX0VWRU5UUyhcbiAgICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICApLFxuICAgICAgICByb29tTmFtZSA9PiB7XG4gICAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgICAgYExlYXZpbmcgcm9vbSAke3Jvb21OYW1lfSBpbiBuYW1lc3BhY2UgUkVBTFRJTUUgYCArXG4gICAgICAgICAgICAgIGAgaG9zdDogJHt0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lfS8ke3RoaXMuY29yZS5jdHguaG9zdH1gLFxuICAgICAgICAgICk7XG4gICAgICAgICAgYmFja2VuZFNvY2tldEZvckNsaWVudC5sZWF2ZShyb29tTmFtZSk7XG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH0pO1xuXG5cblxuXG4gIH1cblxuXG5cblxuICBwcml2YXRlIHRyaWdnZXJDaGFuZ2VzKFxuICAgIGVudGl0eU9iak9yQ2xhc3M6IEZ1bmN0aW9uLFxuICAgIHByb3BlcnR5Pzogc3RyaW5nLFxuICAgIHZhbHVlT2ZVbmlxdVByb3Blcnk/OiBudW1iZXIgfCBzdHJpbmcsXG4gICAgY3VzdG9tRXZlbnQ/OiBzdHJpbmcsXG4gICAgY3VzdG9tRXZlbnREYXRhPzogYW55LFxuICApIHtcblxuXG5cbiAgICBsZXQgcm9vbU5hbWU6IHN0cmluZztcblxuICAgIGlmICh0aGlzLmNvcmUuY3R4LmRpc2FibGVkUmVhbHRpbWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoY3VzdG9tRXZlbnQpIHtcbiAgICAgIHJvb21OYW1lID0gU3ltYm9scy5SRUFMVElNRS5ST09NX05BTUUuQ1VTVE9NKFxuICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICBjdXN0b21FdmVudCxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBlbnRpdHlGbiA9IGVudGl0eU9iak9yQ2xhc3MgYXMgRnVuY3Rpb247XG4gICAgICBjb25zdCBlbml0dHlJc09iamVjdCA9XG4gICAgICAgICFfLmlzRnVuY3Rpb24oZW50aXR5T2JqT3JDbGFzcykgJiYgXy5pc09iamVjdChlbnRpdHlPYmpPckNsYXNzKTtcblxuICAgICAgaWYgKGVuaXR0eUlzT2JqZWN0KSB7XG4gICAgICAgIGVudGl0eUZuID0gQ2xhc3NIZWxwZXJzLmdldENsYXNzRm5Gcm9tT2JqZWN0KGVudGl0eU9iak9yQ2xhc3MpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB1bmlxdWVLZXkgPSBDbGFzc0hlbHBlcnMuZ2V0VW5pcXVLZXkoZW50aXR5Rm4pO1xuXG4gICAgICBpZiAoZW5pdHR5SXNPYmplY3QpIHtcbiAgICAgICAgdmFsdWVPZlVuaXF1UHJvcGVyeSA9IGVudGl0eU9iak9yQ2xhc3NbdW5pcXVlS2V5XTtcbiAgICAgIH1cblxuICAgICAgaWYgKCF2YWx1ZU9mVW5pcXVQcm9wZXJ5KSB7XG4gICAgICAgIEhlbHBlcnMuZXJyb3IoXG4gICAgICAgICAgYFtUYW9uXVtSZWFsdGltZV0gRW50aXR5IHdpdGhvdXQgaUQgISAke0NsYXNzSGVscGVycy5nZXROYW1lKFxuICAgICAgICAgICAgZW50aXR5Rm4sXG4gICAgICAgICAgKX0gYCxcbiAgICAgICAgICB0cnVlLFxuICAgICAgICAgIHRydWUsXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgcm9vbU5hbWUgPSBfLmlzU3RyaW5nKHByb3BlcnR5KVxuICAgICAgICA/IFN5bWJvbHMuUkVBTFRJTUUuUk9PTV9OQU1FLlVQREFURV9FTlRJVFlfUFJPUEVSVFkoXG4gICAgICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICAgICAgQ2xhc3NIZWxwZXJzLmdldE5hbWUoZW50aXR5Rm4pLFxuICAgICAgICAgICAgcHJvcGVydHksXG4gICAgICAgICAgICB2YWx1ZU9mVW5pcXVQcm9wZXJ5LFxuICAgICAgICAgIClcbiAgICAgICAgOiBTeW1ib2xzLlJFQUxUSU1FLlJPT01fTkFNRS5VUERBVEVfRU5USVRZKFxuICAgICAgICAgICAgdGhpcy5jb3JlLmN0eC5jb250ZXh0TmFtZSxcbiAgICAgICAgICAgIENsYXNzSGVscGVycy5nZXROYW1lKGVudGl0eUZuKSxcbiAgICAgICAgICAgIHZhbHVlT2ZVbmlxdVByb3BlcnksXG4gICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBqb2IgPSAoKSA9PiB7XG4gICAgICBjb25zb2xlLmxvZyhgVHJpZ2dlciByZWFsdGltZTogJHt0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lfS8ke3Jvb21OYW1lfWApO1xuICAgICAgdGhpcy5jb3JlLkJFX1JFQUxUSU1FLmluKHJvb21OYW1lKS5lbWl0KFxuICAgICAgICByb29tTmFtZSwgLy8gcm9vbU5hbWUgPT0gZXZlbnROYW1lIGluIHJvb20gbmFcbiAgICAgICAgY3VzdG9tRXZlbnREYXRhID8gY3VzdG9tRXZlbnREYXRhIDogJycsXG4gICAgICApO1xuICAgIH07XG5cbiAgICBpZiAoIV8uaXNGdW5jdGlvbih0aGlzLmpvYnNbcm9vbU5hbWVdKSkge1xuICAgICAgdGhpcy5qb2JzW3Jvb21OYW1lXSA9IF8uZGVib3VuY2UoKCkgPT4ge1xuICAgICAgICBqb2IoKTtcbiAgICAgIH0sIFNPQ0tFVF9FVkVOVF9ERUJPVU5DRSk7XG4gICAgfVxuXG4gICAgdGhpcy5qb2JzW3Jvb21OYW1lXSgpO1xuXG4gIH1cblxuXG5cbiAgcHVibGljIHRyaWdnZ2VyRW50aXR5Q2hhbmdlcyhcbiAgICBlbnRpdHlPYmpPckNsYXNzOiBGdW5jdGlvbixcbiAgICBpZFRvVHJpZ2dlcj86IG51bWJlciB8IHN0cmluZyxcbiAgKSB7XG4gICAgaWYgKHRoaXMuY29yZS5jdHguZGlzYWJsZWRSZWFsdGltZSkge1xuICAgICAgY29uc3QgY2xhc3NOYW1lID0gQ2xhc3NIZWxwZXJzLmdldE5hbWUoZW50aXR5T2JqT3JDbGFzcyk7XG5cbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYFtUYW9uXVtUcmlnZ2dlckVudGl0eUNoYW5nZXNdIEVudGl0eSBcIiR7Y2xhc3NOYW1lfScgaXMgbm90IHJlYWx0aW1lYCxcbiAgICAgICk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMudHJpZ2dlckNoYW5nZXMoZW50aXR5T2JqT3JDbGFzcyBhcyBhbnksIHZvaWQgMCwgaWRUb1RyaWdnZXIpO1xuICB9XG5cblxuXG4gIHB1YmxpYyB0cmlnZ2dlckVudGl0eVByb3BlcnR5Q2hhbmdlczxFTlRJVFkgZXh0ZW5kcyBCYXNlRW50aXR5PihcbiAgICBlbnRpdHlPYmpPckNsYXNzOiBuZXcgKC4uLmFyZ3MpID0+IEVOVElUWSxcbiAgICBwcm9wZXJ0eToga2V5b2YgRU5USVRZIHwgKGtleW9mIEVOVElUWSlbXSxcbiAgICBpZFRvVHJpZ2dlcj86IG51bWJlciB8IHN0cmluZyxcbiAgKSB7XG4gICAgaWYgKHRoaXMuY29yZS5jdHguZGlzYWJsZWRSZWFsdGltZSkge1xuICAgICAgY29uc3QgY2xhc3NOYW1lID0gQ2xhc3NIZWxwZXJzLmdldE5hbWUoZW50aXR5T2JqT3JDbGFzcyk7XG5cbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgYFtUYW9uXVtUcmlnZ2dlckVudGl0eVByb3BlcnR5Q2hhbmdlc11bcHJvcGVydHk9JHtcbiAgICAgICAgICBwcm9wZXJ0eSBhcyBzdHJpbmdcbiAgICAgICAgfV0gRW50aXR5IFwiJHtjbGFzc05hbWV9JyBpcyBub3QgcmVhbHRpbWVgLFxuICAgICAgKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoXy5pc0FycmF5KHByb3BlcnR5KSkge1xuICAgICAgcHJvcGVydHkuZm9yRWFjaChwcm9wZXJ0eUZyb21BcnIgPT4ge1xuICAgICAgICB0aGlzLnRyaWdnZXJDaGFuZ2VzKFxuICAgICAgICAgIGVudGl0eU9iak9yQ2xhc3MsXG4gICAgICAgICAgcHJvcGVydHlGcm9tQXJyIGFzIGFueSxcbiAgICAgICAgICBpZFRvVHJpZ2dlcixcbiAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRyaWdnZXJDaGFuZ2VzKGVudGl0eU9iak9yQ2xhc3MsIHByb3BlcnR5IGFzIGFueSwgaWRUb1RyaWdnZXIpO1xuICAgIH1cbiAgfVxuXG5cblxuICBwdWJsaWMgdHJpZ2dlckN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50OiBzdHJpbmcsIGRhdGFUb1B1c2g6IGFueSkge1xuICAgIHRoaXMudHJpZ2dlckNoYW5nZXModm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgY3VzdG9tRXZlbnQsIGRhdGFUb1B1c2gpO1xuICB9XG5cblxuXG4gIHB1YmxpYyB0cmlnZ2dlckVudGl0eVRhYmxlQ2hhbmdlcyhlbnRpdHlDbGFzczogRnVuY3Rpb24pIHtcbiAgICBjb25zdCBjbGFzc05hbWUgPSBDbGFzc0hlbHBlcnMuZ2V0TmFtZShlbnRpdHlDbGFzcyk7XG4gICAgaWYgKHRoaXMuY29yZS5jdHguZGlzYWJsZWRSZWFsdGltZSkge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBgW1Rhb25dW1RyaWdnZ2VyRW50aXR5VGFibGVDaGFuZ2VzXSBFbnRpdHkgXCIke2NsYXNzTmFtZX0nIGlzIG5vdCByZWFsdGltZWAsXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudHJpZ2dlckNoYW5nZXMoXG4gICAgICBlbnRpdHlDbGFzcyBhcyBhbnksXG4gICAgICB2b2lkIDAsXG4gICAgICB2b2lkIDAsXG4gICAgICBTeW1ib2xzLlJFQUxUSU1FLlRBQkxFX0NIQU5HRSh0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLCBjbGFzc05hbWUpLFxuICAgICk7XG4gIH1cblxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbiBsaWIvcmVhbHRpbWUvcmVhbHRpbWUtc2VydmVyLnRzIl19
@@ -0,0 +1,7 @@
1
+ export * from './realtime-strategy';
2
+ export * from './realtime-strategy-ipc';
3
+ export * from './realtime-strategy-mock';
4
+ export * from './realtime-strategy-socket-io';
5
+ ;
6
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-strategy/index.ts
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi9wcm9qZWN0cy90YW9uL3NyYy9saWIvcmVhbHRpbWUvcmVhbHRpbWUtc3RyYXRlZ3kvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYywrQkFBK0IsQ0FBQztBQUU3QyxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLHlFQUF5RSIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5leHBvcnQgKiBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5JztcbmV4cG9ydCAqIGZyb20gJy4vcmVhbHRpbWUtc3RyYXRlZ3ktaXBjJztcbmV4cG9ydCAqIGZyb20gJy4vcmVhbHRpbWUtc3RyYXRlZ3ktbW9jayc7XG5leHBvcnQgKiBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5LXNvY2tldC1pbyc7XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uIGxpYi9yZWFsdGltZS9yZWFsdGltZS1zdHJhdGVneS9pbmRleC50cyJdfQ==
@@ -0,0 +1,98 @@
1
+ /* */
2
+ /* */
3
+ /* */
4
+ export class IpcMainNamespace {
5
+ constructor(name) {
6
+ this.name = name;
7
+ this.rooms = {};
8
+ this.listeners = {};
9
+ }
10
+ on(event, callback) {
11
+ /* */
12
+ /* */
13
+ /* */
14
+ /* */
15
+ /* */
16
+ /* */
17
+ /* */
18
+ /* */
19
+ /* */
20
+ return (void 0);
21
+ }
22
+ off(event, callback) {
23
+ /* */
24
+ /* */
25
+ /* */
26
+ /* */
27
+ /* */
28
+ /* */
29
+ /* */
30
+ /* */
31
+ /* */
32
+ /* */
33
+ /* */
34
+ /* */
35
+ /* */
36
+ return (void 0);
37
+ }
38
+ emit(event, ...args) {
39
+ /* */
40
+ /* */
41
+ /* */
42
+ /* */
43
+ /* */
44
+ /* */
45
+ /* */
46
+ return (void 0);
47
+ }
48
+ to(room) {
49
+ return {
50
+ emit: (event, ...args) => {
51
+ const emitEvent = `(${this.name}) "${event}"`;
52
+ const allWindows = Electron.BrowserWindow.getAllWindows();
53
+ allWindows.forEach((win, index) => {
54
+ win.webContents.send(emitEvent, ...args);
55
+ });
56
+ },
57
+ };
58
+ }
59
+ in(room) {
60
+ return {
61
+ emit: (event, ...args) => {
62
+ const sendEventKey = `(${this.name}) "${event}"`;
63
+ const allWindows = Electron.BrowserWindow.getAllWindows();
64
+ allWindows.forEach((win, index) => {
65
+ win.webContents.send(sendEventKey, ...args);
66
+ });
67
+ },
68
+ };
69
+ }
70
+ join(webContents, room) {
71
+ if (!this.rooms[room]) {
72
+ this.rooms[room] = new Set();
73
+ }
74
+ this.rooms[room].add(webContents);
75
+ }
76
+ leave(webContents, room) {
77
+ if (this.rooms[room]) {
78
+ this.rooms[room].delete(webContents);
79
+ if (this.rooms[room].size === 0) {
80
+ delete this.rooms[room];
81
+ }
82
+ }
83
+ }
84
+ path() {
85
+ return this.name;
86
+ }
87
+ get nsp() {
88
+ const self = this;
89
+ return {
90
+ get name() {
91
+ return self.name;
92
+ },
93
+ };
94
+ }
95
+ }
96
+ ;
97
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.ts
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtc3RyYXRlZ3ktaXBjLW1haW4tbmFtZXNwYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24vcHJvamVjdHMvdGFvbi9zcmMvbGliL3JlYWx0aW1lL3JlYWx0aW1lLXN0cmF0ZWd5L3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tb2RlbHMvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLW1haW4tbmFtZXNwYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLEtBQUs7QUFDTCxLQUFLO0FBQ0wsS0FBSztBQUdMLE1BQU0sT0FBTyxnQkFBZ0I7SUFJM0IsWUFBbUIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7UUFIdkIsVUFBSyxHQUFVLEVBQUUsQ0FBQztRQUNsQixjQUFTLEdBQW1CLEVBQUUsQ0FBQztJQUVMLENBQUM7SUFFbkMsRUFBRSxDQUNBLEtBQWEsRUFDYixRQUFnRTtRQUVwRSxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQsR0FBRyxDQUNELEtBQWEsRUFDYixRQUFpRTtRQUVyRSxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0QsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFhLEVBQUUsR0FBRyxJQUFXO1FBQ3BDLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDTCxLQUFLO1FBQ0wsS0FBSztRQUNMLEtBQUs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNsQixDQUFDO0lBRUQsRUFBRSxDQUFDLElBQVk7UUFDYixPQUFPO1lBQ0wsSUFBSSxFQUFFLENBQUMsS0FBYSxFQUFFLEdBQUcsSUFBVyxFQUFFLEVBQUU7Z0JBQ3RDLE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksTUFBTSxLQUFLLEdBQUcsQ0FBQztnQkFLOUMsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDMUQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRTtvQkFDaEMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQzNDLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsRUFBRSxDQUFDLElBQVk7UUFDYixPQUFPO1lBQ0wsSUFBSSxFQUFFLENBQUMsS0FBYSxFQUFFLEdBQUcsSUFBVyxFQUFFLEVBQUU7Z0JBS3RDLE1BQU0sWUFBWSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksTUFBTSxLQUFLLEdBQUcsQ0FBQztnQkFDakQsTUFBTSxVQUFVLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDMUQsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRTtvQkFDaEMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7Z0JBQzlDLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLFdBQWlDLEVBQUUsSUFBWTtRQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUMvQixDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7SUFLcEMsQ0FBQztJQUVELEtBQUssQ0FBQyxXQUFpQyxFQUFFLElBQVk7UUFDbkQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDckMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDaEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDO0lBS0gsQ0FBQztJQUVELElBQUk7UUFDRixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQUksR0FBRztRQUNMLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQztRQUNsQixPQUFPO1lBQ0wsSUFBSSxJQUFJO2dCQUNOLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNuQixDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMscUlBQXFJIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IEV2ZW50TGlzdGVuZXJzLCBSb29tcyB9IGZyb20gJy4vcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLm1vZGVscyc7XG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuXG5leHBvcnQgY2xhc3MgSXBjTWFpbk5hbWVzcGFjZSB7XG4gIHByaXZhdGUgcm9vbXM6IFJvb21zID0ge307XG4gIHByaXZhdGUgbGlzdGVuZXJzOiBFdmVudExpc3RlbmVycyA9IHt9O1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBuYW1lOiBzdHJpbmcpIHt9XG5cbiAgb24oXG4gICAgZXZlbnQ6IHN0cmluZyxcbiAgICBjYWxsYmFjazogKGV2ZW50OiBFbGVjdHJvbi5JcGNNYWluRXZlbnQsIC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkLFxuICApIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbiAgICByZXR1cm4gKHZvaWQgMCk7XG4gIH1cblxuICBvZmYoXG4gICAgZXZlbnQ6IHN0cmluZyxcbiAgICBjYWxsYmFjaz86IChldmVudDogRWxlY3Ryb24uSXBjTWFpbkV2ZW50LCAuLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCxcbiAgKSB7XG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuICAgIHJldHVybiAodm9pZCAwKTtcbiAgfVxuXG4gIGVtaXQoZXZlbnQ6IHN0cmluZywgLi4uYXJnczogYW55W10pIHtcbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cbi8qICovXG4gICAgcmV0dXJuICh2b2lkIDApO1xuICB9XG5cbiAgdG8ocm9vbTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGVtaXQ6IChldmVudDogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSkgPT4ge1xuICAgICAgICBjb25zdCBlbWl0RXZlbnQgPSBgKCR7dGhpcy5uYW1lfSkgXCIke2V2ZW50fVwiYDtcblxuXG5cblxuICAgICAgICBjb25zdCBhbGxXaW5kb3dzID0gRWxlY3Ryb24uQnJvd3NlcldpbmRvdy5nZXRBbGxXaW5kb3dzKCk7XG4gICAgICAgIGFsbFdpbmRvd3MuZm9yRWFjaCgod2luLCBpbmRleCkgPT4ge1xuICAgICAgICAgIHdpbi53ZWJDb250ZW50cy5zZW5kKGVtaXRFdmVudCwgLi4uYXJncyk7XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgaW4ocm9vbTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGVtaXQ6IChldmVudDogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSkgPT4ge1xuXG5cblxuXG4gICAgICAgIGNvbnN0IHNlbmRFdmVudEtleSA9IGAoJHt0aGlzLm5hbWV9KSBcIiR7ZXZlbnR9XCJgO1xuICAgICAgICBjb25zdCBhbGxXaW5kb3dzID0gRWxlY3Ryb24uQnJvd3NlcldpbmRvdy5nZXRBbGxXaW5kb3dzKCk7XG4gICAgICAgIGFsbFdpbmRvd3MuZm9yRWFjaCgod2luLCBpbmRleCkgPT4ge1xuICAgICAgICAgIHdpbi53ZWJDb250ZW50cy5zZW5kKHNlbmRFdmVudEtleSwgLi4uYXJncyk7XG4gICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgam9pbih3ZWJDb250ZW50czogRWxlY3Ryb24uV2ViQ29udGVudHMsIHJvb206IHN0cmluZykge1xuICAgIGlmICghdGhpcy5yb29tc1tyb29tXSkge1xuICAgICAgdGhpcy5yb29tc1tyb29tXSA9IG5ldyBTZXQoKTtcbiAgICB9XG4gICAgdGhpcy5yb29tc1tyb29tXS5hZGQod2ViQ29udGVudHMpO1xuXG5cblxuXG4gIH1cblxuICBsZWF2ZSh3ZWJDb250ZW50czogRWxlY3Ryb24uV2ViQ29udGVudHMsIHJvb206IHN0cmluZykge1xuICAgIGlmICh0aGlzLnJvb21zW3Jvb21dKSB7XG4gICAgICB0aGlzLnJvb21zW3Jvb21dLmRlbGV0ZSh3ZWJDb250ZW50cyk7XG4gICAgICBpZiAodGhpcy5yb29tc1tyb29tXS5zaXplID09PSAwKSB7XG4gICAgICAgIGRlbGV0ZSB0aGlzLnJvb21zW3Jvb21dO1xuICAgICAgfVxuICAgIH1cblxuXG5cblxuICB9XG5cbiAgcGF0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5uYW1lO1xuICB9XG5cbiAgZ2V0IG5zcCgpIHtcbiAgICBjb25zdCBzZWxmID0gdGhpcztcbiAgICByZXR1cm4ge1xuICAgICAgZ2V0IG5hbWUoKSB7XG4gICAgICAgIHJldHVybiBzZWxmLm5hbWU7XG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL3JlYWx0aW1lL3JlYWx0aW1lLXN0cmF0ZWd5L3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tb2RlbHMvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLW1haW4tbmFtZXNwYWNlLnRzIl19
@@ -0,0 +1,45 @@
1
+ import { IpcMainNamespace } from './realtime-strategy-ipc-main-namespace';
2
+ export class ioIpcStrategy {
3
+ constructor(contextName) {
4
+ this.contextName = contextName;
5
+ this.namespaces = {
6
+ ' /': new IpcMainNamespace('/'),
7
+ };
8
+ }
9
+ of(namespace) {
10
+ if (!this.namespaces[namespace]) {
11
+ this.namespaces[namespace] = new IpcMainNamespace(namespace);
12
+ }
13
+ return this.namespaces[namespace];
14
+ }
15
+ on(event, callback) {
16
+ const eventKey = `(${this.contextName}) "${event}"`;
17
+ this.namespaces['/'].on(eventKey, callback);
18
+ }
19
+ emit(event, ...args) {
20
+ const eventKey = `(${this.contextName}) "${event}"`;
21
+ this.namespaces['/'].emit(eventKey, ...args);
22
+ }
23
+ path() {
24
+ return '/';
25
+ }
26
+ get nsp() {
27
+ return {
28
+ get name() {
29
+ return '/';
30
+ },
31
+ };
32
+ }
33
+ in(room) {
34
+ return {
35
+ emit: (event, ...args) => {
36
+ Object.values(this.namespaces).forEach(namespace => {
37
+ namespace.to(room).emit(event, ...args);
38
+ });
39
+ },
40
+ };
41
+ }
42
+ }
43
+ ;
44
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.ts
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtc3RyYXRlZ3ktaXBjLW1haW4td3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uL3Byb2plY3RzL3Rhb24vc3JjL2xpYi9yZWFsdGltZS9yZWFsdGltZS1zdHJhdGVneS9yZWFsdGltZS1zdHJhdGVneS1pcGMtbW9kZWxzL3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tYWluLXdyYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHMUUsTUFBTSxPQUFPLGFBQWE7SUFLeEIsWUFBbUIsV0FBbUI7UUFBbkIsZ0JBQVcsR0FBWCxXQUFXLENBQVE7UUFKOUIsZUFBVSxHQUFlO1lBQy9CLElBQUksRUFBRSxJQUFJLGdCQUFnQixDQUFDLEdBQUcsQ0FBQztTQUNoQyxDQUFDO0lBSUYsQ0FBQztJQUVELEVBQUUsQ0FBQyxTQUFpQjtRQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvRCxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxFQUFFLENBQ0EsS0FBYSxFQUNiLFFBQWdFO1FBRWhFLE1BQU0sUUFBUSxHQUFHLElBQUksSUFBSSxDQUFDLFdBQVcsTUFBTSxLQUFLLEdBQUcsQ0FBQztRQUVwRCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFhLEVBQUUsR0FBRyxJQUFXO1FBQ2hDLE1BQU0sUUFBUSxHQUFHLElBQUksSUFBSSxDQUFDLFdBQVcsTUFBTSxLQUFLLEdBQUcsQ0FBQztRQUVwRCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBSTtRQUNGLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELElBQUksR0FBRztRQUNMLE9BQU87WUFDTCxJQUFJLElBQUk7Z0JBQ04sT0FBTyxHQUFHLENBQUM7WUFDYixDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxFQUFFLENBQUMsSUFBWTtRQUNiLE9BQU87WUFDTCxJQUFJLEVBQUUsQ0FBQyxLQUFhLEVBQUUsR0FBRyxJQUFXLEVBQUUsRUFBRTtnQkFFdEMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO29CQUNqRCxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztnQkFDMUMsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUlBQW1JIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IElwY01haW5OYW1lc3BhY2UgfSBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tYWluLW5hbWVzcGFjZSc7XG5pbXBvcnQgeyBOYW1lc3BhY2VzIH0gZnJvbSAnLi9yZWFsdGltZS1zdHJhdGVneS1pcGMubW9kZWxzJztcblxuZXhwb3J0IGNsYXNzIGlvSXBjU3RyYXRlZ3kge1xuICBwcml2YXRlIG5hbWVzcGFjZXM6IE5hbWVzcGFjZXMgPSB7XG4gICAgJyAvJzogbmV3IElwY01haW5OYW1lc3BhY2UoJy8nKSxcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY29udGV4dE5hbWU6IHN0cmluZykge1xuXG4gIH1cblxuICBvZihuYW1lc3BhY2U6IHN0cmluZyk6IElwY01haW5OYW1lc3BhY2Uge1xuICAgIGlmICghdGhpcy5uYW1lc3BhY2VzW25hbWVzcGFjZV0pIHtcbiAgICAgIHRoaXMubmFtZXNwYWNlc1tuYW1lc3BhY2VdID0gbmV3IElwY01haW5OYW1lc3BhY2UobmFtZXNwYWNlKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubmFtZXNwYWNlc1tuYW1lc3BhY2VdO1xuICB9XG5cbiAgb24oXG4gICAgZXZlbnQ6IHN0cmluZyxcbiAgICBjYWxsYmFjazogKGV2ZW50OiBFbGVjdHJvbi5JcGNNYWluRXZlbnQsIC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkLFxuICApIHtcbiAgICBjb25zdCBldmVudEtleSA9IGAoJHt0aGlzLmNvbnRleHROYW1lfSkgXCIke2V2ZW50fVwiYDtcblxuICAgIHRoaXMubmFtZXNwYWNlc1snLyddLm9uKGV2ZW50S2V5LCBjYWxsYmFjayk7XG4gIH1cblxuICBlbWl0KGV2ZW50OiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKSB7XG4gICAgY29uc3QgZXZlbnRLZXkgPSBgKCR7dGhpcy5jb250ZXh0TmFtZX0pIFwiJHtldmVudH1cImA7XG5cbiAgICB0aGlzLm5hbWVzcGFjZXNbJy8nXS5lbWl0KGV2ZW50S2V5LCAuLi5hcmdzKTtcbiAgfVxuXG4gIHBhdGgoKSB7XG4gICAgcmV0dXJuICcvJztcbiAgfVxuXG4gIGdldCBuc3AoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldCBuYW1lKCkge1xuICAgICAgICByZXR1cm4gJy8nO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgaW4ocm9vbTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGVtaXQ6IChldmVudDogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSkgPT4ge1xuXG4gICAgICAgIE9iamVjdC52YWx1ZXModGhpcy5uYW1lc3BhY2VzKS5mb3JFYWNoKG5hbWVzcGFjZSA9PiB7XG4gICAgICAgICAgbmFtZXNwYWNlLnRvKHJvb20pLmVtaXQoZXZlbnQsIC4uLmFyZ3MpO1xuICAgICAgICB9KTtcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbiBsaWIvcmVhbHRpbWUvcmVhbHRpbWUtc3RyYXRlZ3kvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLW1vZGVscy9yZWFsdGltZS1zdHJhdGVneS1pcGMtbWFpbi13cmFwcGVyLnRzIl19
@@ -0,0 +1,40 @@
1
+ export class IpcRendererNamespace {
2
+ constructor(name) {
3
+ this.name = name;
4
+ this.listeners = {};
5
+ this.ipcRenderer = window.require('electron').ipcRenderer;
6
+ }
7
+ on(eventName, callback) {
8
+ if (!this.listeners[eventName]) {
9
+ this.listeners[eventName] = [];
10
+ }
11
+ this.listeners[eventName].push(callback);
12
+ const listenToEvent = `(${this.name}) "${eventName}"`;
13
+ this.ipcRenderer.on(listenToEvent, callback);
14
+ if (eventName === 'connect') {
15
+ this.emit('connection');
16
+ }
17
+ else {
18
+ this.emit(eventName);
19
+ }
20
+ }
21
+ off(event, callback) {
22
+ if (!this.listeners[event])
23
+ return;
24
+ if (callback) {
25
+ this.listeners[event] = this.listeners[event].filter(listener => listener !== callback);
26
+ }
27
+ else {
28
+ delete this.listeners[event];
29
+ }
30
+ const removeListener = `(${this.name}) "${event}"`;
31
+ this.ipcRenderer.removeListener(removeListener, callback);
32
+ }
33
+ emit(event, ...args) {
34
+ const emitEvent = `(${this.name}) "${event}"`;
35
+ this.ipcRenderer.send(emitEvent, ...args);
36
+ }
37
+ }
38
+ ;
39
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.ts
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtc3RyYXRlZ3ktaXBjLXJlbmRlcmVyLW5hbWVzcGFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uL3Byb2plY3RzL3Rhb24vc3JjL2xpYi9yZWFsdGltZS9yZWFsdGltZS1zdHJhdGVneS9yZWFsdGltZS1zdHJhdGVneS1pcGMtbW9kZWxzL3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1yZW5kZXJlci1uYW1lc3BhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxPQUFPLG9CQUFvQjtJQUkvQixZQUFtQixJQUFZO1FBQVosU0FBSSxHQUFKLElBQUksQ0FBUTtRQUZ2QixjQUFTLEdBQTJCLEVBQUUsQ0FBQztRQUc3QyxJQUFJLENBQUMsV0FBVyxHQUFJLE1BQWMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsV0FBVyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxFQUFFLENBQUMsU0FBaUIsRUFBRSxRQUE4QztRQUNsRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2pDLENBQUM7UUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN6QyxNQUFNLGFBQWEsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLE1BQU0sU0FBUyxHQUFHLENBQUM7UUFFdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzdDLElBQUksU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDMUIsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBRUQsR0FBRyxDQUFDLEtBQWEsRUFBRSxRQUErQztRQUNoRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7WUFBRSxPQUFPO1FBRW5DLElBQUksUUFBUSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUNsRCxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQ2xDLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixDQUFDO1FBQ0QsTUFBTSxjQUFjLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxNQUFNLEtBQUssR0FBRyxDQUFDO1FBS25ELElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLGNBQWMsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWEsRUFBRSxHQUFHLElBQVc7UUFDaEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxNQUFNLEtBQUssR0FBRyxDQUFDO1FBRzlDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMseUlBQXlJIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IGlwY1JlbmRlcmVyIH0gZnJvbSAnZWxlY3Ryb24nO1xuXG5pbXBvcnQgeyBSZW5kZXJlckV2ZW50TGlzdGVuZXJzIH0gZnJvbSAnLi9yZWFsdGltZS1zdHJhdGVneS1pcGMubW9kZWxzJztcbmltcG9ydCB7IEhlbHBlcnMgfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuXG5leHBvcnQgY2xhc3MgSXBjUmVuZGVyZXJOYW1lc3BhY2Uge1xuICBpcGNSZW5kZXJlciE6IHR5cGVvZiBpcGNSZW5kZXJlcjtcbiAgcHJpdmF0ZSBsaXN0ZW5lcnM6IFJlbmRlcmVyRXZlbnRMaXN0ZW5lcnMgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgbmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5pcGNSZW5kZXJlciA9ICh3aW5kb3cgYXMgYW55KS5yZXF1aXJlKCdlbGVjdHJvbicpLmlwY1JlbmRlcmVyO1xuICB9XG5cbiAgb24oZXZlbnROYW1lOiBzdHJpbmcsIGNhbGxiYWNrOiAoZXZlbnQ6IGFueSwgLi4uYXJnczogYW55W10pID0+IHZvaWQpIHtcbiAgICBpZiAoIXRoaXMubGlzdGVuZXJzW2V2ZW50TmFtZV0pIHtcbiAgICAgIHRoaXMubGlzdGVuZXJzW2V2ZW50TmFtZV0gPSBbXTtcbiAgICB9XG4gICAgdGhpcy5saXN0ZW5lcnNbZXZlbnROYW1lXS5wdXNoKGNhbGxiYWNrKTtcbiAgICBjb25zdCBsaXN0ZW5Ub0V2ZW50ID0gYCgke3RoaXMubmFtZX0pIFwiJHtldmVudE5hbWV9XCJgO1xuXG4gICAgdGhpcy5pcGNSZW5kZXJlci5vbihsaXN0ZW5Ub0V2ZW50LCBjYWxsYmFjayk7XG4gICAgaWYgKGV2ZW50TmFtZSA9PT0gJ2Nvbm5lY3QnKSB7XG4gICAgICB0aGlzLmVtaXQoJ2Nvbm5lY3Rpb24nKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5lbWl0KGV2ZW50TmFtZSk7XG4gICAgfVxuICB9XG5cbiAgb2ZmKGV2ZW50OiBzdHJpbmcsIGNhbGxiYWNrPzogKGV2ZW50OiBhbnksIC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkKSB7XG4gICAgaWYgKCF0aGlzLmxpc3RlbmVyc1tldmVudF0pIHJldHVybjtcblxuICAgIGlmIChjYWxsYmFjaykge1xuICAgICAgdGhpcy5saXN0ZW5lcnNbZXZlbnRdID0gdGhpcy5saXN0ZW5lcnNbZXZlbnRdLmZpbHRlcihcbiAgICAgICAgbGlzdGVuZXIgPT4gbGlzdGVuZXIgIT09IGNhbGxiYWNrLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZGVsZXRlIHRoaXMubGlzdGVuZXJzW2V2ZW50XTtcbiAgICB9XG4gICAgY29uc3QgcmVtb3ZlTGlzdGVuZXIgPSBgKCR7dGhpcy5uYW1lfSkgXCIke2V2ZW50fVwiYDtcblxuXG5cblxuICAgIHRoaXMuaXBjUmVuZGVyZXIucmVtb3ZlTGlzdGVuZXIocmVtb3ZlTGlzdGVuZXIsIGNhbGxiYWNrKTtcbiAgfVxuXG4gIGVtaXQoZXZlbnQ6IHN0cmluZywgLi4uYXJnczogYW55W10pIHtcbiAgICBjb25zdCBlbWl0RXZlbnQgPSBgKCR7dGhpcy5uYW1lfSkgXCIke2V2ZW50fVwiYDtcblxuXG4gICAgdGhpcy5pcGNSZW5kZXJlci5zZW5kKGVtaXRFdmVudCwgLi4uYXJncyk7XG4gIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL3JlYWx0aW1lL3JlYWx0aW1lLXN0cmF0ZWd5L3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tb2RlbHMvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLXJlbmRlcmVyLW5hbWVzcGFjZS50cyJdfQ==
@@ -0,0 +1,25 @@
1
+ import { IpcRendererNamespace } from './realtime-strategy-ipc-renderer-namespace';
2
+ export class IpcRendererWrapper {
3
+ constructor(contextName) {
4
+ this.contextName = contextName;
5
+ this.namespaces = {
6
+ '/': new IpcRendererNamespace('/'),
7
+ };
8
+ this.connected = false;
9
+ }
10
+ of(namespace) {
11
+ if (!this.namespaces[namespace]) {
12
+ this.namespaces[namespace] = new IpcRendererNamespace(namespace);
13
+ }
14
+ return this.namespaces[namespace];
15
+ }
16
+ on(event, callback) {
17
+ this.namespaces['/'].on(event, callback);
18
+ }
19
+ emit(event, ...args) {
20
+ this.namespaces['/'].emit(event, ...args);
21
+ }
22
+ }
23
+ ;
24
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.ts
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtc3RyYXRlZ3ktaXBjLXJlbmRlcmVyLXdyYXBwZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi9wcm9qZWN0cy90YW9uL3NyYy9saWIvcmVhbHRpbWUvcmVhbHRpbWUtc3RyYXRlZ3kvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLW1vZGVscy9yZWFsdGltZS1zdHJhdGVneS1pcGMtcmVuZGVyZXItd3JhcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUVsRixNQUFNLE9BQU8sa0JBQWtCO0lBTTdCLFlBQW1CLFdBQW1CO1FBQW5CLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBTDlCLGVBQVUsR0FBa0Q7WUFDbEUsR0FBRyxFQUFFLElBQUksb0JBQW9CLENBQUMsR0FBRyxDQUFDO1NBQ25DLENBQUM7UUFDTSxjQUFTLEdBQUcsS0FBSyxDQUFDO0lBSTFCLENBQUM7SUFFRCxFQUFFLENBQUMsU0FBaUI7UUFJbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUNoQyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksb0JBQW9CLENBQ25ELFNBQVMsQ0FDVixDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsRUFBRSxDQUFDLEtBQWEsRUFBRSxRQUE4QztRQVU5RCxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksQ0FBQyxLQUFhLEVBQUUsR0FBRyxJQUFXO1FBSWhDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsdUlBQXVJIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IElwY1JlbmRlcmVyTmFtZXNwYWNlIH0gZnJvbSAnLi9yZWFsdGltZS1zdHJhdGVneS1pcGMtcmVuZGVyZXItbmFtZXNwYWNlJztcblxuZXhwb3J0IGNsYXNzIElwY1JlbmRlcmVyV3JhcHBlciB7XG4gIHByaXZhdGUgbmFtZXNwYWNlczogeyBbbmFtZXNwYWNlOiBzdHJpbmddOiBJcGNSZW5kZXJlck5hbWVzcGFjZSB9ID0ge1xuICAgICcvJzogbmV3IElwY1JlbmRlcmVyTmFtZXNwYWNlKCcvJyksXG4gIH07XG4gIHByaXZhdGUgY29ubmVjdGVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNvbnRleHROYW1lOiBzdHJpbmcpIHtcblxuICB9XG5cbiAgb2YobmFtZXNwYWNlOiBzdHJpbmcpOiBJcGNSZW5kZXJlck5hbWVzcGFjZSB7XG5cblxuXG4gICAgaWYgKCF0aGlzLm5hbWVzcGFjZXNbbmFtZXNwYWNlXSkge1xuICAgICAgdGhpcy5uYW1lc3BhY2VzW25hbWVzcGFjZV0gPSBuZXcgSXBjUmVuZGVyZXJOYW1lc3BhY2UoXG4gICAgICAgIG5hbWVzcGFjZVxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubmFtZXNwYWNlc1tuYW1lc3BhY2VdO1xuICB9XG5cbiAgb24oZXZlbnQ6IHN0cmluZywgY2FsbGJhY2s6IChldmVudDogYW55LCAuLi5hcmdzOiBhbnlbXSkgPT4gdm9pZCkge1xuXG5cblxuXG5cblxuXG5cblxuICAgIHRoaXMubmFtZXNwYWNlc1snLyddLm9uKGV2ZW50LCBjYWxsYmFjayk7XG4gIH1cblxuICBlbWl0KGV2ZW50OiBzdHJpbmcsIC4uLmFyZ3M6IGFueVtdKSB7XG5cblxuXG4gICAgdGhpcy5uYW1lc3BhY2VzWycvJ10uZW1pdChldmVudCwgLi4uYXJncyk7XG4gIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL3JlYWx0aW1lL3JlYWx0aW1lLXN0cmF0ZWd5L3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tb2RlbHMvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLXJlbmRlcmVyLXdyYXBwZXIudHMiXX0=
@@ -0,0 +1,4 @@
1
+ ;
2
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.ts
3
+ export {};
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtc3RyYXRlZ3ktaXBjLm1vZGVscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uL3Byb2plY3RzL3Rhb24vc3JjL2xpYi9yZWFsdGltZS9yZWFsdGltZS1zdHJhdGVneS9yZWFsdGltZS1zdHJhdGVneS1pcGMtbW9kZWxzL3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy5tb2RlbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0JDLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsNkhBQTZIIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IElwY01haW5OYW1lc3BhY2UgfSBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tYWluLW5hbWVzcGFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVuZGVyZXJFdmVudExpc3RlbmVycyB7XG4gIFtldmVudDogc3RyaW5nXTogQXJyYXk8KGV2ZW50OiBhbnksIC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFdmVudExpc3RlbmVycyB7XG4gIFtldmVudDogc3RyaW5nXTogQXJyYXk8XG4gICAgKGV2ZW50OiBFbGVjdHJvbi5JcGNNYWluRXZlbnQsIC4uLmFyZ3M6IGFueVtdKSA9PiB2b2lkXG4gID47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUm9vbXMge1xuICBbcm9vbTogc3RyaW5nXTogU2V0PEVsZWN0cm9uLldlYkNvbnRlbnRzPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYW1lc3BhY2VzIHtcbiAgW25hbWVzcGFjZTogc3RyaW5nXTogSXBjTWFpbk5hbWVzcGFjZTtcbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL3JlYWx0aW1lL3JlYWx0aW1lLXN0cmF0ZWd5L3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tb2RlbHMvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLm1vZGVscy50cyJdfQ==
@@ -0,0 +1,48 @@
1
+ import { RealtimeStrategy } from './realtime-strategy';
2
+ import { ioIpcStrategy as IoIpcStrategy } from './realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper';
3
+ import { IpcRendererWrapper } from './realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper';
4
+ /**
5
+ * Purpose:
6
+ * - backend-browser communication between 2 processes in electron mode
7
+ */
8
+ export class RealtimeStrategyIpc extends RealtimeStrategy {
9
+ toString() {
10
+ return 'ipc';
11
+ }
12
+ establishConnection() {
13
+ throw new Error('Method not implemented.');
14
+ }
15
+ constructor(ctx) {
16
+ super(ctx);
17
+ this.ctx = ctx;
18
+ this.contextsServers = {};
19
+ this.contextsIO = {};
20
+ }
21
+ get io() {
22
+ return ((__, { path: namespacePath }) => {
23
+ if (this.contextsIO[namespacePath]) {
24
+ return this.contextsIO[namespacePath];
25
+ }
26
+ const wrap = new IpcRendererWrapper(this.ctx.contextName);
27
+ const nsp = wrap.of(namespacePath);
28
+ this.contextsIO[namespacePath] = nsp;
29
+ return nsp;
30
+ });
31
+ return void 0;
32
+ }
33
+ get Server() {
34
+ return ((___, { path: namespacePath }) => {
35
+ if (this.contextsServers[namespacePath]) {
36
+ return this.contextsServers[namespacePath];
37
+ }
38
+ const wrap = new IoIpcStrategy(this.ctx.contextName);
39
+ const nsp = wrap.of(namespacePath);
40
+ this.contextsServers[namespacePath] = nsp;
41
+ return nsp;
42
+ });
43
+ return void 0;
44
+ }
45
+ }
46
+ ;
47
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-strategy/realtime-strategy-ipc.ts
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtc3RyYXRlZ3ktaXBjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24vcHJvamVjdHMvdGFvbi9zcmMvbGliL3JlYWx0aW1lL3JlYWx0aW1lLXN0cmF0ZWd5L3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxJQUFJLGFBQWEsRUFBRSxNQUFNLG1FQUFtRSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVFQUF1RSxDQUFDO0FBRzNHOzs7R0FHRztBQUNILE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxnQkFBZ0I7SUFDdkQsUUFBUTtRQUNOLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUNELG1CQUFtQjtRQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUNELFlBQXNCLEdBQW9CO1FBQ3hDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQURTLFFBQUcsR0FBSCxHQUFHLENBQWlCO1FBSTFDLG9CQUFlLEdBQXNDLEVBQUUsQ0FBQztRQUN4RCxlQUFVLEdBQXlDLEVBQUUsQ0FBQztJQUh0RCxDQUFDO0lBS0QsSUFBSSxFQUFFO1FBRUosT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUU7WUFDdEMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7Z0JBQ25DLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUN4QyxDQUFDO1lBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRTFELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFVLENBQUM7WUFDNUMsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQVEsQ0FBQztRQUVWLE9BQU8sS0FBSyxDQUFDLENBQUM7SUFDaEIsQ0FBQztJQUNELElBQUksTUFBTTtRQUVSLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFO1lBQ3ZDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDO2dCQUN4QyxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDN0MsQ0FBQztZQUNELE1BQU0sSUFBSSxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7WUFFckQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNuQyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEdBQVUsQ0FBQztZQUNqRCxPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBUSxDQUFDO1FBRVYsT0FBTyxLQUFLLENBQUMsQ0FBQztJQUNoQixDQUFDO0NBQ0Y7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLHlGQUF5RiIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgeyBTZXJ2ZXIgfSBmcm9tICdzb2NrZXQuaW8nO1xuaW1wb3J0IHsgRW5kcG9pbnRDb250ZXh0IH0gZnJvbSAnLi4vLi4vZW5kcG9pbnQtY29udGV4dCc7XG5pbXBvcnQgeyBSZWFsdGltZVN0cmF0ZWd5IH0gZnJvbSAnLi9yZWFsdGltZS1zdHJhdGVneSc7XG5pbXBvcnQgeyBpb0lwY1N0cmF0ZWd5IGFzIElvSXBjU3RyYXRlZ3kgfSBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tb2RlbHMvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLW1haW4td3JhcHBlcic7XG5pbXBvcnQgeyBJcGNSZW5kZXJlcldyYXBwZXIgfSBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5LWlwYy1tb2RlbHMvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLXJlbmRlcmVyLXdyYXBwZXInO1xuaW1wb3J0IHR5cGUgeyBpbyB9IGZyb20gJ3NvY2tldC5pby1jbGllbnQnO1xuXG4vKipcbiAqIFB1cnBvc2U6XG4gKiAtIGJhY2tlbmQtYnJvd3NlciBjb21tdW5pY2F0aW9uIGJldHdlZW4gMiBwcm9jZXNzZXMgaW4gZWxlY3Ryb24gbW9kZVxuICovXG5leHBvcnQgY2xhc3MgUmVhbHRpbWVTdHJhdGVneUlwYyBleHRlbmRzIFJlYWx0aW1lU3RyYXRlZ3kge1xuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiAnaXBjJztcbiAgfVxuICBlc3RhYmxpc2hDb25uZWN0aW9uKCk6IHZvaWQge1xuICAgIHRocm93IG5ldyBFcnJvcignTWV0aG9kIG5vdCBpbXBsZW1lbnRlZC4nKTtcbiAgfVxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgY3R4OiBFbmRwb2ludENvbnRleHQpIHtcbiAgICBzdXBlcihjdHgpO1xuICB9XG5cbiAgY29udGV4dHNTZXJ2ZXJzOiB7IFtjb250ZXh0TmFtZTogc3RyaW5nXTogU2VydmVyIH0gPSB7fTtcbiAgY29udGV4dHNJTzogeyBbY29udGV4dE5hbWU6IHN0cmluZ106IHR5cGVvZiBpbyB9ID0ge307XG5cbiAgZ2V0IGlvKCkge1xuXG4gICAgcmV0dXJuICgoX18sIHsgcGF0aDogbmFtZXNwYWNlUGF0aCB9KSA9PiB7XG4gICAgICBpZiAodGhpcy5jb250ZXh0c0lPW25hbWVzcGFjZVBhdGhdKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRleHRzSU9bbmFtZXNwYWNlUGF0aF07XG4gICAgICB9XG4gICAgICBjb25zdCB3cmFwID0gbmV3IElwY1JlbmRlcmVyV3JhcHBlcih0aGlzLmN0eC5jb250ZXh0TmFtZSk7XG5cbiAgICAgIGNvbnN0IG5zcCA9IHdyYXAub2YobmFtZXNwYWNlUGF0aCk7XG4gICAgICB0aGlzLmNvbnRleHRzSU9bbmFtZXNwYWNlUGF0aF0gPSBuc3AgYXMgYW55O1xuICAgICAgcmV0dXJuIG5zcDtcbiAgICB9KSBhcyBhbnk7XG5cbiAgICByZXR1cm4gdm9pZCAwO1xuICB9XG4gIGdldCBTZXJ2ZXIoKSB7XG5cbiAgICByZXR1cm4gKChfX18sIHsgcGF0aDogbmFtZXNwYWNlUGF0aCB9KSA9PiB7XG4gICAgICBpZiAodGhpcy5jb250ZXh0c1NlcnZlcnNbbmFtZXNwYWNlUGF0aF0pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udGV4dHNTZXJ2ZXJzW25hbWVzcGFjZVBhdGhdO1xuICAgICAgfVxuICAgICAgY29uc3Qgd3JhcCA9IG5ldyBJb0lwY1N0cmF0ZWd5KHRoaXMuY3R4LmNvbnRleHROYW1lKTtcblxuICAgICAgY29uc3QgbnNwID0gd3JhcC5vZihuYW1lc3BhY2VQYXRoKTtcbiAgICAgIHRoaXMuY29udGV4dHNTZXJ2ZXJzW25hbWVzcGFjZVBhdGhdID0gbnNwIGFzIGFueTtcbiAgICAgIHJldHVybiBuc3A7XG4gICAgfSkgYXMgYW55O1xuXG4gICAgcmV0dXJuIHZvaWQgMDtcbiAgfVxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbiBsaWIvcmVhbHRpbWUvcmVhbHRpbWUtc3RyYXRlZ3kvcmVhbHRpbWUtc3RyYXRlZ3ktaXBjLnRzIl19
@@ -0,0 +1,5 @@
1
+ export * from './realtime-strategy-mock-server';
2
+ export * from './realtime-strategy-mock-client';
3
+ ;
4
+ ({}); // @--end-of-file-for-module=taon lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.ts
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi9wcm9qZWN0cy90YW9uL3NyYy9saWIvcmVhbHRpbWUvcmVhbHRpbWUtc3RyYXRlZ3kvcmVhbHRpbWUtc3RyYXRlZ3ktbW9jay1tb2RlbHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLGlDQUFpQyxDQUFDO0FBRy9DLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsdUdBQXVHIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmV4cG9ydCAqIGZyb20gJy4vcmVhbHRpbWUtc3RyYXRlZ3ktbW9jay1zZXJ2ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9yZWFsdGltZS1zdHJhdGVneS1tb2NrLWNsaWVudCc7XG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL3JlYWx0aW1lL3JlYWx0aW1lLXN0cmF0ZWd5L3JlYWx0aW1lLXN0cmF0ZWd5LW1vY2stbW9kZWxzL2luZGV4LnRzIl19