@webda/core 4.0.0-beta.2 → 4.0.0-beta.4

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 (793) hide show
  1. package/README.md +252 -0
  2. package/lib/application/application.d.ts +468 -0
  3. package/lib/application/application.d.ts.map +1 -0
  4. package/lib/application/application.js +845 -0
  5. package/lib/application/application.js.map +1 -0
  6. package/lib/application/deployment.d.ts +93 -0
  7. package/lib/application/deployment.d.ts.map +1 -0
  8. package/lib/application/deployment.js +99 -0
  9. package/lib/application/deployment.js.map +1 -0
  10. package/lib/application/hooks.d.ts +34 -0
  11. package/lib/application/hooks.d.ts.map +1 -0
  12. package/lib/application/hooks.js +57 -0
  13. package/lib/application/hooks.js.map +1 -0
  14. package/lib/application/iapplication.d.ts +43 -0
  15. package/lib/application/iapplication.d.ts.map +1 -0
  16. package/lib/application/iapplication.js +2 -0
  17. package/lib/application/iapplication.js.map +1 -0
  18. package/lib/application/iconfiguration.d.ts +176 -0
  19. package/lib/application/iconfiguration.d.ts.map +1 -0
  20. package/lib/application/iconfiguration.js +8 -0
  21. package/lib/application/iconfiguration.js.map +1 -0
  22. package/lib/application/runner.d.ts +8 -0
  23. package/lib/application/runner.d.ts.map +1 -0
  24. package/lib/application/runner.js +26 -0
  25. package/lib/application/runner.js.map +1 -0
  26. package/lib/{unpackedapplication.d.ts → application/unpackedapplication.d.ts} +43 -23
  27. package/lib/application/unpackedapplication.d.ts.map +1 -0
  28. package/lib/application/unpackedapplication.js +500 -0
  29. package/lib/application/unpackedapplication.js.map +1 -0
  30. package/lib/bin/cli-phase.d.ts +28 -0
  31. package/lib/bin/cli-phase.d.ts.map +1 -0
  32. package/lib/bin/cli-phase.js +44 -0
  33. package/lib/bin/cli-phase.js.map +1 -0
  34. package/lib/bin/cli.d.ts +196 -0
  35. package/lib/bin/cli.d.ts.map +1 -0
  36. package/lib/bin/cli.js +934 -0
  37. package/lib/bin/cli.js.map +1 -0
  38. package/lib/bin/launcher.d.ts +3 -0
  39. package/lib/bin/launcher.d.ts.map +1 -0
  40. package/lib/bin/launcher.js +50 -0
  41. package/lib/bin/launcher.js.map +1 -0
  42. package/lib/cache/cache.d.ts +33 -0
  43. package/lib/cache/cache.d.ts.map +1 -0
  44. package/lib/cache/cache.js +8 -0
  45. package/lib/cache/cache.js.map +1 -0
  46. package/lib/{services/configuration.d.ts → configurations/configuration.service.d.ts} +58 -58
  47. package/lib/configurations/configuration.service.d.ts.map +1 -0
  48. package/lib/configurations/configuration.service.js +248 -0
  49. package/lib/configurations/configuration.service.js.map +1 -0
  50. package/lib/configurations/fileconfiguration.service.d.ts +30 -0
  51. package/lib/configurations/fileconfiguration.service.d.ts.map +1 -0
  52. package/lib/configurations/fileconfiguration.service.js +65 -0
  53. package/lib/configurations/fileconfiguration.service.js.map +1 -0
  54. package/lib/configurations/kubernetesconfiguration.service.d.ts +43 -0
  55. package/lib/configurations/kubernetesconfiguration.service.d.ts.map +1 -0
  56. package/lib/configurations/kubernetesconfiguration.service.js +83 -0
  57. package/lib/configurations/kubernetesconfiguration.service.js.map +1 -0
  58. package/lib/contexts/execution.d.ts +33 -0
  59. package/lib/contexts/execution.d.ts.map +1 -0
  60. package/lib/contexts/execution.js +73 -0
  61. package/lib/contexts/execution.js.map +1 -0
  62. package/lib/contexts/globalcontext.d.ts +29 -0
  63. package/lib/contexts/globalcontext.d.ts.map +1 -0
  64. package/lib/contexts/globalcontext.js +38 -0
  65. package/lib/contexts/globalcontext.js.map +1 -0
  66. package/lib/{utils → contexts}/httpcontext.d.ts +44 -19
  67. package/lib/contexts/httpcontext.d.ts.map +1 -0
  68. package/lib/{utils → contexts}/httpcontext.js +95 -27
  69. package/lib/contexts/httpcontext.js.map +1 -0
  70. package/lib/contexts/icontext.d.ts +236 -0
  71. package/lib/contexts/icontext.d.ts.map +1 -0
  72. package/lib/contexts/icontext.js +230 -0
  73. package/lib/contexts/icontext.js.map +1 -0
  74. package/lib/contexts/operationcontext.d.ts +182 -0
  75. package/lib/contexts/operationcontext.d.ts.map +1 -0
  76. package/lib/contexts/operationcontext.js +361 -0
  77. package/lib/contexts/operationcontext.js.map +1 -0
  78. package/lib/contexts/simplecontext.d.ts +31 -0
  79. package/lib/contexts/simplecontext.d.ts.map +1 -0
  80. package/lib/contexts/simplecontext.js +45 -0
  81. package/lib/contexts/simplecontext.js.map +1 -0
  82. package/lib/contexts/webcontext.d.ts +218 -0
  83. package/lib/contexts/webcontext.d.ts.map +1 -0
  84. package/lib/contexts/webcontext.js +389 -0
  85. package/lib/contexts/webcontext.js.map +1 -0
  86. package/lib/core/authorizer.d.ts +23 -0
  87. package/lib/core/authorizer.d.ts.map +1 -0
  88. package/lib/core/authorizer.js +17 -0
  89. package/lib/core/authorizer.js.map +1 -0
  90. package/lib/core/core.d.ts +225 -0
  91. package/lib/core/core.d.ts.map +1 -0
  92. package/lib/core/core.js +576 -0
  93. package/lib/core/core.js.map +1 -0
  94. package/lib/core/hooks.d.ts +94 -0
  95. package/lib/core/hooks.d.ts.map +1 -0
  96. package/lib/core/hooks.js +97 -0
  97. package/lib/core/hooks.js.map +1 -0
  98. package/lib/core/icore.d.ts +249 -0
  99. package/lib/core/icore.d.ts.map +1 -0
  100. package/lib/core/icore.js +15 -0
  101. package/lib/core/icore.js.map +1 -0
  102. package/lib/core/instancestorage.d.ts +61 -0
  103. package/lib/core/instancestorage.d.ts.map +1 -0
  104. package/lib/core/instancestorage.js +75 -0
  105. package/lib/core/instancestorage.js.map +1 -0
  106. package/lib/core/operations.d.ts +181 -0
  107. package/lib/core/operations.d.ts.map +1 -0
  108. package/lib/core/operations.js +559 -0
  109. package/lib/core/operations.js.map +1 -0
  110. package/lib/deployers/deployer.d.ts +157 -0
  111. package/lib/deployers/deployer.d.ts.map +1 -0
  112. package/lib/deployers/deployer.js +81 -0
  113. package/lib/deployers/deployer.js.map +1 -0
  114. package/lib/deployers/git.d.ts +27 -0
  115. package/lib/deployers/git.d.ts.map +1 -0
  116. package/lib/deployers/git.js +66 -0
  117. package/lib/deployers/git.js.map +1 -0
  118. package/lib/deployers/packager.d.ts +85 -0
  119. package/lib/deployers/packager.d.ts.map +1 -0
  120. package/lib/deployers/packager.js +259 -0
  121. package/lib/deployers/packager.js.map +1 -0
  122. package/lib/errors/errors.d.ts +126 -0
  123. package/lib/errors/errors.d.ts.map +1 -0
  124. package/lib/errors/errors.js +165 -0
  125. package/lib/errors/errors.js.map +1 -0
  126. package/lib/events/asynceventemitter.d.ts +159 -0
  127. package/lib/events/asynceventemitter.d.ts.map +1 -0
  128. package/lib/events/asynceventemitter.js +152 -0
  129. package/lib/events/asynceventemitter.js.map +1 -0
  130. package/lib/events/events.d.ts +112 -0
  131. package/lib/events/events.d.ts.map +1 -0
  132. package/lib/events/events.js +45 -0
  133. package/lib/events/events.js.map +1 -0
  134. package/lib/index.d.ts +88 -54
  135. package/lib/index.d.ts.map +1 -1
  136. package/lib/index.js +88 -64
  137. package/lib/index.js.map +1 -1
  138. package/lib/loggers/console.service.d.ts +24 -0
  139. package/lib/loggers/console.service.d.ts.map +1 -0
  140. package/lib/loggers/console.service.js +30 -0
  141. package/lib/loggers/console.service.js.map +1 -0
  142. package/lib/loggers/file.service.d.ts +25 -0
  143. package/lib/loggers/file.service.d.ts.map +1 -0
  144. package/lib/loggers/file.service.js +33 -0
  145. package/lib/loggers/file.service.js.map +1 -0
  146. package/lib/loggers/hooks.d.ts +20 -0
  147. package/lib/loggers/hooks.d.ts.map +1 -0
  148. package/lib/loggers/hooks.js +40 -0
  149. package/lib/loggers/hooks.js.map +1 -0
  150. package/lib/loggers/ilogger.d.ts +76 -0
  151. package/lib/loggers/ilogger.d.ts.map +1 -0
  152. package/lib/loggers/ilogger.js +108 -0
  153. package/lib/loggers/ilogger.js.map +1 -0
  154. package/lib/loggers/logger.d.ts +13 -0
  155. package/lib/loggers/logger.d.ts.map +1 -0
  156. package/lib/loggers/logger.js +18 -0
  157. package/lib/loggers/logger.js.map +1 -0
  158. package/lib/loggers/memory.service.d.ts +18 -0
  159. package/lib/loggers/memory.service.d.ts.map +1 -0
  160. package/lib/loggers/memory.service.js +21 -0
  161. package/lib/loggers/memory.service.js.map +1 -0
  162. package/lib/loggers/params.d.ts +47 -0
  163. package/lib/loggers/params.d.ts.map +1 -0
  164. package/lib/loggers/params.js +56 -0
  165. package/lib/loggers/params.js.map +1 -0
  166. package/lib/metrics/metrics.d.ts +25 -0
  167. package/lib/metrics/metrics.d.ts.map +1 -0
  168. package/lib/metrics/metrics.js +51 -0
  169. package/lib/metrics/metrics.js.map +1 -0
  170. package/lib/models/aclmodel.d.ts +20 -76
  171. package/lib/models/aclmodel.d.ts.map +1 -1
  172. package/lib/models/aclmodel.js +27 -203
  173. package/lib/models/aclmodel.js.map +1 -1
  174. package/lib/models/coremodel.model.d.ts +5 -0
  175. package/lib/models/coremodel.model.d.ts.map +1 -0
  176. package/lib/models/coremodel.model.js +5 -0
  177. package/lib/models/coremodel.model.js.map +1 -0
  178. package/lib/models/decorator.d.ts +67 -0
  179. package/lib/models/decorator.d.ts.map +1 -0
  180. package/lib/models/decorator.js +67 -0
  181. package/lib/models/decorator.js.map +1 -0
  182. package/lib/models/deployment.d.ts +2 -21
  183. package/lib/models/deployment.d.ts.map +1 -1
  184. package/lib/models/encrypted.model.d.ts +46 -0
  185. package/lib/models/encrypted.model.d.ts.map +1 -0
  186. package/lib/models/encrypted.model.js +87 -0
  187. package/lib/models/encrypted.model.js.map +1 -0
  188. package/lib/models/ident.model.d.ts +128 -0
  189. package/lib/models/ident.model.d.ts.map +1 -0
  190. package/lib/models/ident.model.js +207 -0
  191. package/lib/models/ident.model.js.map +1 -0
  192. package/lib/models/ownermodel.model.d.ts +68 -0
  193. package/lib/models/ownermodel.model.d.ts.map +1 -0
  194. package/lib/models/ownermodel.model.js +113 -0
  195. package/lib/models/ownermodel.model.js.map +1 -0
  196. package/lib/models/password.model.d.ts +78 -0
  197. package/lib/models/password.model.d.ts.map +1 -0
  198. package/lib/models/password.model.js +171 -0
  199. package/lib/models/password.model.js.map +1 -0
  200. package/lib/models/refreshtoken.model.d.ts +30 -0
  201. package/lib/models/refreshtoken.model.d.ts.map +1 -0
  202. package/lib/models/refreshtoken.model.js +29 -0
  203. package/lib/models/refreshtoken.model.js.map +1 -0
  204. package/lib/models/registry.model.d.ts +76 -0
  205. package/lib/models/registry.model.d.ts.map +1 -0
  206. package/lib/models/registry.model.js +104 -0
  207. package/lib/models/registry.model.js.map +1 -0
  208. package/lib/models/rolemodel.model.d.ts +28 -0
  209. package/lib/models/rolemodel.model.d.ts.map +1 -0
  210. package/lib/models/{rolemodel.js → rolemodel.model.js} +23 -5
  211. package/lib/models/rolemodel.model.js.map +1 -0
  212. package/lib/models/simpleuser.model.d.ts +78 -0
  213. package/lib/models/simpleuser.model.d.ts.map +1 -0
  214. package/lib/models/simpleuser.model.js +124 -0
  215. package/lib/models/simpleuser.model.js.map +1 -0
  216. package/lib/models/types.d.ts +113 -0
  217. package/lib/models/types.d.ts.map +1 -0
  218. package/lib/models/types.js +2 -0
  219. package/lib/models/types.js.map +1 -0
  220. package/lib/models/user.model.d.ts +103 -0
  221. package/lib/models/user.model.d.ts.map +1 -0
  222. package/lib/models/user.model.js +164 -0
  223. package/lib/models/user.model.js.map +1 -0
  224. package/lib/queues/{memoryqueue.d.ts → memoryqueue.service.d.ts} +26 -13
  225. package/lib/queues/memoryqueue.service.d.ts.map +1 -0
  226. package/lib/queues/{memoryqueue.js → memoryqueue.service.js} +55 -31
  227. package/lib/queues/memoryqueue.service.js.map +1 -0
  228. package/lib/queues/pubsubservice.d.ts +8 -6
  229. package/lib/queues/pubsubservice.d.ts.map +1 -1
  230. package/lib/queues/pubsubservice.js +5 -4
  231. package/lib/queues/pubsubservice.js.map +1 -1
  232. package/lib/queues/queueservice.d.ts +9 -11
  233. package/lib/queues/queueservice.d.ts.map +1 -1
  234. package/lib/queues/queueservice.js +41 -13
  235. package/lib/queues/queueservice.js.map +1 -1
  236. package/lib/rest/hooks.d.ts +8 -0
  237. package/lib/rest/hooks.d.ts.map +1 -0
  238. package/lib/rest/hooks.js +10 -0
  239. package/lib/rest/hooks.js.map +1 -0
  240. package/lib/rest/irest.d.ts +212 -0
  241. package/lib/rest/irest.d.ts.map +1 -0
  242. package/lib/rest/irest.js +39 -0
  243. package/lib/rest/irest.js.map +1 -0
  244. package/lib/rest/originfilter.d.ts +38 -0
  245. package/lib/rest/originfilter.d.ts.map +1 -0
  246. package/lib/rest/originfilter.js +61 -0
  247. package/lib/rest/originfilter.js.map +1 -0
  248. package/lib/rest/restoperationstransport.service.d.ts +193 -0
  249. package/lib/rest/restoperationstransport.service.d.ts.map +1 -0
  250. package/lib/rest/restoperationstransport.service.js +780 -0
  251. package/lib/rest/restoperationstransport.service.js.map +1 -0
  252. package/lib/rest/router.service.d.ts +244 -0
  253. package/lib/rest/router.service.d.ts.map +1 -0
  254. package/lib/rest/router.service.js +843 -0
  255. package/lib/rest/router.service.js.map +1 -0
  256. package/lib/schemas/hooks.d.ts +48 -0
  257. package/lib/schemas/hooks.d.ts.map +1 -0
  258. package/lib/schemas/hooks.js +152 -0
  259. package/lib/schemas/hooks.js.map +1 -0
  260. package/lib/services/audit.model.d.ts +208 -0
  261. package/lib/services/audit.model.d.ts.map +1 -0
  262. package/lib/services/audit.model.js +432 -0
  263. package/lib/services/audit.model.js.map +1 -0
  264. package/lib/services/binary.service.d.ts +808 -0
  265. package/lib/services/binary.service.d.ts.map +1 -0
  266. package/lib/services/binary.service.js +1365 -0
  267. package/lib/services/binary.service.js.map +1 -0
  268. package/lib/services/cloudbinary.d.ts +17 -12
  269. package/lib/services/cloudbinary.d.ts.map +1 -1
  270. package/lib/services/cloudbinary.js +23 -17
  271. package/lib/services/cloudbinary.js.map +1 -1
  272. package/lib/services/command.d.ts +118 -0
  273. package/lib/services/command.d.ts.map +1 -0
  274. package/lib/services/command.js +97 -0
  275. package/lib/services/command.js.map +1 -0
  276. package/lib/services/cron.service.d.ts +142 -0
  277. package/lib/services/cron.service.d.ts.map +1 -0
  278. package/lib/services/cron.service.js +291 -0
  279. package/lib/services/cron.service.js.map +1 -0
  280. package/lib/services/{cryptoservice.d.ts → cryptoservice.service.d.ts} +75 -141
  281. package/lib/services/cryptoservice.service.d.ts.map +1 -0
  282. package/lib/services/cryptoservice.service.js +527 -0
  283. package/lib/services/cryptoservice.service.js.map +1 -0
  284. package/lib/services/debugmailer.service.d.ts +49 -0
  285. package/lib/services/debugmailer.service.d.ts.map +1 -0
  286. package/lib/services/{debugmailer.js → debugmailer.service.js} +25 -10
  287. package/lib/services/debugmailer.service.js.map +1 -0
  288. package/lib/services/domainservice.service.d.ts +242 -0
  289. package/lib/services/domainservice.service.d.ts.map +1 -0
  290. package/lib/services/domainservice.service.js +676 -0
  291. package/lib/services/domainservice.service.js.map +1 -0
  292. package/lib/services/httpserver.service.d.ts +248 -0
  293. package/lib/services/httpserver.service.d.ts.map +1 -0
  294. package/lib/services/httpserver.service.js +673 -0
  295. package/lib/services/httpserver.service.js.map +1 -0
  296. package/lib/services/iauthentication.d.ts +202 -0
  297. package/lib/services/iauthentication.d.ts.map +1 -0
  298. package/lib/services/iauthentication.js +2 -0
  299. package/lib/services/iauthentication.js.map +1 -0
  300. package/lib/services/icryptoservice.d.ts +127 -0
  301. package/lib/services/icryptoservice.d.ts.map +1 -0
  302. package/lib/services/icryptoservice.js +68 -0
  303. package/lib/services/icryptoservice.js.map +1 -0
  304. package/lib/services/imailer.d.ts +17 -0
  305. package/lib/services/imailer.d.ts.map +1 -0
  306. package/lib/services/imailer.js +2 -0
  307. package/lib/services/imailer.js.map +1 -0
  308. package/lib/services/iservice.d.ts +104 -0
  309. package/lib/services/iservice.d.ts.map +1 -0
  310. package/lib/services/iservice.js +63 -0
  311. package/lib/services/iservice.js.map +1 -0
  312. package/lib/services/mailer.service.d.ts +220 -0
  313. package/lib/services/mailer.service.d.ts.map +1 -0
  314. package/lib/services/mailer.service.js +251 -0
  315. package/lib/services/mailer.service.js.map +1 -0
  316. package/lib/services/{notificationservice.d.ts → notificationservice.service.d.ts} +10 -11
  317. package/lib/services/notificationservice.service.d.ts.map +1 -0
  318. package/lib/services/{notificationservice.js → notificationservice.service.js} +24 -12
  319. package/lib/services/notificationservice.service.js.map +1 -0
  320. package/lib/services/operationstransport.d.ts +65 -0
  321. package/lib/services/operationstransport.d.ts.map +1 -0
  322. package/lib/services/operationstransport.js +103 -0
  323. package/lib/services/operationstransport.js.map +1 -0
  324. package/lib/services/{prometheus.d.ts → prometheus.service.d.ts} +13 -12
  325. package/lib/services/prometheus.service.d.ts.map +1 -0
  326. package/lib/services/prometheus.service.js +203 -0
  327. package/lib/services/prometheus.service.js.map +1 -0
  328. package/lib/services/{resource.d.ts → resource.service.d.ts} +34 -15
  329. package/lib/services/resource.service.d.ts.map +1 -0
  330. package/lib/services/resource.service.js +301 -0
  331. package/lib/services/resource.service.js.map +1 -0
  332. package/lib/services/service.d.ts +87 -188
  333. package/lib/services/service.d.ts.map +1 -1
  334. package/lib/services/service.js +407 -422
  335. package/lib/services/service.js.map +1 -1
  336. package/lib/services/servicecommands.d.ts +99 -0
  337. package/lib/services/servicecommands.d.ts.map +1 -0
  338. package/lib/services/servicecommands.js +171 -0
  339. package/lib/services/servicecommands.js.map +1 -0
  340. package/lib/services/serviceparameters.d.ts +33 -0
  341. package/lib/services/serviceparameters.d.ts.map +1 -0
  342. package/lib/services/serviceparameters.js +79 -0
  343. package/lib/services/serviceparameters.js.map +1 -0
  344. package/lib/services/token.service.d.ts +95 -0
  345. package/lib/services/token.service.d.ts.map +1 -0
  346. package/lib/services/token.service.js +182 -0
  347. package/lib/services/token.service.js.map +1 -0
  348. package/lib/{utils → session}/cookie.d.ts +32 -19
  349. package/lib/session/cookie.d.ts.map +1 -0
  350. package/lib/{utils → session}/cookie.js +76 -23
  351. package/lib/session/cookie.js.map +1 -0
  352. package/lib/session/manager.model.d.ts +87 -0
  353. package/lib/session/manager.model.d.ts.map +1 -0
  354. package/lib/session/manager.model.js +212 -0
  355. package/lib/session/manager.model.js.map +1 -0
  356. package/lib/session/session.d.ts +100 -0
  357. package/lib/session/session.d.ts.map +1 -0
  358. package/lib/session/session.js +175 -0
  359. package/lib/session/session.js.map +1 -0
  360. package/lib/stores/istore.d.ts +99 -0
  361. package/lib/stores/istore.d.ts.map +1 -0
  362. package/lib/stores/istore.js +26 -0
  363. package/lib/stores/istore.js.map +1 -0
  364. package/lib/stores/memory.service.d.ts +114 -0
  365. package/lib/stores/memory.service.d.ts.map +1 -0
  366. package/lib/stores/memory.service.js +344 -0
  367. package/lib/stores/memory.service.js.map +1 -0
  368. package/lib/stores/store.d.ts +126 -626
  369. package/lib/stores/store.d.ts.map +1 -1
  370. package/lib/stores/store.js +257 -1117
  371. package/lib/stores/store.js.map +1 -1
  372. package/lib/templates/templates.d.ts +47 -0
  373. package/lib/templates/templates.d.ts.map +1 -0
  374. package/lib/templates/templates.js +101 -0
  375. package/lib/templates/templates.js.map +1 -0
  376. package/lib/test/application.d.ts +174 -0
  377. package/lib/test/application.d.ts.map +1 -0
  378. package/lib/test/application.js +288 -0
  379. package/lib/test/application.js.map +1 -0
  380. package/lib/test/asyncstorage.d.ts +16 -0
  381. package/lib/test/asyncstorage.d.ts.map +1 -0
  382. package/lib/test/asyncstorage.js +32 -0
  383. package/lib/test/asyncstorage.js.map +1 -0
  384. package/lib/test/behavior-fixture.model.d.ts +30 -0
  385. package/lib/test/behavior-fixture.model.d.ts.map +1 -0
  386. package/lib/test/behavior-fixture.model.js +63 -0
  387. package/lib/test/behavior-fixture.model.js.map +1 -0
  388. package/lib/test/core.d.ts +63 -0
  389. package/lib/test/core.d.ts.map +1 -0
  390. package/lib/test/core.js +190 -0
  391. package/lib/test/core.js.map +1 -0
  392. package/lib/test/index.d.ts +7 -0
  393. package/lib/test/index.d.ts.map +1 -0
  394. package/lib/test/index.js +8 -0
  395. package/lib/test/index.js.map +1 -0
  396. package/lib/test/internal.d.ts +34 -0
  397. package/lib/test/internal.d.ts.map +1 -0
  398. package/lib/test/internal.js +156 -0
  399. package/lib/test/internal.js.map +1 -0
  400. package/lib/test/legacyident.fixture.model.d.ts +98 -0
  401. package/lib/test/legacyident.fixture.model.d.ts.map +1 -0
  402. package/lib/test/legacyident.fixture.model.js +125 -0
  403. package/lib/test/legacyident.fixture.model.js.map +1 -0
  404. package/lib/test/objects.d.ts +318 -0
  405. package/lib/test/objects.d.ts.map +1 -0
  406. package/lib/test/objects.js +443 -0
  407. package/lib/test/objects.js.map +1 -0
  408. package/lib/utils/abstractdeployer.d.ts +4 -2
  409. package/lib/utils/abstractdeployer.d.ts.map +1 -1
  410. package/lib/utils/abstractdeployer.js +3 -0
  411. package/lib/utils/abstractdeployer.js.map +1 -1
  412. package/package.json +102 -60
  413. package/test/cachedapp/webda.config.json +1 -5
  414. package/test/config-cached.json +3 -6
  415. package/test/config.json +3 -10
  416. package/test/my-cnf.json +9 -0
  417. package/webda.module.json +3755 -2496
  418. package/lib/application.d.ts +0 -888
  419. package/lib/application.d.ts.map +0 -1
  420. package/lib/application.js +0 -768
  421. package/lib/application.js.map +0 -1
  422. package/lib/application.spec.d.ts +0 -2
  423. package/lib/application.spec.d.ts.map +0 -1
  424. package/lib/application.spec.js +0 -248
  425. package/lib/application.spec.js.map +0 -1
  426. package/lib/core.d.ts +0 -743
  427. package/lib/core.d.ts.map +0 -1
  428. package/lib/core.js +0 -1334
  429. package/lib/core.js.map +0 -1
  430. package/lib/core.spec.d.ts +0 -2
  431. package/lib/core.spec.d.ts.map +0 -1
  432. package/lib/core.spec.js +0 -790
  433. package/lib/core.spec.js.map +0 -1
  434. package/lib/errors.d.ts +0 -64
  435. package/lib/errors.d.ts.map +0 -1
  436. package/lib/errors.js +0 -97
  437. package/lib/errors.js.map +0 -1
  438. package/lib/errors.spec.d.ts +0 -2
  439. package/lib/errors.spec.d.ts.map +0 -1
  440. package/lib/errors.spec.js +0 -33
  441. package/lib/errors.spec.js.map +0 -1
  442. package/lib/models/aclmodel.spec.d.ts +0 -2
  443. package/lib/models/aclmodel.spec.d.ts.map +0 -1
  444. package/lib/models/aclmodel.spec.js +0 -187
  445. package/lib/models/aclmodel.spec.js.map +0 -1
  446. package/lib/models/coremodel.d.ts +0 -896
  447. package/lib/models/coremodel.d.ts.map +0 -1
  448. package/lib/models/coremodel.js +0 -1214
  449. package/lib/models/coremodel.js.map +0 -1
  450. package/lib/models/coremodel.spec.d.ts +0 -2
  451. package/lib/models/coremodel.spec.d.ts.map +0 -1
  452. package/lib/models/coremodel.spec.js +0 -464
  453. package/lib/models/coremodel.spec.js.map +0 -1
  454. package/lib/models/ident.d.ts +0 -68
  455. package/lib/models/ident.d.ts.map +0 -1
  456. package/lib/models/ident.js +0 -26
  457. package/lib/models/ident.js.map +0 -1
  458. package/lib/models/ident.spec.d.ts +0 -2
  459. package/lib/models/ident.spec.d.ts.map +0 -1
  460. package/lib/models/ident.spec.js +0 -24
  461. package/lib/models/ident.spec.js.map +0 -1
  462. package/lib/models/ownermodel.d.ts +0 -51
  463. package/lib/models/ownermodel.d.ts.map +0 -1
  464. package/lib/models/ownermodel.js +0 -65
  465. package/lib/models/ownermodel.js.map +0 -1
  466. package/lib/models/ownermodel.spec.d.ts +0 -2
  467. package/lib/models/ownermodel.spec.d.ts.map +0 -1
  468. package/lib/models/ownermodel.spec.js +0 -215
  469. package/lib/models/ownermodel.spec.js.map +0 -1
  470. package/lib/models/relations.d.ts +0 -182
  471. package/lib/models/relations.d.ts.map +0 -1
  472. package/lib/models/relations.js +0 -157
  473. package/lib/models/relations.js.map +0 -1
  474. package/lib/models/relations.spec.d.ts +0 -14
  475. package/lib/models/relations.spec.d.ts.map +0 -1
  476. package/lib/models/relations.spec.js +0 -217
  477. package/lib/models/relations.spec.js.map +0 -1
  478. package/lib/models/rolemodel.d.ts +0 -11
  479. package/lib/models/rolemodel.d.ts.map +0 -1
  480. package/lib/models/rolemodel.js.map +0 -1
  481. package/lib/models/rolemodel.spec.d.ts +0 -2
  482. package/lib/models/rolemodel.spec.d.ts.map +0 -1
  483. package/lib/models/rolemodel.spec.js +0 -90
  484. package/lib/models/rolemodel.spec.js.map +0 -1
  485. package/lib/models/simpleuser.d.ts +0 -47
  486. package/lib/models/simpleuser.d.ts.map +0 -1
  487. package/lib/models/simpleuser.js +0 -84
  488. package/lib/models/simpleuser.js.map +0 -1
  489. package/lib/models/test.d.ts +0 -11
  490. package/lib/models/test.d.ts.map +0 -1
  491. package/lib/models/test.js +0 -7
  492. package/lib/models/test.js.map +0 -1
  493. package/lib/models/user.d.ts +0 -67
  494. package/lib/models/user.d.ts.map +0 -1
  495. package/lib/models/user.js +0 -86
  496. package/lib/models/user.js.map +0 -1
  497. package/lib/models/user.spec.d.ts +0 -2
  498. package/lib/models/user.spec.d.ts.map +0 -1
  499. package/lib/models/user.spec.js +0 -89
  500. package/lib/models/user.spec.js.map +0 -1
  501. package/lib/queues/filequeue.d.ts +0 -59
  502. package/lib/queues/filequeue.d.ts.map +0 -1
  503. package/lib/queues/filequeue.js +0 -131
  504. package/lib/queues/filequeue.js.map +0 -1
  505. package/lib/queues/filequeue.spec.d.ts +0 -2
  506. package/lib/queues/filequeue.spec.d.ts.map +0 -1
  507. package/lib/queues/filequeue.spec.js +0 -84
  508. package/lib/queues/filequeue.spec.js.map +0 -1
  509. package/lib/queues/memoryqueue.d.ts.map +0 -1
  510. package/lib/queues/memoryqueue.js.map +0 -1
  511. package/lib/queues/memoryqueue.spec.d.ts +0 -2
  512. package/lib/queues/memoryqueue.spec.d.ts.map +0 -1
  513. package/lib/queues/memoryqueue.spec.js +0 -203
  514. package/lib/queues/memoryqueue.spec.js.map +0 -1
  515. package/lib/queues/queue.spec.d.ts +0 -6
  516. package/lib/queues/queue.spec.d.ts.map +0 -1
  517. package/lib/queues/queue.spec.js +0 -55
  518. package/lib/queues/queue.spec.js.map +0 -1
  519. package/lib/rest/restdomainservice.d.ts +0 -63
  520. package/lib/rest/restdomainservice.d.ts.map +0 -1
  521. package/lib/rest/restdomainservice.js +0 -687
  522. package/lib/rest/restdomainservice.js.map +0 -1
  523. package/lib/rest/restdomainservice.spec.d.ts +0 -2
  524. package/lib/rest/restdomainservice.spec.d.ts.map +0 -1
  525. package/lib/rest/restdomainservice.spec.js +0 -124
  526. package/lib/rest/restdomainservice.spec.js.map +0 -1
  527. package/lib/rest/router.d.ts +0 -174
  528. package/lib/rest/router.d.ts.map +0 -1
  529. package/lib/rest/router.js +0 -429
  530. package/lib/rest/router.js.map +0 -1
  531. package/lib/rest/router.spec.d.ts +0 -2
  532. package/lib/rest/router.spec.d.ts.map +0 -1
  533. package/lib/rest/router.spec.js +0 -255
  534. package/lib/rest/router.spec.js.map +0 -1
  535. package/lib/services/asyncevents.d.ts +0 -152
  536. package/lib/services/asyncevents.d.ts.map +0 -1
  537. package/lib/services/asyncevents.js +0 -217
  538. package/lib/services/asyncevents.js.map +0 -1
  539. package/lib/services/asyncevents.spec.d.ts +0 -2
  540. package/lib/services/asyncevents.spec.d.ts.map +0 -1
  541. package/lib/services/asyncevents.spec.js +0 -118
  542. package/lib/services/asyncevents.spec.js.map +0 -1
  543. package/lib/services/authentication.d.ts +0 -361
  544. package/lib/services/authentication.d.ts.map +0 -1
  545. package/lib/services/authentication.js +0 -773
  546. package/lib/services/authentication.js.map +0 -1
  547. package/lib/services/authentication.spec.d.ts +0 -2
  548. package/lib/services/authentication.spec.d.ts.map +0 -1
  549. package/lib/services/authentication.spec.js +0 -458
  550. package/lib/services/authentication.spec.js.map +0 -1
  551. package/lib/services/binary.d.ts +0 -477
  552. package/lib/services/binary.d.ts.map +0 -1
  553. package/lib/services/binary.js +0 -617
  554. package/lib/services/binary.js.map +0 -1
  555. package/lib/services/binary.spec.d.ts +0 -41
  556. package/lib/services/binary.spec.d.ts.map +0 -1
  557. package/lib/services/binary.spec.js +0 -151
  558. package/lib/services/binary.spec.js.map +0 -1
  559. package/lib/services/cloudbinary.spec.d.ts +0 -6
  560. package/lib/services/cloudbinary.spec.d.ts.map +0 -1
  561. package/lib/services/cloudbinary.spec.js +0 -66
  562. package/lib/services/cloudbinary.spec.js.map +0 -1
  563. package/lib/services/configuration.d.ts.map +0 -1
  564. package/lib/services/configuration.js +0 -193
  565. package/lib/services/configuration.js.map +0 -1
  566. package/lib/services/configuration.spec.d.ts +0 -2
  567. package/lib/services/configuration.spec.d.ts.map +0 -1
  568. package/lib/services/configuration.spec.js +0 -130
  569. package/lib/services/configuration.spec.js.map +0 -1
  570. package/lib/services/cron.d.ts +0 -74
  571. package/lib/services/cron.d.ts.map +0 -1
  572. package/lib/services/cron.js +0 -141
  573. package/lib/services/cron.js.map +0 -1
  574. package/lib/services/cron.spec.d.ts +0 -2
  575. package/lib/services/cron.spec.d.ts.map +0 -1
  576. package/lib/services/cron.spec.js +0 -76
  577. package/lib/services/cron.spec.js.map +0 -1
  578. package/lib/services/cryptoservice.d.ts.map +0 -1
  579. package/lib/services/cryptoservice.js +0 -433
  580. package/lib/services/cryptoservice.js.map +0 -1
  581. package/lib/services/cryptoservice.spec.d.ts +0 -2
  582. package/lib/services/cryptoservice.spec.d.ts.map +0 -1
  583. package/lib/services/cryptoservice.spec.js +0 -177
  584. package/lib/services/cryptoservice.spec.js.map +0 -1
  585. package/lib/services/debugmailer.d.ts +0 -36
  586. package/lib/services/debugmailer.d.ts.map +0 -1
  587. package/lib/services/debugmailer.js.map +0 -1
  588. package/lib/services/debugmailer.spec.d.ts +0 -2
  589. package/lib/services/debugmailer.spec.d.ts.map +0 -1
  590. package/lib/services/debugmailer.spec.js +0 -32
  591. package/lib/services/debugmailer.spec.js.map +0 -1
  592. package/lib/services/domainservice.d.ts +0 -272
  593. package/lib/services/domainservice.d.ts.map +0 -1
  594. package/lib/services/domainservice.js +0 -651
  595. package/lib/services/domainservice.js.map +0 -1
  596. package/lib/services/domainservice.spec.d.ts +0 -2
  597. package/lib/services/domainservice.spec.d.ts.map +0 -1
  598. package/lib/services/domainservice.spec.js +0 -592
  599. package/lib/services/domainservice.spec.js.map +0 -1
  600. package/lib/services/filebinary.d.ts +0 -136
  601. package/lib/services/filebinary.d.ts.map +0 -1
  602. package/lib/services/filebinary.js +0 -373
  603. package/lib/services/filebinary.js.map +0 -1
  604. package/lib/services/filebinary.spec.d.ts +0 -25
  605. package/lib/services/filebinary.spec.d.ts.map +0 -1
  606. package/lib/services/filebinary.spec.js +0 -428
  607. package/lib/services/filebinary.spec.js.map +0 -1
  608. package/lib/services/fileconfiguration.d.ts +0 -23
  609. package/lib/services/fileconfiguration.d.ts.map +0 -1
  610. package/lib/services/fileconfiguration.js +0 -48
  611. package/lib/services/fileconfiguration.js.map +0 -1
  612. package/lib/services/fileconfiguration.spec.d.ts +0 -2
  613. package/lib/services/fileconfiguration.spec.d.ts.map +0 -1
  614. package/lib/services/fileconfiguration.spec.js +0 -215
  615. package/lib/services/fileconfiguration.spec.js.map +0 -1
  616. package/lib/services/invitationservice.d.ts +0 -223
  617. package/lib/services/invitationservice.d.ts.map +0 -1
  618. package/lib/services/invitationservice.js +0 -529
  619. package/lib/services/invitationservice.js.map +0 -1
  620. package/lib/services/invitationservice.spec.d.ts +0 -2
  621. package/lib/services/invitationservice.spec.d.ts.map +0 -1
  622. package/lib/services/invitationservice.spec.js +0 -567
  623. package/lib/services/invitationservice.spec.js.map +0 -1
  624. package/lib/services/kubernetesconfiguration.d.ts +0 -27
  625. package/lib/services/kubernetesconfiguration.d.ts.map +0 -1
  626. package/lib/services/kubernetesconfiguration.js +0 -52
  627. package/lib/services/kubernetesconfiguration.js.map +0 -1
  628. package/lib/services/kubernetesconfiguration.spec.d.ts +0 -2
  629. package/lib/services/kubernetesconfiguration.spec.d.ts.map +0 -1
  630. package/lib/services/kubernetesconfiguration.spec.js +0 -206
  631. package/lib/services/kubernetesconfiguration.spec.js.map +0 -1
  632. package/lib/services/mailer.d.ts +0 -166
  633. package/lib/services/mailer.d.ts.map +0 -1
  634. package/lib/services/mailer.js +0 -176
  635. package/lib/services/mailer.js.map +0 -1
  636. package/lib/services/mailer.spec.d.ts +0 -2
  637. package/lib/services/mailer.spec.d.ts.map +0 -1
  638. package/lib/services/mailer.spec.js +0 -158
  639. package/lib/services/mailer.spec.js.map +0 -1
  640. package/lib/services/notificationservice.d.ts.map +0 -1
  641. package/lib/services/notificationservice.js.map +0 -1
  642. package/lib/services/notificationservice.spec.d.ts +0 -2
  643. package/lib/services/notificationservice.spec.d.ts.map +0 -1
  644. package/lib/services/notificationservice.spec.js +0 -83
  645. package/lib/services/notificationservice.spec.js.map +0 -1
  646. package/lib/services/oauth.d.ts +0 -226
  647. package/lib/services/oauth.d.ts.map +0 -1
  648. package/lib/services/oauth.js +0 -294
  649. package/lib/services/oauth.js.map +0 -1
  650. package/lib/services/oauth.spec.d.ts +0 -2
  651. package/lib/services/oauth.spec.d.ts.map +0 -1
  652. package/lib/services/oauth.spec.js +0 -208
  653. package/lib/services/oauth.spec.js.map +0 -1
  654. package/lib/services/prometheus.d.ts.map +0 -1
  655. package/lib/services/prometheus.js +0 -160
  656. package/lib/services/prometheus.js.map +0 -1
  657. package/lib/services/prometheus.spec.d.ts +0 -2
  658. package/lib/services/prometheus.spec.d.ts.map +0 -1
  659. package/lib/services/prometheus.spec.js +0 -76
  660. package/lib/services/prometheus.spec.js.map +0 -1
  661. package/lib/services/resource.d.ts.map +0 -1
  662. package/lib/services/resource.js +0 -170
  663. package/lib/services/resource.js.map +0 -1
  664. package/lib/services/resource.spec.d.ts +0 -2
  665. package/lib/services/resource.spec.d.ts.map +0 -1
  666. package/lib/services/resource.spec.js +0 -140
  667. package/lib/services/resource.spec.js.map +0 -1
  668. package/lib/services/service.spec.d.ts +0 -2
  669. package/lib/services/service.spec.d.ts.map +0 -1
  670. package/lib/services/service.spec.js +0 -286
  671. package/lib/services/service.spec.js.map +0 -1
  672. package/lib/stores/aggregator.d.ts +0 -48
  673. package/lib/stores/aggregator.d.ts.map +0 -1
  674. package/lib/stores/aggregator.js +0 -80
  675. package/lib/stores/aggregator.js.map +0 -1
  676. package/lib/stores/file.d.ts +0 -108
  677. package/lib/stores/file.d.ts.map +0 -1
  678. package/lib/stores/file.js +0 -188
  679. package/lib/stores/file.js.map +0 -1
  680. package/lib/stores/file.spec.d.ts +0 -13
  681. package/lib/stores/file.spec.d.ts.map +0 -1
  682. package/lib/stores/file.spec.js +0 -138
  683. package/lib/stores/file.spec.js.map +0 -1
  684. package/lib/stores/mapper.d.ts +0 -150
  685. package/lib/stores/mapper.d.ts.map +0 -1
  686. package/lib/stores/mapper.js +0 -293
  687. package/lib/stores/mapper.js.map +0 -1
  688. package/lib/stores/mapper.spec.d.ts +0 -2
  689. package/lib/stores/mapper.spec.d.ts.map +0 -1
  690. package/lib/stores/mapper.spec.js +0 -167
  691. package/lib/stores/mapper.spec.js.map +0 -1
  692. package/lib/stores/memory.d.ts +0 -152
  693. package/lib/stores/memory.d.ts.map +0 -1
  694. package/lib/stores/memory.js +0 -371
  695. package/lib/stores/memory.js.map +0 -1
  696. package/lib/stores/memory.spec.d.ts +0 -14
  697. package/lib/stores/memory.spec.d.ts.map +0 -1
  698. package/lib/stores/memory.spec.js +0 -263
  699. package/lib/stores/memory.spec.js.map +0 -1
  700. package/lib/stores/modelmapper.d.ts +0 -62
  701. package/lib/stores/modelmapper.d.ts.map +0 -1
  702. package/lib/stores/modelmapper.js +0 -197
  703. package/lib/stores/modelmapper.js.map +0 -1
  704. package/lib/stores/store.spec.d.ts +0 -57
  705. package/lib/stores/store.spec.d.ts.map +0 -1
  706. package/lib/stores/store.spec.js +0 -737
  707. package/lib/stores/store.spec.js.map +0 -1
  708. package/lib/test.d.ts +0 -265
  709. package/lib/test.d.ts.map +0 -1
  710. package/lib/test.js +0 -622
  711. package/lib/test.js.map +0 -1
  712. package/lib/unpackedapplication.d.ts.map +0 -1
  713. package/lib/unpackedapplication.js +0 -350
  714. package/lib/unpackedapplication.js.map +0 -1
  715. package/lib/utils/abstractdeployer.spec.d.ts +0 -2
  716. package/lib/utils/abstractdeployer.spec.d.ts.map +0 -1
  717. package/lib/utils/abstractdeployer.spec.js +0 -21
  718. package/lib/utils/abstractdeployer.spec.js.map +0 -1
  719. package/lib/utils/case.d.ts +0 -8
  720. package/lib/utils/case.d.ts.map +0 -1
  721. package/lib/utils/case.js +0 -43
  722. package/lib/utils/case.js.map +0 -1
  723. package/lib/utils/case.spec.d.ts +0 -2
  724. package/lib/utils/case.spec.d.ts.map +0 -1
  725. package/lib/utils/case.spec.js +0 -50
  726. package/lib/utils/case.spec.js.map +0 -1
  727. package/lib/utils/context.d.ts +0 -482
  728. package/lib/utils/context.d.ts.map +0 -1
  729. package/lib/utils/context.js +0 -739
  730. package/lib/utils/context.js.map +0 -1
  731. package/lib/utils/context.spec.d.ts +0 -10
  732. package/lib/utils/context.spec.d.ts.map +0 -1
  733. package/lib/utils/context.spec.js +0 -383
  734. package/lib/utils/context.spec.js.map +0 -1
  735. package/lib/utils/cookie.d.ts.map +0 -1
  736. package/lib/utils/cookie.js.map +0 -1
  737. package/lib/utils/cookie.spec.d.ts +0 -2
  738. package/lib/utils/cookie.spec.d.ts.map +0 -1
  739. package/lib/utils/cookie.spec.js +0 -88
  740. package/lib/utils/cookie.spec.js.map +0 -1
  741. package/lib/utils/esm.d.ts +0 -14
  742. package/lib/utils/esm.d.ts.map +0 -1
  743. package/lib/utils/esm.js +0 -19
  744. package/lib/utils/esm.js.map +0 -1
  745. package/lib/utils/httpcontext.d.ts.map +0 -1
  746. package/lib/utils/httpcontext.js.map +0 -1
  747. package/lib/utils/httpcontext.spec.d.ts +0 -5
  748. package/lib/utils/httpcontext.spec.d.ts.map +0 -1
  749. package/lib/utils/httpcontext.spec.js +0 -77
  750. package/lib/utils/httpcontext.spec.js.map +0 -1
  751. package/lib/utils/logger.d.ts +0 -92
  752. package/lib/utils/logger.d.ts.map +0 -1
  753. package/lib/utils/logger.js +0 -121
  754. package/lib/utils/logger.js.map +0 -1
  755. package/lib/utils/logger.spec.d.ts +0 -2
  756. package/lib/utils/logger.spec.d.ts.map +0 -1
  757. package/lib/utils/logger.spec.js +0 -48
  758. package/lib/utils/logger.spec.js.map +0 -1
  759. package/lib/utils/serializers.d.ts +0 -162
  760. package/lib/utils/serializers.d.ts.map +0 -1
  761. package/lib/utils/serializers.js +0 -420
  762. package/lib/utils/serializers.js.map +0 -1
  763. package/lib/utils/serializers.spec.d.ts +0 -2
  764. package/lib/utils/serializers.spec.d.ts.map +0 -1
  765. package/lib/utils/serializers.spec.js +0 -311
  766. package/lib/utils/serializers.spec.js.map +0 -1
  767. package/lib/utils/session.d.ts +0 -123
  768. package/lib/utils/session.d.ts.map +0 -1
  769. package/lib/utils/session.js +0 -156
  770. package/lib/utils/session.js.map +0 -1
  771. package/lib/utils/session.spec.d.ts +0 -2
  772. package/lib/utils/session.spec.d.ts.map +0 -1
  773. package/lib/utils/session.spec.js +0 -81
  774. package/lib/utils/session.spec.js.map +0 -1
  775. package/lib/utils/throttler.d.ts +0 -99
  776. package/lib/utils/throttler.d.ts.map +0 -1
  777. package/lib/utils/throttler.js +0 -160
  778. package/lib/utils/throttler.js.map +0 -1
  779. package/lib/utils/throttler.spec.d.ts +0 -2
  780. package/lib/utils/throttler.spec.d.ts.map +0 -1
  781. package/lib/utils/throttler.spec.js +0 -53
  782. package/lib/utils/throttler.spec.js.map +0 -1
  783. package/lib/utils/waiter.d.ts +0 -94
  784. package/lib/utils/waiter.d.ts.map +0 -1
  785. package/lib/utils/waiter.js +0 -148
  786. package/lib/utils/waiter.js.map +0 -1
  787. package/lib/utils/waiter.spec.d.ts +0 -2
  788. package/lib/utils/waiter.spec.d.ts.map +0 -1
  789. package/lib/utils/waiter.spec.js +0 -98
  790. package/lib/utils/waiter.spec.js.map +0 -1
  791. package/test/jsonutils/mdocs.yaml +0 -56
  792. package/test/jsonutils/test.json +0 -3
  793. package/test/jsonutils/test.yml +0 -5
