@webda/core 4.0.0-beta.1 → 4.0.0-beta.3

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 (675) hide show
  1. package/README.md +252 -0
  2. package/lib/application/application.d.ts +437 -0
  3. package/lib/application/application.d.ts.map +1 -0
  4. package/lib/application/application.js +792 -0
  5. package/lib/application/application.js.map +1 -0
  6. package/lib/application/hooks.d.ts +34 -0
  7. package/lib/application/hooks.d.ts.map +1 -0
  8. package/lib/application/hooks.js +57 -0
  9. package/lib/application/hooks.js.map +1 -0
  10. package/lib/application/iapplication.d.ts +43 -0
  11. package/lib/application/iapplication.d.ts.map +1 -0
  12. package/lib/application/iapplication.js +2 -0
  13. package/lib/application/iapplication.js.map +1 -0
  14. package/lib/application/iconfiguration.d.ts +176 -0
  15. package/lib/application/iconfiguration.d.ts.map +1 -0
  16. package/lib/application/iconfiguration.js +8 -0
  17. package/lib/application/iconfiguration.js.map +1 -0
  18. package/lib/application/runner.d.ts +8 -0
  19. package/lib/application/runner.d.ts.map +1 -0
  20. package/lib/application/runner.js +26 -0
  21. package/lib/application/runner.js.map +1 -0
  22. package/lib/application/unpackedapplication.d.ts +104 -0
  23. package/lib/application/unpackedapplication.d.ts.map +1 -0
  24. package/lib/application/unpackedapplication.js +492 -0
  25. package/lib/application/unpackedapplication.js.map +1 -0
  26. package/lib/bin/cli-phase.d.ts +28 -0
  27. package/lib/bin/cli-phase.d.ts.map +1 -0
  28. package/lib/bin/cli-phase.js +44 -0
  29. package/lib/bin/cli-phase.js.map +1 -0
  30. package/lib/bin/cli.d.ts +161 -0
  31. package/lib/bin/cli.d.ts.map +1 -0
  32. package/lib/bin/cli.js +828 -0
  33. package/lib/bin/cli.js.map +1 -0
  34. package/lib/bin/launcher.d.ts +3 -0
  35. package/lib/bin/launcher.d.ts.map +1 -0
  36. package/lib/bin/launcher.js +50 -0
  37. package/lib/bin/launcher.js.map +1 -0
  38. package/lib/cache/cache.d.ts +33 -0
  39. package/lib/cache/cache.d.ts.map +1 -0
  40. package/lib/cache/cache.js +8 -0
  41. package/lib/cache/cache.js.map +1 -0
  42. package/lib/{services/configuration.d.ts → configurations/configuration.service.d.ts} +58 -49
  43. package/lib/configurations/configuration.service.d.ts.map +1 -0
  44. package/lib/configurations/configuration.service.js +248 -0
  45. package/lib/configurations/configuration.service.js.map +1 -0
  46. package/lib/configurations/fileconfiguration.service.d.ts +30 -0
  47. package/lib/configurations/fileconfiguration.service.d.ts.map +1 -0
  48. package/lib/configurations/fileconfiguration.service.js +65 -0
  49. package/lib/configurations/fileconfiguration.service.js.map +1 -0
  50. package/lib/configurations/kubernetesconfiguration.service.d.ts +43 -0
  51. package/lib/configurations/kubernetesconfiguration.service.d.ts.map +1 -0
  52. package/lib/configurations/kubernetesconfiguration.service.js +83 -0
  53. package/lib/configurations/kubernetesconfiguration.service.js.map +1 -0
  54. package/lib/contexts/execution.d.ts +33 -0
  55. package/lib/contexts/execution.d.ts.map +1 -0
  56. package/lib/contexts/execution.js +73 -0
  57. package/lib/contexts/execution.js.map +1 -0
  58. package/lib/contexts/globalcontext.d.ts +29 -0
  59. package/lib/contexts/globalcontext.d.ts.map +1 -0
  60. package/lib/contexts/globalcontext.js +38 -0
  61. package/lib/contexts/globalcontext.js.map +1 -0
  62. package/lib/{utils → contexts}/httpcontext.d.ts +45 -19
  63. package/lib/contexts/httpcontext.d.ts.map +1 -0
  64. package/lib/{utils → contexts}/httpcontext.js +102 -34
  65. package/lib/contexts/httpcontext.js.map +1 -0
  66. package/lib/contexts/icontext.d.ts +236 -0
  67. package/lib/contexts/icontext.d.ts.map +1 -0
  68. package/lib/contexts/icontext.js +230 -0
  69. package/lib/contexts/icontext.js.map +1 -0
  70. package/lib/contexts/operationcontext.d.ts +179 -0
  71. package/lib/contexts/operationcontext.d.ts.map +1 -0
  72. package/lib/contexts/operationcontext.js +358 -0
  73. package/lib/contexts/operationcontext.js.map +1 -0
  74. package/lib/contexts/simplecontext.d.ts +31 -0
  75. package/lib/contexts/simplecontext.d.ts.map +1 -0
  76. package/lib/contexts/simplecontext.js +45 -0
  77. package/lib/contexts/simplecontext.js.map +1 -0
  78. package/lib/contexts/webcontext.d.ts +218 -0
  79. package/lib/contexts/webcontext.d.ts.map +1 -0
  80. package/lib/contexts/webcontext.js +389 -0
  81. package/lib/contexts/webcontext.js.map +1 -0
  82. package/lib/core/authorizer.d.ts +23 -0
  83. package/lib/core/authorizer.d.ts.map +1 -0
  84. package/lib/core/authorizer.js +17 -0
  85. package/lib/core/authorizer.js.map +1 -0
  86. package/lib/core/core.d.ts +225 -0
  87. package/lib/core/core.d.ts.map +1 -0
  88. package/lib/core/core.js +576 -0
  89. package/lib/core/core.js.map +1 -0
  90. package/lib/core/hooks.d.ts +72 -0
  91. package/lib/core/hooks.d.ts.map +1 -0
  92. package/lib/core/hooks.js +73 -0
  93. package/lib/core/hooks.js.map +1 -0
  94. package/lib/core/icore.d.ts +249 -0
  95. package/lib/core/icore.d.ts.map +1 -0
  96. package/lib/core/icore.js +15 -0
  97. package/lib/core/icore.js.map +1 -0
  98. package/lib/core/instancestorage.d.ts +61 -0
  99. package/lib/core/instancestorage.d.ts.map +1 -0
  100. package/lib/core/instancestorage.js +75 -0
  101. package/lib/core/instancestorage.js.map +1 -0
  102. package/lib/core/operations.d.ts +181 -0
  103. package/lib/core/operations.d.ts.map +1 -0
  104. package/lib/core/operations.js +559 -0
  105. package/lib/core/operations.js.map +1 -0
  106. package/lib/errors/errors.d.ts +126 -0
  107. package/lib/errors/errors.d.ts.map +1 -0
  108. package/lib/errors/errors.js +165 -0
  109. package/lib/errors/errors.js.map +1 -0
  110. package/lib/events/asynceventemitter.d.ts +159 -0
  111. package/lib/events/asynceventemitter.d.ts.map +1 -0
  112. package/lib/events/asynceventemitter.js +152 -0
  113. package/lib/events/asynceventemitter.js.map +1 -0
  114. package/lib/events/events.d.ts +112 -0
  115. package/lib/events/events.d.ts.map +1 -0
  116. package/lib/events/events.js +45 -0
  117. package/lib/events/events.js.map +1 -0
  118. package/lib/index.d.ts +84 -51
  119. package/lib/index.d.ts.map +1 -0
  120. package/lib/index.js +82 -59
  121. package/lib/index.js.map +1 -1
  122. package/lib/loggers/console.service.d.ts +24 -0
  123. package/lib/loggers/console.service.d.ts.map +1 -0
  124. package/lib/loggers/console.service.js +30 -0
  125. package/lib/loggers/console.service.js.map +1 -0
  126. package/lib/loggers/file.service.d.ts +25 -0
  127. package/lib/loggers/file.service.d.ts.map +1 -0
  128. package/lib/loggers/file.service.js +33 -0
  129. package/lib/loggers/file.service.js.map +1 -0
  130. package/lib/loggers/hooks.d.ts +20 -0
  131. package/lib/loggers/hooks.d.ts.map +1 -0
  132. package/lib/loggers/hooks.js +40 -0
  133. package/lib/loggers/hooks.js.map +1 -0
  134. package/lib/loggers/ilogger.d.ts +76 -0
  135. package/lib/loggers/ilogger.d.ts.map +1 -0
  136. package/lib/loggers/ilogger.js +108 -0
  137. package/lib/loggers/ilogger.js.map +1 -0
  138. package/lib/loggers/logger.d.ts +13 -0
  139. package/lib/loggers/logger.d.ts.map +1 -0
  140. package/lib/loggers/logger.js +18 -0
  141. package/lib/loggers/logger.js.map +1 -0
  142. package/lib/loggers/memory.service.d.ts +18 -0
  143. package/lib/loggers/memory.service.d.ts.map +1 -0
  144. package/lib/loggers/memory.service.js +21 -0
  145. package/lib/loggers/memory.service.js.map +1 -0
  146. package/lib/loggers/params.d.ts +47 -0
  147. package/lib/loggers/params.d.ts.map +1 -0
  148. package/lib/loggers/params.js +56 -0
  149. package/lib/loggers/params.js.map +1 -0
  150. package/lib/metrics/metrics.d.ts +25 -0
  151. package/lib/metrics/metrics.d.ts.map +1 -0
  152. package/lib/metrics/metrics.js +51 -0
  153. package/lib/metrics/metrics.js.map +1 -0
  154. package/lib/models/aclmodel.d.ts +21 -77
  155. package/lib/models/aclmodel.d.ts.map +1 -0
  156. package/lib/models/aclmodel.js +27 -204
  157. package/lib/models/aclmodel.js.map +1 -1
  158. package/lib/models/coremodel.model.d.ts +5 -0
  159. package/lib/models/coremodel.model.d.ts.map +1 -0
  160. package/lib/models/coremodel.model.js +5 -0
  161. package/lib/models/coremodel.model.js.map +1 -0
  162. package/lib/models/decorator.d.ts +63 -0
  163. package/lib/models/decorator.d.ts.map +1 -0
  164. package/lib/models/decorator.js +63 -0
  165. package/lib/models/decorator.js.map +1 -0
  166. package/lib/models/deployment.d.ts +2 -1
  167. package/lib/models/deployment.d.ts.map +1 -0
  168. package/lib/models/ident.model.d.ts +89 -0
  169. package/lib/models/ident.model.d.ts.map +1 -0
  170. package/lib/models/ident.model.js +115 -0
  171. package/lib/models/ident.model.js.map +1 -0
  172. package/lib/models/ownermodel.model.d.ts +68 -0
  173. package/lib/models/ownermodel.model.d.ts.map +1 -0
  174. package/lib/models/ownermodel.model.js +112 -0
  175. package/lib/models/ownermodel.model.js.map +1 -0
  176. package/lib/models/registry.model.d.ts +76 -0
  177. package/lib/models/registry.model.d.ts.map +1 -0
  178. package/lib/models/registry.model.js +104 -0
  179. package/lib/models/registry.model.js.map +1 -0
  180. package/lib/models/rolemodel.model.d.ts +28 -0
  181. package/lib/models/rolemodel.model.d.ts.map +1 -0
  182. package/lib/models/rolemodel.model.js +53 -0
  183. package/lib/models/rolemodel.model.js.map +1 -0
  184. package/lib/models/simpleuser.model.d.ts +78 -0
  185. package/lib/models/simpleuser.model.d.ts.map +1 -0
  186. package/lib/models/simpleuser.model.js +123 -0
  187. package/lib/models/simpleuser.model.js.map +1 -0
  188. package/lib/models/types.d.ts +113 -0
  189. package/lib/models/types.d.ts.map +1 -0
  190. package/lib/models/types.js +2 -0
  191. package/lib/models/types.js.map +1 -0
  192. package/lib/models/user.model.d.ts +103 -0
  193. package/lib/models/user.model.d.ts.map +1 -0
  194. package/lib/models/user.model.js +125 -0
  195. package/lib/models/user.model.js.map +1 -0
  196. package/lib/queues/memoryqueue.service.d.ts +72 -0
  197. package/lib/queues/memoryqueue.service.d.ts.map +1 -0
  198. package/lib/queues/memoryqueue.service.js +136 -0
  199. package/lib/queues/memoryqueue.service.js.map +1 -0
  200. package/lib/queues/pubsubservice.d.ts +9 -6
  201. package/lib/queues/pubsubservice.d.ts.map +1 -0
  202. package/lib/queues/pubsubservice.js +5 -4
  203. package/lib/queues/pubsubservice.js.map +1 -1
  204. package/lib/queues/queueservice.d.ts +10 -11
  205. package/lib/queues/queueservice.d.ts.map +1 -0
  206. package/lib/queues/queueservice.js +48 -20
  207. package/lib/queues/queueservice.js.map +1 -1
  208. package/lib/rest/hooks.d.ts +8 -0
  209. package/lib/rest/hooks.d.ts.map +1 -0
  210. package/lib/rest/hooks.js +10 -0
  211. package/lib/rest/hooks.js.map +1 -0
  212. package/lib/rest/irest.d.ts +212 -0
  213. package/lib/rest/irest.d.ts.map +1 -0
  214. package/lib/rest/irest.js +39 -0
  215. package/lib/rest/irest.js.map +1 -0
  216. package/lib/rest/originfilter.d.ts +38 -0
  217. package/lib/rest/originfilter.d.ts.map +1 -0
  218. package/lib/rest/originfilter.js +61 -0
  219. package/lib/rest/originfilter.js.map +1 -0
  220. package/lib/rest/restoperationstransport.service.d.ts +193 -0
  221. package/lib/rest/restoperationstransport.service.d.ts.map +1 -0
  222. package/lib/rest/restoperationstransport.service.js +780 -0
  223. package/lib/rest/restoperationstransport.service.js.map +1 -0
  224. package/lib/rest/router.service.d.ts +244 -0
  225. package/lib/rest/router.service.d.ts.map +1 -0
  226. package/lib/rest/router.service.js +843 -0
  227. package/lib/rest/router.service.js.map +1 -0
  228. package/lib/schemas/hooks.d.ts +48 -0
  229. package/lib/schemas/hooks.d.ts.map +1 -0
  230. package/lib/schemas/hooks.js +152 -0
  231. package/lib/schemas/hooks.js.map +1 -0
  232. package/lib/services/audit.model.d.ts +208 -0
  233. package/lib/services/audit.model.d.ts.map +1 -0
  234. package/lib/services/audit.model.js +431 -0
  235. package/lib/services/audit.model.js.map +1 -0
  236. package/lib/services/{authentication.d.ts → authentication.service.d.ts} +140 -58
  237. package/lib/services/authentication.service.d.ts.map +1 -0
  238. package/lib/services/authentication.service.js +932 -0
  239. package/lib/services/authentication.service.js.map +1 -0
  240. package/lib/services/binary.service.d.ts +808 -0
  241. package/lib/services/binary.service.d.ts.map +1 -0
  242. package/lib/services/binary.service.js +1365 -0
  243. package/lib/services/binary.service.js.map +1 -0
  244. package/lib/services/cloudbinary.d.ts +19 -13
  245. package/lib/services/cloudbinary.d.ts.map +1 -0
  246. package/lib/services/cloudbinary.js +24 -18
  247. package/lib/services/cloudbinary.js.map +1 -1
  248. package/lib/services/command.d.ts +118 -0
  249. package/lib/services/command.d.ts.map +1 -0
  250. package/lib/services/command.js +97 -0
  251. package/lib/services/command.js.map +1 -0
  252. package/lib/services/cron.service.d.ts +142 -0
  253. package/lib/services/cron.service.d.ts.map +1 -0
  254. package/lib/services/cron.service.js +291 -0
  255. package/lib/services/cron.service.js.map +1 -0
  256. package/lib/services/{cryptoservice.d.ts → cryptoservice.service.d.ts} +77 -142
  257. package/lib/services/cryptoservice.service.d.ts.map +1 -0
  258. package/lib/services/cryptoservice.service.js +527 -0
  259. package/lib/services/cryptoservice.service.js.map +1 -0
  260. package/lib/services/debugmailer.service.d.ts +49 -0
  261. package/lib/services/debugmailer.service.d.ts.map +1 -0
  262. package/lib/services/debugmailer.service.js +66 -0
  263. package/lib/services/debugmailer.service.js.map +1 -0
  264. package/lib/services/domainservice.service.d.ts +203 -0
  265. package/lib/services/domainservice.service.d.ts.map +1 -0
  266. package/lib/services/domainservice.service.js +600 -0
  267. package/lib/services/domainservice.service.js.map +1 -0
  268. package/lib/services/httpserver.service.d.ts +248 -0
  269. package/lib/services/httpserver.service.d.ts.map +1 -0
  270. package/lib/services/httpserver.service.js +673 -0
  271. package/lib/services/httpserver.service.js.map +1 -0
  272. package/lib/services/iauthentication.d.ts +9 -0
  273. package/lib/services/iauthentication.d.ts.map +1 -0
  274. package/lib/services/iauthentication.js +2 -0
  275. package/lib/services/iauthentication.js.map +1 -0
  276. package/lib/services/icryptoservice.d.ts +127 -0
  277. package/lib/services/icryptoservice.d.ts.map +1 -0
  278. package/lib/services/icryptoservice.js +68 -0
  279. package/lib/services/icryptoservice.js.map +1 -0
  280. package/lib/services/imailer.d.ts +17 -0
  281. package/lib/services/imailer.d.ts.map +1 -0
  282. package/lib/services/imailer.js +2 -0
  283. package/lib/services/imailer.js.map +1 -0
  284. package/lib/services/iservice.d.ts +104 -0
  285. package/lib/services/iservice.d.ts.map +1 -0
  286. package/lib/services/iservice.js +63 -0
  287. package/lib/services/iservice.js.map +1 -0
  288. package/lib/services/mailer.service.d.ts +220 -0
  289. package/lib/services/mailer.service.d.ts.map +1 -0
  290. package/lib/services/mailer.service.js +251 -0
  291. package/lib/services/mailer.service.js.map +1 -0
  292. package/lib/services/{notificationservice.d.ts → notificationservice.service.d.ts} +10 -10
  293. package/lib/services/notificationservice.service.d.ts.map +1 -0
  294. package/lib/services/{notificationservice.js → notificationservice.service.js} +24 -12
  295. package/lib/services/notificationservice.service.js.map +1 -0
  296. package/lib/services/oauth.d.ts +58 -31
  297. package/lib/services/oauth.d.ts.map +1 -0
  298. package/lib/services/oauth.js +365 -251
  299. package/lib/services/oauth.js.map +1 -1
  300. package/lib/services/operationstransport.d.ts +65 -0
  301. package/lib/services/operationstransport.d.ts.map +1 -0
  302. package/lib/services/operationstransport.js +103 -0
  303. package/lib/services/operationstransport.js.map +1 -0
  304. package/lib/services/{prometheus.d.ts → prometheus.service.d.ts} +13 -11
  305. package/lib/services/prometheus.service.d.ts.map +1 -0
  306. package/lib/services/prometheus.service.js +203 -0
  307. package/lib/services/prometheus.service.js.map +1 -0
  308. package/lib/services/resource.service.d.ts +121 -0
  309. package/lib/services/resource.service.d.ts.map +1 -0
  310. package/lib/services/resource.service.js +301 -0
  311. package/lib/services/resource.service.js.map +1 -0
  312. package/lib/services/service.d.ts +88 -189
  313. package/lib/services/service.d.ts.map +1 -0
  314. package/lib/services/service.js +407 -432
  315. package/lib/services/service.js.map +1 -1
  316. package/lib/services/servicecommands.d.ts +99 -0
  317. package/lib/services/servicecommands.d.ts.map +1 -0
  318. package/lib/services/servicecommands.js +165 -0
  319. package/lib/services/servicecommands.js.map +1 -0
  320. package/lib/services/serviceparameters.d.ts +33 -0
  321. package/lib/services/serviceparameters.d.ts.map +1 -0
  322. package/lib/services/serviceparameters.js +79 -0
  323. package/lib/services/serviceparameters.js.map +1 -0
  324. package/lib/{utils → session}/cookie.d.ts +32 -18
  325. package/lib/session/cookie.d.ts.map +1 -0
  326. package/lib/{utils → session}/cookie.js +76 -23
  327. package/lib/session/cookie.js.map +1 -0
  328. package/lib/session/manager.model.d.ts +71 -0
  329. package/lib/session/manager.model.d.ts.map +1 -0
  330. package/lib/session/manager.model.js +155 -0
  331. package/lib/session/manager.model.js.map +1 -0
  332. package/lib/session/session.d.ts +57 -0
  333. package/lib/session/session.d.ts.map +1 -0
  334. package/lib/session/session.js +126 -0
  335. package/lib/session/session.js.map +1 -0
  336. package/lib/stores/istore.d.ts +99 -0
  337. package/lib/stores/istore.d.ts.map +1 -0
  338. package/lib/stores/istore.js +26 -0
  339. package/lib/stores/istore.js.map +1 -0
  340. package/lib/stores/memory.service.d.ts +114 -0
  341. package/lib/stores/memory.service.d.ts.map +1 -0
  342. package/lib/stores/memory.service.js +343 -0
  343. package/lib/stores/memory.service.js.map +1 -0
  344. package/lib/stores/store.d.ts +127 -768
  345. package/lib/stores/store.d.ts.map +1 -0
  346. package/lib/stores/store.js +258 -1718
  347. package/lib/stores/store.js.map +1 -1
  348. package/lib/templates/templates.d.ts +39 -0
  349. package/lib/templates/templates.d.ts.map +1 -0
  350. package/lib/templates/templates.js +92 -0
  351. package/lib/templates/templates.js.map +1 -0
  352. package/lib/test/application.d.ts +174 -0
  353. package/lib/test/application.d.ts.map +1 -0
  354. package/lib/test/application.js +288 -0
  355. package/lib/test/application.js.map +1 -0
  356. package/lib/test/asyncstorage.d.ts +16 -0
  357. package/lib/test/asyncstorage.d.ts.map +1 -0
  358. package/lib/test/asyncstorage.js +32 -0
  359. package/lib/test/asyncstorage.js.map +1 -0
  360. package/lib/test/core.d.ts +63 -0
  361. package/lib/test/core.d.ts.map +1 -0
  362. package/lib/test/core.js +190 -0
  363. package/lib/test/core.js.map +1 -0
  364. package/lib/test/index.d.ts +7 -0
  365. package/lib/test/index.d.ts.map +1 -0
  366. package/lib/test/index.js +8 -0
  367. package/lib/test/index.js.map +1 -0
  368. package/lib/test/internal.d.ts +34 -0
  369. package/lib/test/internal.d.ts.map +1 -0
  370. package/lib/test/internal.js +156 -0
  371. package/lib/test/internal.js.map +1 -0
  372. package/lib/test/objects.d.ts +318 -0
  373. package/lib/test/objects.d.ts.map +1 -0
  374. package/lib/test/objects.js +443 -0
  375. package/lib/test/objects.js.map +1 -0
  376. package/lib/utils/abstractdeployer.d.ts +5 -2
  377. package/lib/utils/abstractdeployer.d.ts.map +1 -0
  378. package/lib/utils/abstractdeployer.js +3 -0
  379. package/lib/utils/abstractdeployer.js.map +1 -1
  380. package/package.json +85 -56
  381. package/test/cachedapp/webda.config.json +1 -5
  382. package/test/config-cached.json +1 -5
  383. package/test/config.json +6 -99
  384. package/test/data/.env +1 -0
  385. package/test/my-cnf.json +9 -0
  386. package/webda.module.json +3462 -2231
  387. package/lib/application.d.ts +0 -876
  388. package/lib/application.js +0 -741
  389. package/lib/application.js.map +0 -1
  390. package/lib/application.spec.d.ts +0 -1
  391. package/lib/application.spec.js +0 -234
  392. package/lib/application.spec.js.map +0 -1
  393. package/lib/core.d.ts +0 -740
  394. package/lib/core.js +0 -1310
  395. package/lib/core.js.map +0 -1
  396. package/lib/core.spec.d.ts +0 -1
  397. package/lib/core.spec.js +0 -761
  398. package/lib/core.spec.js.map +0 -1
  399. package/lib/errors.d.ts +0 -65
  400. package/lib/errors.js +0 -113
  401. package/lib/errors.js.map +0 -1
  402. package/lib/errors.spec.d.ts +0 -1
  403. package/lib/errors.spec.js +0 -33
  404. package/lib/errors.spec.js.map +0 -1
  405. package/lib/models/aclmodel.spec.d.ts +0 -1
  406. package/lib/models/aclmodel.spec.js +0 -187
  407. package/lib/models/aclmodel.spec.js.map +0 -1
  408. package/lib/models/coremodel.d.ts +0 -887
  409. package/lib/models/coremodel.js +0 -1208
  410. package/lib/models/coremodel.js.map +0 -1
  411. package/lib/models/coremodel.spec.d.ts +0 -1
  412. package/lib/models/coremodel.spec.js +0 -462
  413. package/lib/models/coremodel.spec.js.map +0 -1
  414. package/lib/models/ident.d.ts +0 -53
  415. package/lib/models/ident.js +0 -40
  416. package/lib/models/ident.js.map +0 -1
  417. package/lib/models/ident.spec.d.ts +0 -1
  418. package/lib/models/ident.spec.js +0 -43
  419. package/lib/models/ident.spec.js.map +0 -1
  420. package/lib/models/ownermodel.d.ts +0 -50
  421. package/lib/models/ownermodel.js +0 -65
  422. package/lib/models/ownermodel.js.map +0 -1
  423. package/lib/models/ownermodel.spec.d.ts +0 -1
  424. package/lib/models/ownermodel.spec.js +0 -191
  425. package/lib/models/ownermodel.spec.js.map +0 -1
  426. package/lib/models/relations.d.ts +0 -181
  427. package/lib/models/relations.js +0 -157
  428. package/lib/models/relations.js.map +0 -1
  429. package/lib/models/relations.spec.d.ts +0 -12
  430. package/lib/models/relations.spec.js +0 -224
  431. package/lib/models/relations.spec.js.map +0 -1
  432. package/lib/models/rolemodel.d.ts +0 -10
  433. package/lib/models/rolemodel.js +0 -35
  434. package/lib/models/rolemodel.js.map +0 -1
  435. package/lib/models/rolemodel.spec.d.ts +0 -1
  436. package/lib/models/rolemodel.spec.js +0 -86
  437. package/lib/models/rolemodel.spec.js.map +0 -1
  438. package/lib/models/user.d.ts +0 -100
  439. package/lib/models/user.js +0 -157
  440. package/lib/models/user.js.map +0 -1
  441. package/lib/models/user.spec.d.ts +0 -1
  442. package/lib/models/user.spec.js +0 -88
  443. package/lib/models/user.spec.js.map +0 -1
  444. package/lib/queues/filequeue.d.ts +0 -58
  445. package/lib/queues/filequeue.js +0 -131
  446. package/lib/queues/filequeue.js.map +0 -1
  447. package/lib/queues/filequeue.spec.d.ts +0 -1
  448. package/lib/queues/filequeue.spec.js +0 -78
  449. package/lib/queues/filequeue.spec.js.map +0 -1
  450. package/lib/queues/memoryqueue.d.ts +0 -45
  451. package/lib/queues/memoryqueue.js +0 -81
  452. package/lib/queues/memoryqueue.js.map +0 -1
  453. package/lib/queues/memoryqueue.spec.d.ts +0 -1
  454. package/lib/queues/memoryqueue.spec.js +0 -192
  455. package/lib/queues/memoryqueue.spec.js.map +0 -1
  456. package/lib/queues/queue.spec.d.ts +0 -5
  457. package/lib/queues/queue.spec.js +0 -55
  458. package/lib/queues/queue.spec.js.map +0 -1
  459. package/lib/router.d.ts +0 -172
  460. package/lib/router.js +0 -419
  461. package/lib/router.js.map +0 -1
  462. package/lib/router.spec.d.ts +0 -1
  463. package/lib/router.spec.js +0 -229
  464. package/lib/router.spec.js.map +0 -1
  465. package/lib/services/asyncevents.d.ts +0 -151
  466. package/lib/services/asyncevents.js +0 -217
  467. package/lib/services/asyncevents.js.map +0 -1
  468. package/lib/services/asyncevents.spec.d.ts +0 -1
  469. package/lib/services/asyncevents.spec.js +0 -118
  470. package/lib/services/asyncevents.spec.js.map +0 -1
  471. package/lib/services/authentication.js +0 -772
  472. package/lib/services/authentication.js.map +0 -1
  473. package/lib/services/authentication.spec.d.ts +0 -1
  474. package/lib/services/authentication.spec.js +0 -458
  475. package/lib/services/authentication.spec.js.map +0 -1
  476. package/lib/services/binary.d.ts +0 -549
  477. package/lib/services/binary.js +0 -986
  478. package/lib/services/binary.js.map +0 -1
  479. package/lib/services/binary.spec.d.ts +0 -44
  480. package/lib/services/binary.spec.js +0 -438
  481. package/lib/services/binary.spec.js.map +0 -1
  482. package/lib/services/cloudbinary.spec.d.ts +0 -13
  483. package/lib/services/cloudbinary.spec.js +0 -192
  484. package/lib/services/cloudbinary.spec.js.map +0 -1
  485. package/lib/services/configuration.js +0 -178
  486. package/lib/services/configuration.js.map +0 -1
  487. package/lib/services/configuration.spec.d.ts +0 -1
  488. package/lib/services/configuration.spec.js +0 -87
  489. package/lib/services/configuration.spec.js.map +0 -1
  490. package/lib/services/cron.d.ts +0 -73
  491. package/lib/services/cron.js +0 -141
  492. package/lib/services/cron.js.map +0 -1
  493. package/lib/services/cron.spec.d.ts +0 -1
  494. package/lib/services/cron.spec.js +0 -76
  495. package/lib/services/cron.spec.js.map +0 -1
  496. package/lib/services/cryptoservice.js +0 -434
  497. package/lib/services/cryptoservice.js.map +0 -1
  498. package/lib/services/cryptoservice.spec.d.ts +0 -1
  499. package/lib/services/cryptoservice.spec.js +0 -177
  500. package/lib/services/cryptoservice.spec.js.map +0 -1
  501. package/lib/services/debugmailer.d.ts +0 -36
  502. package/lib/services/debugmailer.js +0 -52
  503. package/lib/services/debugmailer.js.map +0 -1
  504. package/lib/services/debugmailer.spec.d.ts +0 -1
  505. package/lib/services/debugmailer.spec.js +0 -29
  506. package/lib/services/debugmailer.spec.js.map +0 -1
  507. package/lib/services/domainservice.d.ts +0 -152
  508. package/lib/services/domainservice.js +0 -881
  509. package/lib/services/domainservice.js.map +0 -1
  510. package/lib/services/domainservice.spec.d.ts +0 -1
  511. package/lib/services/domainservice.spec.js +0 -401
  512. package/lib/services/domainservice.spec.js.map +0 -1
  513. package/lib/services/filebinary.d.ts +0 -133
  514. package/lib/services/filebinary.js +0 -371
  515. package/lib/services/filebinary.js.map +0 -1
  516. package/lib/services/filebinary.spec.d.ts +0 -21
  517. package/lib/services/filebinary.spec.js +0 -415
  518. package/lib/services/filebinary.spec.js.map +0 -1
  519. package/lib/services/fileconfiguration.d.ts +0 -22
  520. package/lib/services/fileconfiguration.js +0 -48
  521. package/lib/services/fileconfiguration.js.map +0 -1
  522. package/lib/services/fileconfiguration.spec.d.ts +0 -1
  523. package/lib/services/fileconfiguration.spec.js +0 -177
  524. package/lib/services/fileconfiguration.spec.js.map +0 -1
  525. package/lib/services/invitationservice.d.ts +0 -222
  526. package/lib/services/invitationservice.js +0 -526
  527. package/lib/services/invitationservice.js.map +0 -1
  528. package/lib/services/invitationservice.spec.d.ts +0 -1
  529. package/lib/services/invitationservice.spec.js +0 -516
  530. package/lib/services/invitationservice.spec.js.map +0 -1
  531. package/lib/services/kubernetesconfiguration.d.ts +0 -26
  532. package/lib/services/kubernetesconfiguration.js +0 -54
  533. package/lib/services/kubernetesconfiguration.js.map +0 -1
  534. package/lib/services/kubernetesconfiguration.spec.d.ts +0 -1
  535. package/lib/services/kubernetesconfiguration.spec.js +0 -147
  536. package/lib/services/kubernetesconfiguration.spec.js.map +0 -1
  537. package/lib/services/mailer.d.ts +0 -165
  538. package/lib/services/mailer.js +0 -176
  539. package/lib/services/mailer.js.map +0 -1
  540. package/lib/services/mailer.spec.d.ts +0 -1
  541. package/lib/services/mailer.spec.js +0 -144
  542. package/lib/services/mailer.spec.js.map +0 -1
  543. package/lib/services/notificationservice.js.map +0 -1
  544. package/lib/services/notificationservice.spec.d.ts +0 -1
  545. package/lib/services/notificationservice.spec.js +0 -78
  546. package/lib/services/notificationservice.spec.js.map +0 -1
  547. package/lib/services/oauth.spec.d.ts +0 -1
  548. package/lib/services/oauth.spec.js +0 -184
  549. package/lib/services/oauth.spec.js.map +0 -1
  550. package/lib/services/prometheus.js +0 -160
  551. package/lib/services/prometheus.js.map +0 -1
  552. package/lib/services/prometheus.spec.d.ts +0 -1
  553. package/lib/services/prometheus.spec.js +0 -57
  554. package/lib/services/prometheus.spec.js.map +0 -1
  555. package/lib/services/resource.d.ts +0 -87
  556. package/lib/services/resource.js +0 -156
  557. package/lib/services/resource.js.map +0 -1
  558. package/lib/services/resource.spec.d.ts +0 -1
  559. package/lib/services/resource.spec.js +0 -122
  560. package/lib/services/resource.spec.js.map +0 -1
  561. package/lib/services/service.spec.d.ts +0 -1
  562. package/lib/services/service.spec.js +0 -268
  563. package/lib/services/service.spec.js.map +0 -1
  564. package/lib/stores/aggregator.d.ts +0 -41
  565. package/lib/stores/aggregator.js +0 -80
  566. package/lib/stores/aggregator.js.map +0 -1
  567. package/lib/stores/aliasstore.d.ts +0 -108
  568. package/lib/stores/aliasstore.js +0 -168
  569. package/lib/stores/aliasstore.js.map +0 -1
  570. package/lib/stores/aliasstore.spec.d.ts +0 -11
  571. package/lib/stores/aliasstore.spec.js +0 -89
  572. package/lib/stores/aliasstore.spec.js.map +0 -1
  573. package/lib/stores/file.d.ts +0 -107
  574. package/lib/stores/file.js +0 -188
  575. package/lib/stores/file.js.map +0 -1
  576. package/lib/stores/file.spec.d.ts +0 -19
  577. package/lib/stores/file.spec.js +0 -232
  578. package/lib/stores/file.spec.js.map +0 -1
  579. package/lib/stores/mapper.d.ts +0 -149
  580. package/lib/stores/mapper.js +0 -293
  581. package/lib/stores/mapper.js.map +0 -1
  582. package/lib/stores/mapper.spec.d.ts +0 -1
  583. package/lib/stores/mapper.spec.js +0 -160
  584. package/lib/stores/mapper.spec.js.map +0 -1
  585. package/lib/stores/memory.d.ts +0 -151
  586. package/lib/stores/memory.js +0 -371
  587. package/lib/stores/memory.js.map +0 -1
  588. package/lib/stores/memory.spec.d.ts +0 -20
  589. package/lib/stores/memory.spec.js +0 -328
  590. package/lib/stores/memory.spec.js.map +0 -1
  591. package/lib/stores/modelmapper.d.ts +0 -61
  592. package/lib/stores/modelmapper.js +0 -199
  593. package/lib/stores/modelmapper.js.map +0 -1
  594. package/lib/stores/store.spec.d.ts +0 -65
  595. package/lib/stores/store.spec.js +0 -906
  596. package/lib/stores/store.spec.js.map +0 -1
  597. package/lib/test.d.ts +0 -162
  598. package/lib/test.js +0 -399
  599. package/lib/test.js.map +0 -1
  600. package/lib/unpackedapplication.d.ts +0 -76
  601. package/lib/unpackedapplication.js +0 -299
  602. package/lib/unpackedapplication.js.map +0 -1
  603. package/lib/utils/abstractdeployer.spec.d.ts +0 -1
  604. package/lib/utils/abstractdeployer.spec.js +0 -21
  605. package/lib/utils/abstractdeployer.spec.js.map +0 -1
  606. package/lib/utils/case.d.ts +0 -7
  607. package/lib/utils/case.js +0 -43
  608. package/lib/utils/case.js.map +0 -1
  609. package/lib/utils/case.spec.d.ts +0 -1
  610. package/lib/utils/case.spec.js +0 -50
  611. package/lib/utils/case.spec.js.map +0 -1
  612. package/lib/utils/context.d.ts +0 -462
  613. package/lib/utils/context.js +0 -732
  614. package/lib/utils/context.js.map +0 -1
  615. package/lib/utils/context.spec.d.ts +0 -9
  616. package/lib/utils/context.spec.js +0 -372
  617. package/lib/utils/context.spec.js.map +0 -1
  618. package/lib/utils/cookie.js.map +0 -1
  619. package/lib/utils/cookie.spec.d.ts +0 -1
  620. package/lib/utils/cookie.spec.js +0 -78
  621. package/lib/utils/cookie.spec.js.map +0 -1
  622. package/lib/utils/esm.d.ts +0 -13
  623. package/lib/utils/esm.js +0 -19
  624. package/lib/utils/esm.js.map +0 -1
  625. package/lib/utils/httpcontext.js.map +0 -1
  626. package/lib/utils/httpcontext.spec.d.ts +0 -4
  627. package/lib/utils/httpcontext.spec.js +0 -77
  628. package/lib/utils/httpcontext.spec.js.map +0 -1
  629. package/lib/utils/logger.d.ts +0 -91
  630. package/lib/utils/logger.js +0 -121
  631. package/lib/utils/logger.js.map +0 -1
  632. package/lib/utils/logger.spec.d.ts +0 -1
  633. package/lib/utils/logger.spec.js +0 -48
  634. package/lib/utils/logger.spec.js.map +0 -1
  635. package/lib/utils/serializers.d.ts +0 -161
  636. package/lib/utils/serializers.js +0 -420
  637. package/lib/utils/serializers.js.map +0 -1
  638. package/lib/utils/serializers.spec.d.ts +0 -1
  639. package/lib/utils/serializers.spec.js +0 -313
  640. package/lib/utils/serializers.spec.js.map +0 -1
  641. package/lib/utils/session.d.ts +0 -126
  642. package/lib/utils/session.js +0 -166
  643. package/lib/utils/session.js.map +0 -1
  644. package/lib/utils/session.spec.d.ts +0 -1
  645. package/lib/utils/session.spec.js +0 -71
  646. package/lib/utils/session.spec.js.map +0 -1
  647. package/lib/utils/throttler.d.ts +0 -102
  648. package/lib/utils/throttler.js +0 -168
  649. package/lib/utils/throttler.js.map +0 -1
  650. package/lib/utils/throttler.spec.d.ts +0 -1
  651. package/lib/utils/throttler.spec.js +0 -55
  652. package/lib/utils/throttler.spec.js.map +0 -1
  653. package/lib/utils/waiter.d.ts +0 -93
  654. package/lib/utils/waiter.js +0 -148
  655. package/lib/utils/waiter.js.map +0 -1
  656. package/lib/utils/waiter.spec.d.ts +0 -1
  657. package/lib/utils/waiter.spec.js +0 -98
  658. package/lib/utils/waiter.spec.js.map +0 -1
  659. package/test/config-file-missing-file-no-default.json +0 -44
  660. package/test/config-file-missing-file.json +0 -55
  661. package/test/config-file-no-reload.json +0 -69
  662. package/test/config-file-reload.json +0 -68
  663. package/test/config-invitation.json +0 -63
  664. package/test/config-kube-reload.json +0 -68
  665. package/test/config-reload.json +0 -66
  666. package/test/config.old.json +0 -152
  667. package/test/jsonutils/mdocs.yaml +0 -56
  668. package/test/jsonutils/test.json +0 -3
  669. package/test/jsonutils/test.yml +0 -5
  670. package/test/moddas/annotatedservice.js +0 -23
  671. package/test/moddas/debugmailer.js +0 -13
  672. package/test/moddas/fakeservice.js +0 -4
  673. package/test/moddas/voidstore.js +0 -66
  674. package/test/models/ident.js +0 -36
  675. package/test/models/task.js +0 -42