@@ -1,5 +1,6 @@
1
1
  import { WorkerOutput } from "@webda/workout";
2
- import { Application, CachedModule, Configuration, GitInformation, ProjectInformation, UnpackedConfiguration } from "./application.js";
2
+ import { Application } from "./application.js";
3
+ import { type CachedModule, type Configuration, type GitInformation, type ProjectInformation, type UnpackedConfiguration } from "./iconfiguration.js";
3
4
  /**
4
5
  * Empty git information
5
6
  */
@@ -12,58 +13,75 @@ export declare const EmptyGitInformation: GitInformation;
12
13
  * the cachedModule to avoid any unecessary action within a production environment
13
14
  */
14
15
  export declare class UnpackedApplication extends Application {
16
+ /** Create a new UnpackedApplication
17
+ * @param file - file path or partial configuration
18
+ * @param logger - the logger instance
19
+ */
15
20
  constructor(file: string | Partial<UnpackedConfiguration>, logger?: WorkerOutput);
21
+ /**
22
+ * Ensure default configuration after load
23
+ * @returns the result
24
+ */
25
+ load(): Promise<this>;
26
+ /**
27
+ * Ensure default parameters are set on our application
28
+ * Creating the default services if they do not exist
29
+ *
30
+ * Might want to have only this in unpackaged application as Application should
31
+ * have a perfectly valid configuration
32
+ * @param configuration - the configuration
33
+ */
34
+ ensureDefaultConfiguration(configuration: Configuration): void;
16
35
  /**
17
36
  * Load full configuration
18
37
  *
19
38
  * webda.config.json and complete the cachedModule
20
39
  *
21
- * @param file
22
- * @returns
23
- */
24
- loadConfiguration(file: string): void;
25
- /**
26
- * Compute short ids
27
- * @returns
40
+ * @param file - the file path
41
+ * @returns the result
28
42
  */
29
- load(): Promise<this>;
43
+ loadConfiguration(file: string): Promise<void>;
30
44
  /**
31
45
  * Add Moddas, Models and Deployers definitions
32
46
  * It also add the project metadata
33
47
  *
34
- * @param configuration
35
- * @returns
48
+ * @param configuration - the configuration
49
+ * @returns the result
36
50
  */
37
51
  completeConfiguration(configuration: Configuration): Configuration;
38
52
  /**
53
+ * @param _name - the name to use
54
+ * @param _version - the version string
39
55
  * @returns empty git information
40
56
  */
41
57
  getGitInformation(_name?: string, _version?: string): GitInformation;
58
+ /** Upgrade a v3 configuration to v4 format */
59
+ upgradeConfigToV4(): void;
42
60
  /**
43
61
  * Check package.json
62
+ * @returns the result
44
63
  */
45
64
  loadProjectInformation(): ProjectInformation;
46
- /**
47
- * Store the current module
48
- * @returns
49
- */
50
- getModulesCache(): any;
51
65
  /**
52
66
  * Search the node_modules structure for webda.module.json files
53
67
  *
54
- * @param path
55
- * @returns
68
+ * @param path - the path
69
+ * @returns the result
56
70
  */
57
- static findModulesFiles(path: string): string[];
71
+ static findModulesFiles<T>(this: T, path: string): Promise<string[]>;
58
72
  /**
59
73
  * Load all imported modules and current module
60
74
  * It will compile module
61
75
  * Generate the current module file
62
76
  * Load any imported webda.module.json
77
+ * @param module - the module to load
78
+ * @returns the list of results
63
79
  */
64
- findModules(module: CachedModule): string[];
80
+ findModules(module: CachedModule): Promise<string[]>;
65
81
  /**
66
82
  * Only allow local and core module and sample-app
83
+ * @param _filename - the filename
84
+ * @returns true if the condition is met
67
85
  */
68
86
  filterModule(_filename: string): boolean;
69
87
  /**
@@ -71,14 +89,16 @@ export declare class UnpackedApplication extends Application {
71
89
  * Resolve the linked file to current application
72
90
  *
73
91
  * @param moduleFile to load
74
- * @returns
92
+ * @returns the result
75
93
  */
76
94
  loadWebdaModule(moduleFile: string): CachedModule;
77
95
  /**
78
96
  * Merge all modules into one cached module
79
97
  *
80
- * @param module
98
+ * @param module - the module to load
99
+ * @param configuration - the configuration
100
+ * @returns the result
81
101
  */
82
- mergeModules(configuration: Configuration): void;
102
+ mergeModules(configuration: Configuration): Promise<CachedModule>;
83
103
  }
84
104
  //# sourceMappingURL=unpackedapplication.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unpackedapplication.d.ts","sourceRoot":"","sources":["../../src/application/unpackedapplication.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EAEvB,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAM7B;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,cAOjC,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;IAClD;;;OAGG;IACH,YAAY,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC,EAAE,YAAY,EAgB/E;IAED;;;OAGG;IACG,IAAI,kBAQT;IAED;;;;;;;OAOG;IACH,0BAA0B,CAAC,aAAa,EAAE,aAAa,QA0DtD;IAED;;;;;;;OAOG;IACG,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBnD;IAED;;;;;;OAMG;IACH,qBAAqB,CAAC,aAAa,EAAE,aAAa,GAAG,aAAa,CAmBjE;IAED;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,cAAc,CASnE;IAED,8CAA8C;IAC9C,iBAAiB,SAoBhB;IAED;;;OAGG;IACH,sBAAsB,IAAI,kBAAkB,CA6C3C;IAED;;;;;OAKG;IACH,OACa,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA4DzE;IAED;;;;;;;OAOG;IACG,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA4BzD;IAED;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEvC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,CA8BhD;IAED;;;;;;OAMG;IACG,YAAY,CAAC,aAAa,EAAE,aAAa,yBAsC9C;CACF"}
@@ -0,0 +1,500 @@
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 * as fs from "fs";
37
+ import { Application } from "./application.js";
38
+ import { SectionEnum } from "./iconfiguration.js";
39
+ import { FileUtils } from "@webda/utils";
40
+ import { getMachineId } from "../core/hooks.js";
41
+ import { join, resolve, relative, dirname } from "path";
42
+ import { ProcessCache } from "../cache/cache.js";
43
+ /**
44
+ * Empty git information
45
+ */
46
+ export const EmptyGitInformation = {
47
+ branch: "",
48
+ commit: "",
49
+ short: "",
50
+ tag: "",
51
+ tags: [],
52
+ version: ""
53
+ };
54
+ /**
55
+ * An unpacked application load dynamically all webda.module.json
56
+ * And load also all the package description
57
+ *
58
+ * The normal Application is designed to load all this information from
59
+ * the cachedModule to avoid any unecessary action within a production environment
60
+ */
61
+ let UnpackedApplication = (() => {
62
+ let _classSuper = Application;
63
+ let _staticExtraInitializers = [];
64
+ let _static_findModulesFiles_decorators;
65
+ return class UnpackedApplication extends _classSuper {
66
+ static {
67
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
68
+ _static_findModulesFiles_decorators = [ProcessCache()];
69
+ __esDecorate(this, null, _static_findModulesFiles_decorators, { kind: "method", name: "findModulesFiles", static: true, private: false, access: { has: obj => "findModulesFiles" in obj, get: obj => obj.findModulesFiles }, metadata: _metadata }, null, _staticExtraInitializers);
70
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
71
+ __runInitializers(this, _staticExtraInitializers);
72
+ }
73
+ /** Create a new UnpackedApplication
74
+ * @param file - file path or partial configuration
75
+ * @param logger - the logger instance
76
+ */
77
+ constructor(file, logger) {
78
+ super(typeof file === "string"
79
+ ? file
80
+ : {
81
+ version: 4,
82
+ application: {},
83
+ services: {},
84
+ parameters: {},
85
+ ...file
86
+ }, logger);
87
+ if (typeof file !== "string") {
88
+ this.baseConfiguration = this.completeConfiguration(this.baseConfiguration);
89
+ }
90
+ }
91
+ /**
92
+ * Ensure default configuration after load
93
+ * @returns the result
94
+ */
95
+ async load() {
96
+ await super.load();
97
+ // Ensuring default configuration after loadModule as we do auto-type guess and needs the Modda
98
+ // We only do it in UnpackedApplication as Application should be optimized for startup
99
+ // Application should have a webda.config.json optimized by the builder
100
+ // webda config > webda.config.json
101
+ this.ensureDefaultConfiguration(this.baseConfiguration);
102
+ return this;
103
+ }
104
+ /**
105
+ * Ensure default parameters are set on our application
106
+ * Creating the default services if they do not exist
107
+ *
108
+ * Might want to have only this in unpackaged application as Application should
109
+ * have a perfectly valid configuration
110
+ * @param configuration - the configuration
111
+ */
112
+ ensureDefaultConfiguration(configuration) {
113
+ configuration.services ??= {};
114
+ configuration.parameters ??= {};
115
+ configuration.parameters.apiUrl ??= "http://localhost:18080";
116
+ configuration.parameters.metrics ??= {};
117
+ if (configuration.parameters.metrics) {
118
+ configuration.parameters.metrics.labels ??= {};
119
+ configuration.parameters.metrics.config ??= {};
120
+ configuration.parameters.metrics.prefix ??= "";
121
+ }
122
+ configuration.parameters.configurationService ??= "Configuration";
123
+ configuration.parameters.defaultStore ??= "Registry";
124
+ const autoRegistry = configuration.services["Registry"] === undefined;
125
+ configuration.services["Router"] ??= {
126
+ type: "Webda/Router"
127
+ };
128
+ // Registry by default
129
+ configuration.services["Registry"] ??= {
130
+ type: "Webda/MemoryStore",
131
+ persistence: {
132
+ path: ".registry",
133
+ key: getMachineId()
134
+ }
135
+ };
136
+ // CryptoService by default
137
+ configuration.services["CryptoService"] ??= {
138
+ type: "Webda/CryptoService",
139
+ autoRotate: autoRegistry ? 30 : undefined,
140
+ autoCreate: true
141
+ };
142
+ // TokenService by default
143
+ configuration.services["TokenService"] ??= {
144
+ type: "Webda/TokenService"
145
+ };
146
+ // By default use CookieSessionManager
147
+ // TODO Should not be added here as it is only for HTTP
148
+ configuration.services["SessionManager"] ??= {
149
+ type: "Webda/CookieSessionManager"
150
+ };
151
+ // Ensure type is set to default
152
+ for (const serviceName in configuration.services) {
153
+ if (configuration.services[serviceName].type !== undefined) {
154
+ continue;
155
+ }
156
+ if (this.moddas[this.completeNamespace(serviceName)]) {
157
+ configuration.services[serviceName].type = this.completeNamespace(serviceName);
158
+ continue;
159
+ }
160
+ if (!serviceName.includes("/") && this.moddas[`Webda/${serviceName}`]) {
161
+ configuration.services[serviceName].type = `Webda/${serviceName}`;
162
+ }
163
+ }
164
+ }
165
+ /**
166
+ * Load full configuration
167
+ *
168
+ * webda.config.json and complete the cachedModule
169
+ *
170
+ * @param file - the file path
171
+ * @returns the result
172
+ */
173
+ async loadConfiguration(file) {
174
+ if (!file && this.baseConfiguration) {
175
+ this.baseConfiguration = this.completeConfiguration({ version: 4, ...this.baseConfiguration });
176
+ }
177
+ else if (!fs.existsSync(file)) {
178
+ this.baseConfiguration = this.completeConfiguration({ version: 4, parameters: {} });
179
+ }
180
+ else {
181
+ this.baseConfiguration = this.completeConfiguration(FileUtils.load(file));
182
+ }
183
+ // If cachedModules is defined we do not recompute
184
+ if (!this.baseConfiguration.cachedModules) {
185
+ this.baseConfiguration.cachedModules = {
186
+ project: this.loadProjectInformation(),
187
+ beans: {},
188
+ deployers: {},
189
+ models: {},
190
+ schemas: {},
191
+ moddas: {}
192
+ };
193
+ this.log("DEBUG", "Merging modules into configuration");
194
+ await this.mergeModules(this.baseConfiguration);
195
+ }
196
+ }
197
+ /**
198
+ * Add Moddas, Models and Deployers definitions
199
+ * It also add the project metadata
200
+ *
201
+ * @param configuration - the configuration
202
+ * @returns the result
203
+ */
204
+ completeConfiguration(configuration) {
205
+ // Only one level of includes is permitted
206
+ const imports = configuration.$import || [];
207
+ const effectiveImports = [];
208
+ for (const importFile of imports) {
209
+ if (!fs.existsSync(this.getPath(importFile))) {
210
+ this.log("WARN", `Cannot import configuration '${importFile}'`);
211
+ continue;
212
+ }
213
+ effectiveImports.push(importFile);
214
+ const includeConfiguration = FileUtils.load(this.getPath(importFile));
215
+ if (includeConfiguration.imports?.length) {
216
+ this.log("WARN", `Imported configuration '${importFile}' has nested imports that will be skipped`);
217
+ }
218
+ configuration = deepmerge(includeConfiguration, configuration);
219
+ }
220
+ configuration.$import = effectiveImports;
221
+ // Ensure default values
222
+ return configuration;
223
+ }
224
+ /**
225
+ * @param _name - the name to use
226
+ * @param _version - the version string
227
+ * @returns empty git information
228
+ */
229
+ getGitInformation(_name, _version) {
230
+ return {
231
+ branch: "",
232
+ commit: "",
233
+ short: "",
234
+ tag: "",
235
+ tags: [],
236
+ version: ""
237
+ };
238
+ }
239
+ /** Upgrade a v3 configuration to v4 format */
240
+ upgradeConfigToV4() {
241
+ /*
242
+ // Move to router
243
+
244
+ trustedProxies
245
+ csrfOrigins
246
+ website
247
+ static
248
+ apiUrl
249
+ requestLimit
250
+ requestTimeout
251
+ defaultHeaders
252
+
253
+ // Move to Core
254
+ configurationService
255
+ defaultStore
256
+ ignoreBeans
257
+
258
+ // metrics??
259
+ */
260
+ }
261
+ /**
262
+ * Check package.json
263
+ * @returns the result
264
+ */
265
+ loadProjectInformation() {
266
+ const info = {
267
+ deployment: {
268
+ name: ""
269
+ },
270
+ package: {
271
+ name: "",
272
+ version: ""
273
+ },
274
+ git: EmptyGitInformation,
275
+ webda: {}
276
+ };
277
+ let packageJson = join(this.applicationPath, "package.json");
278
+ if (fs.existsSync(packageJson)) {
279
+ info.package = FileUtils.load(packageJson);
280
+ }
281
+ info.git = this.getGitInformation(info.package?.name, info.package?.version);
282
+ info.webda = info.package.webda || {};
283
+ let parent = join(this.applicationPath, "..");
284
+ do {
285
+ packageJson = join(parent, "package.json");
286
+ if (fs.existsSync(packageJson)) {
287
+ const currentInfo = FileUtils.load(packageJson);
288
+ if (currentInfo.workspaces) {
289
+ this.log("DEBUG", "Application is running within a workspace");
290
+ // Replace any relative path by absolute one
291
+ for (const i in currentInfo.webda) {
292
+ if (currentInfo.webda[i].startsWith("./")) {
293
+ currentInfo.webda[i] = join(resolve(parent), currentInfo.webda[i].substr(2));
294
+ }
295
+ }
296
+ info.webda = deepmerge(currentInfo.webda || {}, info.webda);
297
+ info.webda.workspaces = {
298
+ packages: currentInfo.workspaces,
299
+ parent: currentInfo,
300
+ path: resolve(parent)
301
+ };
302
+ break;
303
+ }
304
+ }
305
+ parent = resolve(join(parent, ".."));
306
+ } while (parent !== resolve(join(parent, "..")));
307
+ // Check modules
308
+ return info;
309
+ }
310
+ /**
311
+ * Search the node_modules structure for webda.module.json files
312
+ *
313
+ * @param path - the path
314
+ * @returns the result
315
+ */
316
+ static async findModulesFiles(path) {
317
+ if (!path.endsWith("node_modules") || !fs.existsSync(path)) {
318
+ return [];
319
+ }
320
+ // Track visited directories (by realpath) to prevent infinite loops
321
+ // caused by pnpm's symlink structure where workspace packages
322
+ // reference each other through nested node_modules
323
+ const visited = new Set();
324
+ const scanNodeModules = async (nmPath) => {
325
+ const realNmPath = await fs.promises.realpath(nmPath).catch(() => nmPath);
326
+ if (visited.has(realNmPath)) {
327
+ return [];
328
+ }
329
+ visited.add(realNmPath);
330
+ if (!fs.existsSync(nmPath)) {
331
+ return [];
332
+ }
333
+ const files = new Set();
334
+ const checkFolder = async (filepath) => {
335
+ if (fs.existsSync(join(filepath, "webda.module.json"))) {
336
+ files.add(join(filepath, "webda.module.json"));
337
+ }
338
+ if (fs.existsSync(join(filepath, "node_modules"))) {
339
+ (await scanNodeModules(join(filepath, "node_modules"))).forEach(f => files.add(f));
340
+ }
341
+ };
342
+ const recursiveSearch = async (dirpath, depth = 0) => {
343
+ await Promise.all((await fs.promises.readdir(dirpath, { withFileTypes: true })).map(async (file) => {
344
+ if (file.name.startsWith(".")) {
345
+ return;
346
+ }
347
+ const filepath = join(dirpath, file.name);
348
+ if (file.isDirectory() && file.name.startsWith("@") && depth === 0) {
349
+ // One recursion
350
+ await recursiveSearch(filepath, depth + 1);
351
+ }
352
+ else if (file.isDirectory()) {
353
+ await checkFolder(filepath);
354
+ }
355
+ else if (file.isSymbolicLink()) {
356
+ // We want to follow symbolic links w/o increasing depth
357
+ let realPath;
358
+ try {
359
+ // realpathSync will throw if the symlink is broken
360
+ realPath = await fs.promises.realpath(filepath);
361
+ }
362
+ catch (err) {
363
+ return;
364
+ }
365
+ await checkFolder(realPath);
366
+ }
367
+ }));
368
+ };
369
+ await recursiveSearch(nmPath, 0);
370
+ return [...files];
371
+ };
372
+ return scanNodeModules(path);
373
+ }
374
+ /**
375
+ * Load all imported modules and current module
376
+ * It will compile module
377
+ * Generate the current module file
378
+ * Load any imported webda.module.json
379
+ * @param module - the module to load
380
+ * @returns the list of results
381
+ */
382
+ async findModules(module) {
383
+ const appPath = this.getPath();
384
+ // Modules should be cached on deploy
385
+ const files = [];
386
+ const currentModule = this.getPath("webda.module.json");
387
+ if (fs.existsSync(currentModule)) {
388
+ files.push(currentModule);
389
+ }
390
+ this.log("TRACE", "Searching for modules in", this.getPath("node_modules"));
391
+ files.push(...(await UnpackedApplication.findModulesFiles(this.getPath("node_modules"))));
392
+ // Search workspace for webda.module.json
393
+ if (module.project.webda.workspaces && module.project.webda.workspaces.path !== "") {
394
+ this.log("TRACE", "Searching for modules in", join(module.project.webda.workspaces.path, "node_modules"));
395
+ files.push(...(await UnpackedApplication.findModulesFiles(join(module.project.webda.workspaces.path, "node_modules"))));
396
+ }
397
+ // Ensure we are not adding many times the same modules
398
+ // App's own module always included, filterModule only applies to dependencies
399
+ const currentModuleReal = fs.existsSync(currentModule) ? fs.realpathSync(currentModule) : undefined;
400
+ const moduleInfo = Array.from(new Set(files.map(n => fs.realpathSync(n)))).filter(f => f === currentModuleReal || this.filterModule(f));
401
+ this.log("TRACE", "Found modules", moduleInfo, "for", appPath);
402
+ return moduleInfo;
403
+ }
404
+ /**
405
+ * Only allow local and core module and sample-app
406
+ * @param _filename - the filename
407
+ * @returns true if the condition is met
408
+ */
409
+ filterModule(_filename) {
410
+ return true;
411
+ }
412
+ /**
413
+ * Load a webda.module.json file
414
+ * Resolve the linked file to current application
415
+ *
416
+ * @param moduleFile to load
417
+ * @returns the result
418
+ */
419
+ loadWebdaModule(moduleFile) {
420
+ const module = FileUtils.load(moduleFile);
421
+ if (!module.$schema?.endsWith("/webda.module.v4.json")) {
422
+ this.log("WARN", `Module '${moduleFile}' is not a v4 format, skipping module`);
423
+ return {
424
+ models: {},
425
+ schemas: {},
426
+ beans: {},
427
+ deployers: {},
428
+ moddas: {},
429
+ project: undefined
430
+ };
431
+ }
432
+ Object.keys(SectionEnum)
433
+ .filter(k => Number.isNaN(+k))
434
+ .forEach(p => {
435
+ // Do not keep Beans from other modules
436
+ if (this.getPath("webda.module.json") !== moduleFile && SectionEnum[p] === "beans") {
437
+ delete module[SectionEnum[p]];
438
+ return;
439
+ }
440
+ for (const key in module[SectionEnum[p]]) {
441
+ const relBase = relative(this.getPath(), dirname(moduleFile));
442
+ module[SectionEnum[p]][key].Import = join(relBase, module[SectionEnum[p]][key].Import);
443
+ if (module[SectionEnum[p]][key].Configuration) {
444
+ module[SectionEnum[p]][key].Configuration = join(relBase, module[SectionEnum[p]][key].Configuration);
445
+ }
446
+ }
447
+ });
448
+ return module;
449
+ }
450
+ /**
451
+ * Merge all modules into one cached module
452
+ *
453
+ * @param module - the module to load
454
+ * @param configuration - the configuration
455
+ * @returns the result
456
+ */
457
+ async mergeModules(configuration) {
458
+ const module = configuration.cachedModules;
459
+ const appModule = this.getPath("webda.module.json");
460
+ const files = await this.findModules(module);
461
+ const value = files
462
+ .map(f => {
463
+ const currentModule = this.loadWebdaModule(f);
464
+ // We only take the Beans from current application
465
+ if (appModule !== f) {
466
+ this.log("DEBUG", `Load module without beans '${f}'`);
467
+ delete currentModule.beans;
468
+ }
469
+ else {
470
+ this.log("DEBUG", `Load module with beans '${f}'`);
471
+ }
472
+ return currentModule;
473
+ })
474
+ .reduce((prev, val) => {
475
+ const merged = deepmerge(prev, val);
476
+ // A schema is a complete document re-emitted by the modules depending on the one declaring it (any
477
+ // `@WebdaSchema` type): replace it whole, deepmerge would concatenate its arrays (`required`, `enum`...)
478
+ merged.schemas = { ...(prev.schemas ?? {}), ...(val.schemas ?? {}) };
479
+ return merged;
480
+ }, module);
481
+ Object.keys(SectionEnum)
482
+ .filter(k => Number.isNaN(+k))
483
+ .forEach(p => {
484
+ module[SectionEnum[p]] = value[SectionEnum[p]];
485
+ });
486
+ // Copying schemas, capabilities, and behaviors. `behaviors` lives outside
487
+ // SectionEnum because Behavior classes are intentionally not models /
488
+ // moddas / beans / deployers — but the merged value must still flow
489
+ // through to the runtime so DomainService.addBehaviorOperations sees them.
490
+ module.schemas = value.schemas;
491
+ module.capabilities = value.capabilities;
492
+ module.behaviors = value.behaviors;
493
+ this.log("DEBUG", "Merged modules", module);
494
+ await this.loadModule(module);
495
+ return module;
496
+ }
497
+ };
498
+ })();
499
+ export { UnpackedApplication };
500
+ //# sourceMappingURL=unpackedapplication.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unpackedapplication.js","sourceRoot":"","sources":["../../src/application/unpackedapplication.ts"],"names":[],"mappings":"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"}