@@ -0,0 +1,576 @@
1
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
2
+ var useValue = arguments.length > 2;
3
+ for (var i = 0; i < initializers.length; i++) {
4
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
5
+ }
6
+ return useValue ? value : void 0;
7
+ };
8
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
9
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
10
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
11
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
12
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
13
+ var _, done = false;
14
+ for (var i = decorators.length - 1; i >= 0; i--) {
15
+ var context = {};
16
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
17
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
18
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
19
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
20
+ if (kind === "accessor") {
21
+ if (result === void 0) continue;
22
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
23
+ if (_ = accept(result.get)) descriptor.get = _;
24
+ if (_ = accept(result.set)) descriptor.set = _;
25
+ if (_ = accept(result.init)) initializers.unshift(_);
26
+ }
27
+ else if (_ = accept(result)) {
28
+ if (kind === "field") initializers.unshift(_);
29
+ else descriptor[key] = _;
30
+ }
31
+ }
32
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
33
+ done = true;
34
+ };
35
+ import { deepmerge } from "deepmerge-ts";
36
+ import { UnpackedApplication } from "../application/unpackedapplication.js";
37
+ import { BinaryService } from "../services/binary.service.js";
38
+ import { Model } from "@webda/models";
39
+ import * as WebdaError from "../errors/errors.js";
40
+ import { Store } from "../stores/store.js";
41
+ import { Logger } from "../loggers/ilogger.js";
42
+ import { getUuid, State } from "@webda/utils";
43
+ import { emitCoreEvent } from "../events/events.js";
44
+ import { useInstanceStorage } from "./instancestorage.js";
45
+ import { useApplication, useModel, useModelId } from "../application/hooks.js";
46
+ import { InstanceCache } from "../cache/cache.js";
47
+ import { AsyncLocalStorage } from "node:async_hooks";
48
+ import * as jsondiffpatch from "jsondiffpatch";
49
+ const CoreState = (options) => State(options);
50
+ const depsDetector = new AsyncLocalStorage();
51
+ /**
52
+ * This is the main class of the framework, it handles the routing, the services initialization and resolution
53
+ *
54
+ * @class Core
55
+ * @category CoreFeatures
56
+ */
57
+ let Core = (() => {
58
+ let _instanceExtraInitializers = [];
59
+ let _getModelStoreCached_decorators;
60
+ let _getBinaryStoreCached_decorators;
61
+ let _resolve_decorators;
62
+ let _init_decorators;
63
+ let _stop_decorators;
64
+ return class Core {
65
+ static {
66
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
67
+ _getModelStoreCached_decorators = [InstanceCache()];
68
+ _getBinaryStoreCached_decorators = [InstanceCache()];
69
+ _resolve_decorators = [CoreState({ start: "resolving", end: "resolved" }), InstanceCache()];
70
+ _init_decorators = [CoreState({ start: "initializing", end: "ready" }), InstanceCache()];
71
+ _stop_decorators = [CoreState({ start: "stopping", end: "stopped" })];
72
+ __esDecorate(this, null, _getModelStoreCached_decorators, { kind: "method", name: "getModelStoreCached", static: false, private: false, access: { has: obj => "getModelStoreCached" in obj, get: obj => obj.getModelStoreCached }, metadata: _metadata }, null, _instanceExtraInitializers);
73
+ __esDecorate(this, null, _getBinaryStoreCached_decorators, { kind: "method", name: "getBinaryStoreCached", static: false, private: false, access: { has: obj => "getBinaryStoreCached" in obj, get: obj => obj.getBinaryStoreCached }, metadata: _metadata }, null, _instanceExtraInitializers);
74
+ __esDecorate(this, null, _resolve_decorators, { kind: "method", name: "resolve", static: false, private: false, access: { has: obj => "resolve" in obj, get: obj => obj.resolve }, metadata: _metadata }, null, _instanceExtraInitializers);
75
+ __esDecorate(this, null, _init_decorators, { kind: "method", name: "init", static: false, private: false, access: { has: obj => "init" in obj, get: obj => obj.init }, metadata: _metadata }, null, _instanceExtraInitializers);
76
+ __esDecorate(this, null, _stop_decorators, { kind: "method", name: "stop", static: false, private: false, access: { has: obj => "stop" in obj, get: obj => obj.stop }, metadata: _metadata }, null, _instanceExtraInitializers);
77
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
78
+ }
79
+ /**
80
+ * Webda Services
81
+ * @hidden
82
+ */
83
+ services = (__runInitializers(this, _instanceExtraInitializers), {});
84
+ /**
85
+ * Modda for services
86
+ * @hidden
87
+ */
88
+ moddas = {};
89
+ /**
90
+ * Application that generates this Core
91
+ */
92
+ application;
93
+ /**
94
+ * Configuration loaded from webda.config.json
95
+ * @hidden
96
+ */
97
+ configuration;
98
+ /**
99
+ * Console logger
100
+ * @hidden
101
+ */
102
+ logger;
103
+ /**
104
+ * Store the instance id
105
+ */
106
+ instanceId;
107
+ /**
108
+ * Contains all operations defined by services
109
+ */
110
+ operations = {};
111
+ /**
112
+ * Order of services initialization
113
+ */
114
+ initOrders = [];
115
+ /**
116
+ * Dependencies for each service
117
+ */
118
+ dependencies = {};
119
+ /**
120
+ * Configuration service name
121
+ */
122
+ configurationService;
123
+ applicationConfiguration;
124
+ /**
125
+ * Create a new Core
126
+ * @param application - the application instance
127
+ */
128
+ constructor(application) {
129
+ useInstanceStorage().core = this;
130
+ this.logger = new Logger(application.getWorkerOutput(), { class: "@webda/core" });
131
+ this.application = application || new UnpackedApplication(".");
132
+ // Load the configuration and migrate
133
+ this.configuration = {};
134
+ this.applicationConfiguration = this.application.getConfiguration();
135
+ for (const [key, value] of Object.entries(this.applicationConfiguration.services)) {
136
+ try {
137
+ this.moddas[key] = this.application.getModda(value.type || key);
138
+ }
139
+ catch (err) {
140
+ this.log("ERROR", `Cannot load modda ${value.type || key} for service ${key}`, err);
141
+ }
142
+ this.configuration[key] = Object.freeze((this.moddas[key]?.filterParameters || (p => p))({
143
+ ...this.applicationConfiguration.parameters,
144
+ ...value
145
+ }));
146
+ }
147
+ if (this.applicationConfiguration.application?.configurationService &&
148
+ this.configuration[this.applicationConfiguration.application.configurationService]) {
149
+ this.configurationService = this.applicationConfiguration.application.configurationService;
150
+ // Freeze the configuration service parameters to avoid changes at runtime
151
+ Object.freeze(this.configuration[this.applicationConfiguration.application.configurationService]);
152
+ }
153
+ }
154
+ /**
155
+ * Get the configuration object
156
+ * @returns {Configuration} the result
157
+ */
158
+ getConfiguration() {
159
+ return this.configuration;
160
+ }
161
+ /**
162
+ * Get the store assigned to this model
163
+ * @param model - the model to use
164
+ * @param modelOrConstructor - the model or its constructor
165
+ * @returns the result
166
+ */
167
+ getModelStore(modelOrConstructor) {
168
+ let model;
169
+ if (typeof modelOrConstructor === "string") {
170
+ model = useModel(modelOrConstructor);
171
+ }
172
+ else {
173
+ model = (modelOrConstructor instanceof Model ? modelOrConstructor.constructor : modelOrConstructor);
174
+ }
175
+ if (!model) {
176
+ throw new WebdaError.CodeError("MODEL_NOT_FOUND", "Model not found");
177
+ }
178
+ return this.getModelStoreCached(model);
179
+ }
180
+ /**
181
+ * Get the model store for a specific model
182
+ * Leverage the Process cache
183
+ *
184
+ * @param model - the model to use
185
+ * @returns the result
186
+ */
187
+ getModelStoreCached(model) {
188
+ // @ts-ignore
189
+ const stores = useApplication().getImplementations(Store);
190
+ let actualScore;
191
+ let actualStore = this.getService(this.applicationConfiguration?.application?.configurationService || "Registry");
192
+ for (const store in stores) {
193
+ const score = stores[store].handleModel(model);
194
+ // As 0 mean exact match we stop there
195
+ if (score === 0) {
196
+ return stores[store];
197
+ }
198
+ else if (score > 0 && (actualScore === undefined || actualScore > score)) {
199
+ actualScore = score;
200
+ actualStore = stores[store];
201
+ }
202
+ }
203
+ return actualStore;
204
+ }
205
+ /**
206
+ * Get the service that manage a model
207
+ * @param modelOrConstructor - the model or its constructor
208
+ * @param attribute - the attribute name
209
+ * @returns the result
210
+ */
211
+ getBinaryStore(modelOrConstructor, attribute) {
212
+ return this.getBinaryStoreCached(typeof modelOrConstructor === "string" ? modelOrConstructor : useModelId(modelOrConstructor), attribute);
213
+ }
214
+ /**
215
+ * Find the best matching BinaryService for a given model and attribute, with caching
216
+ * @param model - the model to use
217
+ * @param attribute - the attribute name
218
+ * @returns the result
219
+ */
220
+ getBinaryStoreCached(model, attribute) {
221
+ // Walk live service INSTANCES (not the modda-class registry). The previous
222
+ // path used `getImplementations(BinaryService)` which compares the
223
+ // BinaryService class against modda constructors via `instanceof` —
224
+ // always false for class-vs-class checks, so the lookup never matched
225
+ // any concrete service. Iterating live instances and checking each with
226
+ // `instanceof BinaryService` is the correct shape for a polymorphic
227
+ // service registry: it picks up FileBinary, S3Binary, GCPStorageService,
228
+ // etc. uniformly.
229
+ const services = this.getServices();
230
+ let actualScore = -1;
231
+ let actualService;
232
+ for (const name in services) {
233
+ const svc = services[name];
234
+ if (!(svc instanceof BinaryService))
235
+ continue;
236
+ const score = svc.handleBinary(model, attribute);
237
+ // 2 = explicit (model + attribute) — short-circuit.
238
+ if (score === 2) {
239
+ return svc;
240
+ }
241
+ // For partial matches (1 = model match w/ wildcard attribute, 0 =
242
+ // catch-all): pick the highest score. The original code used the
243
+ // wrong inequality (`actualScore > score`) which preferred lower
244
+ // specificity; flip it to keep the most specific match.
245
+ if (score >= 0 && (actualService === undefined || score > actualScore)) {
246
+ actualScore = score;
247
+ actualService = svc;
248
+ }
249
+ }
250
+ if (!actualService) {
251
+ throw new Error("No binary store found for " + model + " " + attribute);
252
+ }
253
+ return actualService;
254
+ }
255
+ /**
256
+ * Return Core instance id
257
+ *
258
+ * It is a random generated string
259
+ * @returns the result string
260
+ */
261
+ getInstanceId() {
262
+ this.instanceId ??= getUuid();
263
+ return this.instanceId;
264
+ }
265
+ /**
266
+ * Get absolute url with subpath
267
+ * @param subpath - the subpath to append
268
+ * @returns the result string
269
+ */
270
+ getApiUrl(subpath = "") {
271
+ if (subpath.length > 0 && !subpath.startsWith("/")) {
272
+ subpath = "/" + subpath;
273
+ }
274
+ return this.configuration.parameters.apiUrl + subpath;
275
+ }
276
+ /**
277
+ * Init one service
278
+ * @param service - the service instance
279
+ */
280
+ async initService(service) {
281
+ try {
282
+ this.log("TRACE", "Initializing service", service);
283
+ const start = Date.now();
284
+ await this.services[service].init();
285
+ const duration = Date.now() - start;
286
+ if (duration > 1000) {
287
+ this.log("WARN", `Service ${service} initialization took ${duration}ms`);
288
+ }
289
+ else {
290
+ this.log("DEBUG", `Service ${service} initialized in ${duration}ms`);
291
+ }
292
+ }
293
+ catch (err) {
294
+ this.log("ERROR", "Init service " + service + " failed: " + err.message);
295
+ this.log("TRACE", err.stack);
296
+ }
297
+ }
298
+ /**
299
+ * Resolve services and their dependencies WITHOUT calling service.init().
300
+ *
301
+ * After this completes:
302
+ * - All services declared in configuration are constructed.
303
+ * - Each service's `resolve()` has been called (via createService / bean registration).
304
+ * - `this.initOrders` is finalized (Store services first).
305
+ * - The configuration service (if any) has been fully initialized — it must run
306
+ * early so other services can read config during construction.
307
+ *
308
+ * No non-configuration service.init() calls — no DB/network I/O is performed.
309
+ * Build-time hooks (`@BuildCommand`) run after this phase.
310
+ */
311
+ async resolve() {
312
+ // Create services
313
+ // First create the configuration service if defined
314
+ const initOrders = [];
315
+ if (this.configurationService) {
316
+ const service = this.createService(this.configurationService);
317
+ if (!service) {
318
+ throw new Error(`Cannot create configuration service ${this.configurationService}`);
319
+ }
320
+ // Will update the configuration
321
+ await service.bootstrap(this);
322
+ this.getService(this.configurationService);
323
+ initOrders.push(...this.initOrders);
324
+ if (!initOrders.includes(this.configurationService)) {
325
+ initOrders.push(this.configurationService);
326
+ }
327
+ this.initOrders = [];
328
+ // The configuration service's init() must run now — downstream service
329
+ // construction reads updated config values from it.
330
+ for (const service of initOrders) {
331
+ await this.initService(service);
332
+ }
333
+ }
334
+ // Create all services defined in configuration
335
+ for (const service in this.configuration) {
336
+ this.getService(service);
337
+ }
338
+ // Auto-register application beans as services
339
+ this.registerBeans();
340
+ this.initOrders = this.initOrders.filter(s => !initOrders.includes(s) && this.services[s]);
341
+ // Ensure stores are initialized first
342
+ this.initOrders.sort((a, b) => {
343
+ if (this.services[a] instanceof Store && !(this.services[b] instanceof Store)) {
344
+ return -1;
345
+ }
346
+ else if (!(this.services[a] instanceof Store) && this.services[b] instanceof Store) {
347
+ return 1;
348
+ }
349
+ return 0;
350
+ });
351
+ this.log("DEBUG", "Services init order", [...initOrders, ...this.initOrders]);
352
+ }
353
+ /**
354
+ * Init Webda
355
+ *
356
+ * It will resolve Services init method and autolink.
357
+ *
358
+ * Delegates to {@link resolve} for service creation + resolve, then calls
359
+ * `init()` on every remaining non-configuration service.
360
+ */
361
+ async init() {
362
+ await this.resolve();
363
+ for (const service of this.initOrders) {
364
+ await this.initService(service);
365
+ }
366
+ await emitCoreEvent("Webda.Init.Services", this.services);
367
+ }
368
+ /**
369
+ * Return webda current version
370
+ *
371
+ * @returns package version
372
+ * @since 0.4.0
373
+ */
374
+ getVersion() {
375
+ return useApplication().getWebdaVersion();
376
+ }
377
+ /**
378
+ * To define the locales just add a locales: ['en-GB', 'fr-FR'] in your host global configuration
379
+ *
380
+ * @return The configured locales or "en-GB" if none are defined
381
+ * @returns the list of results
382
+ */
383
+ getLocales() {
384
+ if (!this.configuration || !this.configuration.parameters.locales) {
385
+ return ["en-GB"];
386
+ }
387
+ return this.configuration.parameters.locales;
388
+ }
389
+ /**
390
+ * Check for a service name and return the wanted singleton or undefined if none found
391
+ *
392
+ * @param {String} name The service name to retrieve
393
+ * @returns the result
394
+ */
395
+ getService(name = "") {
396
+ depsDetector.getStore()?.add(name);
397
+ // If not defined yet, create it and add it to the init order
398
+ if (this.services[name] === undefined) {
399
+ this.dependencies[name] ??= new Set();
400
+ depsDetector.run(this.dependencies[name], () => {
401
+ this.services[name] = this.createService(name)?.resolve();
402
+ });
403
+ this.initOrders.push(name);
404
+ }
405
+ return this.services[name];
406
+ }
407
+ /**
408
+ * Return a map of defined services
409
+ * @returns {{}} the map of services
410
+ */
411
+ getServices() {
412
+ return this.services;
413
+ }
414
+ /**
415
+ * Return if Webda is in debug mode
416
+ * @returns true if the condition is met
417
+ */
418
+ isDebug() {
419
+ return false;
420
+ }
421
+ /**
422
+ * Log a message
423
+ * @param level - the log level
424
+ * @param args - additional arguments
425
+ */
426
+ log(level, ...args) {
427
+ this.logger.log(level, ...args);
428
+ }
429
+ /**
430
+ * Update the configuration with new values
431
+ * @param updates - the updates to apply
432
+ */
433
+ updateConfiguration(updates) {
434
+ updates.services ??= {};
435
+ updates.parameters ??= {};
436
+ const configuration = this.applicationConfiguration;
437
+ const newConfiguration = {};
438
+ for (const key in updates.services) {
439
+ if (!this.configuration[key]) {
440
+ delete updates.services[key];
441
+ this.log("WARN", `Cannot update configuration for unknown service ${key}`);
442
+ continue;
443
+ }
444
+ if (updates.services[key].type && updates.services[key].type !== this.configuration[key].type) {
445
+ delete updates.services[key];
446
+ this.log("WARN", `Cannot update type for service ${key}`);
447
+ continue;
448
+ }
449
+ newConfiguration[key] = (this.moddas[key]?.filterParameters || (p => p))(deepmerge(configuration.parameters, updates.parameters, configuration[key], updates.services[key]));
450
+ }
451
+ for (const key in this.configuration) {
452
+ newConfiguration[key] = (this.moddas[key]?.filterParameters || (p => p))(deepmerge(configuration.parameters || {}, updates.parameters || {}, configuration.services[key] || {}, updates.services[key] || {}));
453
+ newConfiguration[key].type = this.configuration[key].type;
454
+ }
455
+ Object.freeze(newConfiguration);
456
+ const delta = jsondiffpatch.diff(this.configuration, newConfiguration);
457
+ if (!delta) {
458
+ this.log("DEBUG", "No configuration changes");
459
+ return;
460
+ }
461
+ emitCoreEvent("Webda.Configuration.Applying", { configuration: newConfiguration, delta });
462
+ for (const service in this.services) {
463
+ if (delta[service]) {
464
+ this.log("DEBUG", `Updating ${service} due to configuration change`);
465
+ this.services[service]?.parameters.load(newConfiguration[service]);
466
+ }
467
+ }
468
+ // Update the configuration
469
+ this.configuration = newConfiguration;
470
+ emitCoreEvent("Webda.Configuration.Applied", { configuration: newConfiguration, delta });
471
+ }
472
+ /**
473
+ * Create a specific service
474
+ * @param service - the service instance
475
+ * @returns the result
476
+ */
477
+ createService(service) {
478
+ const serviceConstructor = this.moddas[service];
479
+ if (!serviceConstructor) {
480
+ this.log("ERROR", `Create service ${service}(${this.configuration[service]?.type}) failed: unknown type`);
481
+ return;
482
+ }
483
+ try {
484
+ this.log("TRACE", "Constructing service", service);
485
+ const params = serviceConstructor.createConfiguration
486
+ ? serviceConstructor.createConfiguration(this.configuration[service])
487
+ : this.configuration[service];
488
+ this.services[service] = new serviceConstructor(service, params);
489
+ }
490
+ catch (err) {
491
+ this.log("ERROR", "Cannot create service", service, err.message || err);
492
+ }
493
+ return this.services[service];
494
+ }
495
+ /**
496
+ * Auto-register application beans as services if not already configured.
497
+ * Tests can disable by overriding getBeans() to return empty/undefined.
498
+ */
499
+ registerBeans() {
500
+ const appBeans = this.application.beans || {};
501
+ if (Object.keys(appBeans).length === 0)
502
+ return;
503
+ for (const beanName in appBeans) {
504
+ // Skip if a service with this bean type is already configured
505
+ if (Object.values(this.applicationConfiguration.services).some((s) => s.type === beanName)) {
506
+ continue;
507
+ }
508
+ const serviceName = beanName.split("/").pop();
509
+ if (this.services[serviceName])
510
+ continue;
511
+ const beanClass = appBeans[beanName];
512
+ if (!beanClass)
513
+ continue;
514
+ this.moddas[serviceName] = beanClass;
515
+ this.moddas[beanName] = beanClass;
516
+ const filtered = (beanClass.filterParameters || (p => p))({
517
+ ...this.applicationConfiguration.parameters
518
+ });
519
+ filtered.type = beanName;
520
+ this.configuration[serviceName] = Object.freeze(filtered);
521
+ this.getService(serviceName);
522
+ }
523
+ }
524
+ /**
525
+ * Get application beans
526
+ * @returns the result
527
+ */
528
+ getBeans() {
529
+ // @ts-ignore
530
+ return process.webdaBeans || {};
531
+ }
532
+ /**
533
+ * Stop all services
534
+ */
535
+ async stop() {
536
+ const services = this.getServices();
537
+ await Promise.all([
538
+ // Stop all interuptables
539
+ ...[...useInstanceStorage().interruptables.values()].map(i => i.cancel()),
540
+ // Stop all services
541
+ ...Object.keys(services).map(async (s) => {
542
+ try {
543
+ await services[s]?.stop();
544
+ }
545
+ catch (err) {
546
+ this.log("ERROR", `Cannot stop service ${s}`, err);
547
+ }
548
+ })
549
+ ]);
550
+ }
551
+ /**
552
+ * Allow serialization
553
+ * @returns the result
554
+ */
555
+ toJSON() {
556
+ return {
557
+ configuration: this.configuration,
558
+ application: this.application
559
+ };
560
+ }
561
+ /**
562
+ * Deserialize a Core instance from a plain JSON object
563
+ * @param json - the JSON data
564
+ * @returns the result
565
+ */
566
+ static deserialize(json) {
567
+ const core = new Core();
568
+ if (json.configuration) {
569
+ core.configuration = json.configuration;
570
+ }
571
+ return core;
572
+ }
573
+ };
574
+ })();
575
+ export { Core };
576
+ //# sourceMappingURL=core.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/core/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ import type { IStore } from "./icore.js";
2
+ import type { Model, ModelClass, Repository } from "@webda/models";
3
+ import type { CustomConstructor } from "@webda/tsc-esm";
4
+ import type { Service } from "../services/service.js";
5
+ import type CryptoService from "../services/cryptoservice.service.js";
6
+ import type { Store } from "../stores/store.js";
7
+ import type { ModelMetadata } from "@webda/compiler";
8
+ import type { Core } from "./core.js";
9
+ import type { SessionManager } from "../session/manager.model.js";
10
+ /**
11
+ * Get the current core
12
+ * @returns the current core
13
+ */
14
+ export declare function useCore<T extends Core = Core>(): T;
15
+ /**
16
+ * Set the current core
17
+ * @param core - the Core instance
18
+ */
19
+ export declare function setCore(core: Core): void;
20
+ /**
21
+ * Services Map
22
+ */
23
+ export interface ServicesMap {
24
+ Registry: Store;
25
+ CryptoService: CryptoService;
26
+ SessionManager: SessionManager;
27
+ }
28
+ /**
29
+ * Represent a service name in webda
30
+ *
31
+ * Useful for referencing other services within the framework
32
+ * @serviceName
33
+ * @schemaInherits
34
+ */
35
+ export type ServiceName = keyof ServicesMap;
36
+ /**
37
+ * Get a service by name
38
+ * @param name - the name to use
39
+ * @returns the result map
40
+ */
41
+ export declare function useService<K extends keyof ServicesMap>(name: K): ServicesMap[K];
42
+ /**
43
+ * When you want to use a service that is not defined in the ServicesMap, you can use this function
44
+ * @param name - the name to use
45
+ * @returns the result
46
+ */
47
+ export declare function useDynamicService<T = Service>(name: string): T;
48
+ /**
49
+ * Get the metadata for a model
50
+ * @param object - the target object
51
+ * @param name - the name to use
52
+ * @returns the result
53
+ */
54
+ export declare function useModelMetadata(name: string | Model | ModelClass): ModelMetadata;
55
+ /**
56
+ * Use model store
57
+ * @param name - the name to use
58
+ * @returns the result
59
+ */
60
+ export declare function useModelStore<T extends Model>(name: string | T | CustomConstructor<T>): IStore;
61
+ /**
62
+ * Get the repository for a model, typed as Repository
63
+ * @param name - the name to use
64
+ * @returns the result
65
+ */
66
+ export declare function useModelRepository<T extends Model>(name: string | T | CustomConstructor<T>): Repository<ModelClass<T>>;
67
+ /**
68
+ * Get a machine id
69
+ * @returns the result
70
+ */
71
+ export declare function getMachineId(): string;
72
+ //# sourceMappingURL=hooks.d.ts.map