@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
@@ -0,0 +1,30 @@
1
+ import { ConfigurationService, ConfigurationServiceParameters } from "./configuration.service.js";
2
+ /**
3
+ * Allow for dynamic configuration from a file
4
+ * @WebdaModda Webda/FileConfiguration
5
+ */
6
+ export declare class FileConfigurationService<T extends ConfigurationServiceParameters = ConfigurationServiceParameters> extends ConfigurationService<T> {
7
+ sourcePaths: Record<string, string>;
8
+ /**
9
+ * Resolve the file path for a given configuration source id, creating from defaults if missing
10
+ * @param id - the identifier
11
+ * @returns the result string
12
+ */
13
+ getFilePath(id: string): string;
14
+ /**
15
+ * Watch the configuration file for changes and trigger the callback when modified
16
+ * @param id - the identifier
17
+ * @param callback - the callback function
18
+ * @param defaultValue - the default value
19
+ * @returns the result
20
+ */
21
+ canTriggerConfiguration(id: string, callback: () => void, defaultValue?: any): boolean;
22
+ /**
23
+ * Load the JSON from source defined file
24
+ * @override
25
+ */
26
+ getConfiguration(id: string): Promise<{
27
+ [key: string]: any;
28
+ }>;
29
+ }
30
+ //# sourceMappingURL=fileconfiguration.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileconfiguration.service.d.ts","sourceRoot":"","sources":["../../src/configurations/fileconfiguration.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAGlG;;;GAGG;AACH,qBAAa,wBAAwB,CACnC,CAAC,SAAS,8BAA8B,GAAG,8BAA8B,CACzE,SAAQ,oBAAoB,CAAC,CAAC,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAEzC;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CA0B9B;IAED;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,EAAE,YAAY,CAAC,EAAE,GAAG,GAAG,OAAO,CAIrF;IAED;;;OAGG;IACH,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAG5D;CACF"}
@@ -0,0 +1,65 @@
1
+ import { existsSync, watchFile } from "fs";
2
+ import * as WebdaError from "../errors/errors.js";
3
+ import { FileUtils } from "@webda/utils";
4
+ import { ConfigurationService } from "./configuration.service.js";
5
+ import { useApplication } from "../application/hooks.js";
6
+ /**
7
+ * Allow for dynamic configuration from a file
8
+ * @WebdaModda Webda/FileConfiguration
9
+ */
10
+ export class FileConfigurationService extends ConfigurationService {
11
+ sourcePaths = {};
12
+ /**
13
+ * Resolve the file path for a given configuration source id, creating from defaults if missing
14
+ * @param id - the identifier
15
+ * @returns the result string
16
+ */
17
+ getFilePath(id) {
18
+ // Allow .jsonc, .yaml, .yml, .json
19
+ if (/\.(jsonc?|ya?ml)$/.test(id)) {
20
+ this.sourcePaths[id] = useApplication().getPath(id);
21
+ }
22
+ else {
23
+ try {
24
+ this.sourcePaths[id] = FileUtils.getConfigurationFile(useApplication().getPath(id));
25
+ this.log("DEBUG", `Using configuration file ${this.sourcePaths[id]}`);
26
+ }
27
+ catch (error) {
28
+ // Default to yaml in case we create based on default value
29
+ this.sourcePaths[id] = useApplication().getPath(id + ".yaml");
30
+ this.log("DEBUG", `Using configuration file ${this.sourcePaths[id]} (defaulted to .yaml extension)`);
31
+ }
32
+ }
33
+ if (!existsSync(this.sourcePaths[id])) {
34
+ if (!this.parameters.default) {
35
+ throw new WebdaError.CodeError("FILE_CONFIGURATION_SOURCE_MISSING", "Configuration file not found: " + this.sourcePaths[id]);
36
+ }
37
+ else {
38
+ this.log("DEBUG", `Setting default value for file ${this.sourcePaths[id]}`);
39
+ FileUtils.save(this.parameters.default, this.sourcePaths[id]);
40
+ }
41
+ }
42
+ return this.sourcePaths[id];
43
+ }
44
+ /**
45
+ * Watch the configuration file for changes and trigger the callback when modified
46
+ * @param id - the identifier
47
+ * @param callback - the callback function
48
+ * @param defaultValue - the default value
49
+ * @returns the result
50
+ */
51
+ canTriggerConfiguration(id, callback, defaultValue) {
52
+ this.sourcePaths[id] ??= this.getFilePath(id);
53
+ watchFile(this.sourcePaths[id], callback);
54
+ return true;
55
+ }
56
+ /**
57
+ * Load the JSON from source defined file
58
+ * @override
59
+ */
60
+ getConfiguration(id) {
61
+ this.sourcePaths[id] ??= this.getFilePath(id);
62
+ return FileUtils.load(this.sourcePaths[id]);
63
+ }
64
+ }
65
+ //# sourceMappingURL=fileconfiguration.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileconfiguration.service.js","sourceRoot":"","sources":["../../src/configurations/fileconfiguration.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAkC,MAAM,4BAA4B,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD;;;GAGG;AACH,MAAM,OAAO,wBAEX,SAAQ,oBAAuB;IAC/B,WAAW,GAA2B,EAAE,CAAC;IAEzC;;;;OAIG;IACH,WAAW,CAAC,EAAU;QACpB,mCAAmC;QACnC,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,oBAAoB,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,4BAA4B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACxE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,2DAA2D;gBAC3D,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC;gBAC9D,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,4BAA4B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,iCAAiC,CAAC,CAAC;YACvG,CAAC;QACH,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACtC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,UAAU,CAAC,SAAS,CAC5B,mCAAmC,EACnC,gCAAgC,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CACxD,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,kCAAkC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC5E,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAU,EAAE,QAAoB,EAAE,YAAkB;QAC1E,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9C,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,EAAU;QACzB,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;CACF"}
@@ -0,0 +1,43 @@
1
+ import { ConfigurationService, ConfigurationServiceParameters } from "./configuration.service.js";
2
+ /**
3
+ * Parameters for KubernetesConfigurationService
4
+ * Throw error if default is set
5
+ */
6
+ export declare class KubernetesConfigurationParameters extends ConfigurationServiceParameters {
7
+ /**
8
+ * Load parameters, rejecting any default configuration since Kubernetes sources are required
9
+ * @param params - the service parameters
10
+ * @returns the result
11
+ */
12
+ load(params: any): this;
13
+ }
14
+ /**
15
+ * Allow for dynamic configuration from ConfigMap or Secrets
16
+ *
17
+ * Read a ConfigMap from Kubernetes and auto-update
18
+ * @WebdaModda
19
+ */
20
+ export declare class KubernetesConfigurationService<T extends KubernetesConfigurationParameters = KubernetesConfigurationParameters> extends ConfigurationService<T> {
21
+ sourcePaths: Record<string, string>;
22
+ /**
23
+ * Resolve the Kubernetes-mounted file path for a configuration source
24
+ * @param id - the identifier
25
+ * @returns the result string
26
+ */
27
+ getFilePath(id: string): string;
28
+ /**
29
+ * Check if the configuration can be triggered
30
+ * @param id - the identifier
31
+ * @param callback - the callback function
32
+ * @returns true if the condition is met
33
+ */
34
+ canTriggerConfiguration(id: string, callback: () => void): boolean;
35
+ /**
36
+ * Load configuration from a ConfigMap or a Secret
37
+ * @override
38
+ */
39
+ getConfiguration(id: string): Promise<{
40
+ [key: string]: any;
41
+ }>;
42
+ }
43
+ //# sourceMappingURL=kubernetesconfiguration.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kubernetesconfiguration.service.d.ts","sourceRoot":"","sources":["../../src/configurations/kubernetesconfiguration.service.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAGlG;;;GAGG;AACH,qBAAa,iCAAkC,SAAQ,8BAA8B;IACnF;;;;OAIG;IACH,IAAI,CAAC,MAAM,EAAE,GAAG,QAcf;CACF;AACD;;;;;GAKG;AACH,qBAAa,8BAA8B,CAEzC,CAAC,SAAS,iCAAiC,GAAG,iCAAiC,CAC/E,SAAQ,oBAAoB,CAAC,CAAC,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAEzC;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAS9B;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAejE;IAED;;;OAGG;IACG,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAC,CAalE;CACF"}
@@ -0,0 +1,83 @@
1
+ import * as fs from "fs";
2
+ import * as path from "path";
3
+ import * as WebdaError from "../errors/errors.js";
4
+ import { FileUtils } from "@webda/utils";
5
+ import { ConfigurationService, ConfigurationServiceParameters } from "./configuration.service.js";
6
+ import { useApplication } from "../application/hooks.js";
7
+ /**
8
+ * Parameters for KubernetesConfigurationService
9
+ * Throw error if default is set
10
+ */
11
+ export class KubernetesConfigurationParameters extends ConfigurationServiceParameters {
12
+ /**
13
+ * Load parameters, rejecting any default configuration since Kubernetes sources are required
14
+ * @param params - the service parameters
15
+ * @returns the result
16
+ */
17
+ load(params) {
18
+ super.load(params);
19
+ if (Object.keys(params.default?.services || {}).length ||
20
+ Object.keys(params.default?.application || {}).length ||
21
+ Object.keys(params.default?.parameters || {}).length) {
22
+ throw new WebdaError.CodeError("KUBE_CONFIGURATION_NO_DEFAULT", `KubernetesConfigurationService does not support default configuration ${params.default}`);
23
+ }
24
+ console.log(this.source, this.sources);
25
+ return this;
26
+ }
27
+ }
28
+ /**
29
+ * Allow for dynamic configuration from ConfigMap or Secrets
30
+ *
31
+ * Read a ConfigMap from Kubernetes and auto-update
32
+ * @WebdaModda
33
+ */
34
+ export class KubernetesConfigurationService extends ConfigurationService {
35
+ sourcePaths = {};
36
+ /**
37
+ * Resolve the Kubernetes-mounted file path for a configuration source
38
+ * @param id - the identifier
39
+ * @returns the result string
40
+ */
41
+ getFilePath(id) {
42
+ this.sourcePaths[id] ??= useApplication().getPath(id);
43
+ if (!fs.existsSync(this.sourcePaths[id])) {
44
+ throw new WebdaError.CodeError("KUBE_CONFIGURATION_SOURCE_MISSING", `Kubernetes configuration source not found: ${this.sourcePaths[id]}`);
45
+ }
46
+ return this.sourcePaths[id];
47
+ }
48
+ /**
49
+ * Check if the configuration can be triggered
50
+ * @param id - the identifier
51
+ * @param callback - the callback function
52
+ * @returns true if the condition is met
53
+ */
54
+ canTriggerConfiguration(id, callback) {
55
+ this.sourcePaths[id] ??= this.getFilePath(id);
56
+ console.log("canTriggerConfiguration", this.sourcePaths[id]);
57
+ if (!fs.existsSync(this.sourcePaths[id])) {
58
+ throw new WebdaError.CodeError("KUBE_CONFIGURATION_SOURCE_MISSING", `Kubernetes configuration source not found: ${this.sourcePaths[id]}`);
59
+ }
60
+ console.log("Watch", path.join(this.sourcePaths[id], "..data"));
61
+ fs.watchFile(path.join(this.sourcePaths[id], "..data"), { interval: 500 }, () => {
62
+ console.log("Configuration source changed", id, this.sourcePaths[id], Date.now());
63
+ callback();
64
+ });
65
+ return true;
66
+ }
67
+ /**
68
+ * Load configuration from a ConfigMap or a Secret
69
+ * @override
70
+ */
71
+ async getConfiguration(id) {
72
+ this.sourcePaths[id] ??= this.getFilePath(id);
73
+ const found = fs
74
+ .readdirSync(this.sourcePaths[id])
75
+ .filter(f => !f.startsWith(".") && f.match(/webda\.(jsonc?|ya?ml)$/i))
76
+ .pop();
77
+ if (!found) {
78
+ throw new WebdaError.CodeError("KUBE_CONFIGURATION_SOURCE_INVALID", `Kubernetes configuration source not valid: ${this.sourcePaths[id]}`);
79
+ }
80
+ return FileUtils.load(path.join(this.sourcePaths[id], found));
81
+ }
82
+ }
83
+ //# sourceMappingURL=kubernetesconfiguration.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kubernetesconfiguration.service.js","sourceRoot":"","sources":["../../src/configurations/kubernetesconfiguration.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { Context, IContextAware } from "./icontext.js";
2
+ /**
3
+ * Get current execution context
4
+ * @returns the result
5
+ */
6
+ export declare function useContext<T extends Context>(): T;
7
+ /**
8
+ * Shortcut to get the current user
9
+ * @returns the result
10
+ */
11
+ export declare function useCurrentUser(): Promise<any>;
12
+ /**
13
+ * Shortcut to get the current user id
14
+ * @returns the result
15
+ */
16
+ export declare function useCurrentUserId(): string;
17
+ /**
18
+ * Run this function as system
19
+ *
20
+ * @param run - the function to run
21
+ * @param attach - whether to attach to current context
22
+ * @returns the list of results
23
+ */
24
+ export declare function runAsSystem<T>(run: () => T, attach?: IContextAware[]): T;
25
+ /**
26
+ * Run this function as user
27
+ * @param context - the execution context
28
+ * @param run - the function to run
29
+ * @param attach - whether to attach to current context
30
+ * @returns the list of results
31
+ */
32
+ export declare function runWithContext<T>(context: Context, run: () => T, attach?: IContextAware[]): T;
33
+ //# sourceMappingURL=execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/contexts/execution.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAoB,MAAM,eAAe,CAAC;AAMzE;;;GAGG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,OAAO,KAAK,CAAC,CAEjD;AAED;;;GAGG;AACH,wBAAgB,cAAc,iBAE7B;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,WAE/B;AAcD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAE,aAAa,EAAO,GAAG,CAAC,CAE5E;AACD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAE,aAAa,EAAO,GAAG,CAAC,CAcjG"}
@@ -0,0 +1,73 @@
1
+ import { AsyncLocalStorage } from "node:async_hooks";
2
+ import { GlobalContext } from "./globalcontext.js";
3
+ import { setContextUpdate } from "./icontext.js";
4
+ const globalContext = new GlobalContext();
5
+ // Test are transpiling and creating several instances of 'instancestorage.ts'
6
+ process["webdaContexts"] ??= new AsyncLocalStorage();
7
+ const storage = process["webdaContexts"];
8
+ /**
9
+ * Get current execution context
10
+ * @returns the result
11
+ */
12
+ export function useContext() {
13
+ return (storage.getStore()?.context || globalContext);
14
+ }
15
+ /**
16
+ * Shortcut to get the current user
17
+ * @returns the result
18
+ */
19
+ export function useCurrentUser() {
20
+ return useContext().getCurrentUser();
21
+ }
22
+ /**
23
+ * Shortcut to get the current user id
24
+ * @returns the result
25
+ */
26
+ export function useCurrentUserId() {
27
+ return useContext().getCurrentUserId();
28
+ }
29
+ /**
30
+ * Used to update model context
31
+ *
32
+ * @param models - the models
33
+ * @param context - the execution context
34
+ */
35
+ function attachModels(models, context) {
36
+ setContextUpdate(true);
37
+ models.forEach(m => (m.context = context));
38
+ setContextUpdate(false);
39
+ }
40
+ /**
41
+ * Run this function as system
42
+ *
43
+ * @param run - the function to run
44
+ * @param attach - whether to attach to current context
45
+ * @returns the list of results
46
+ */
47
+ export function runAsSystem(run, attach = []) {
48
+ return runWithContext(globalContext, run, attach);
49
+ }
50
+ /**
51
+ * Run this function as user
52
+ * @param context - the execution context
53
+ * @param run - the function to run
54
+ * @param attach - whether to attach to current context
55
+ * @returns the list of results
56
+ */
57
+ export function runWithContext(context, run, attach = []) {
58
+ const previousContext = storage.getStore()?.context;
59
+ attachModels(attach, context);
60
+ const res = storage.run({ context, previousContext }, run);
61
+ // Manage both promise and normal
62
+ if (res instanceof Promise) {
63
+ // Return the .finally() promise so the rejection is not left dangling.
64
+ // Without this, .finally() creates a derived promise that rejects
65
+ // (when `run` rejects) with no handler, causing unhandled rejections.
66
+ return res.finally(() => attachModels(attach, undefined));
67
+ }
68
+ else {
69
+ attachModels(attach, undefined);
70
+ }
71
+ return res;
72
+ }
73
+ //# sourceMappingURL=execution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/contexts/execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAA0B,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEzE,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;AAC1C,8EAA8E;AAC9E,OAAO,CAAC,eAAe,CAAC,KAAK,IAAI,iBAAiB,EAAkD,CAAC;AACrG,MAAM,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AACzC;;;GAGG;AACH,MAAM,UAAU,UAAU;IACxB,OAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,IAAI,aAAa,CAAC,CAAC;AAC3D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,UAAU,EAAE,CAAC,cAAc,EAAE,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,UAAU,EAAE,CAAC,gBAAgB,EAAE,CAAC;AACzC,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,MAAa,EAAE,OAAgB;IACnD,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;IAC3C,gBAAgB,CAAC,KAAK,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAI,GAAY,EAAE,MAAM,GAAoB,EAAE;IACvE,OAAO,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC;AACD;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAI,OAAgB,EAAE,GAAY,EAAE,MAAM,GAAoB,EAAE;IAC5F,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC;IACpD,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,GAAG,CAAC,CAAC;IAC3D,iCAAiC;IACjC,IAAI,GAAG,YAAY,OAAO,EAAE,CAAC;QAC3B,uEAAuE;QACvE,kEAAkE;QAClE,sEAAsE;QACtE,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAM,CAAC;IACjE,CAAC;SAAM,CAAC;QACN,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { Writable } from "stream";
2
+ import { Context } from "./icontext.js";
3
+ /**
4
+ * Global Context is used as system context
5
+ */
6
+ export declare class GlobalContext extends Context {
7
+ /**
8
+ * @override
9
+ */
10
+ getOutputStream(): Promise<Writable>;
11
+ /**
12
+ * @override
13
+ */
14
+ getCurrentUserId(): string;
15
+ /**
16
+ * @override
17
+ */
18
+ isGlobalContext(): boolean;
19
+ /**
20
+ * @override
21
+ */
22
+ getCurrentUser(): Promise<undefined>;
23
+ /**
24
+ * Provide an empty session object
25
+ * @returns the result
26
+ */
27
+ getSession(): {};
28
+ }
29
+ //# sourceMappingURL=globalcontext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalcontext.d.ts","sourceRoot":"","sources":["../../src/contexts/globalcontext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,qBAAa,aAAc,SAAQ,OAAO;IACxC;;OAEG;IACH,eAAe,IAAI,OAAO,CAAC,QAAQ,CAAC,CAEnC;IAED;;OAEG;IACH,gBAAgB,IAAI,MAAM,CAEzB;IAED;;OAEG;IACH,eAAe,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,cAAc,IAAI,OAAO,CAAC,SAAS,CAAC,CAEnC;IAED;;;OAGG;IACH,UAAU,OAET;CACF"}
@@ -0,0 +1,38 @@
1
+ import { Context } from "./icontext.js";
2
+ /**
3
+ * Global Context is used as system context
4
+ */
5
+ export class GlobalContext extends Context {
6
+ /**
7
+ * @override
8
+ */
9
+ getOutputStream() {
10
+ throw new Error("You cannot write to a global context.");
11
+ }
12
+ /**
13
+ * @override
14
+ */
15
+ getCurrentUserId() {
16
+ return "system";
17
+ }
18
+ /**
19
+ * @override
20
+ */
21
+ isGlobalContext() {
22
+ return true;
23
+ }
24
+ /**
25
+ * @override
26
+ */
27
+ getCurrentUser() {
28
+ return undefined;
29
+ }
30
+ /**
31
+ * Provide an empty session object
32
+ * @returns the result
33
+ */
34
+ getSession() {
35
+ return {};
36
+ }
37
+ }
38
+ //# sourceMappingURL=globalcontext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalcontext.js","sourceRoot":"","sources":["../../src/contexts/globalcontext.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,OAAO;IACxC;;OAEG;IACH,eAAe;QACb,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { IncomingHttpHeaders } from "http";
1
+ import { type IncomingHttpHeaders } from "http";
2
2
  import { Readable } from "stream";
3
3
  export type HttpMethodType = "GET" | "OPTIONS" | "POST" | "PUT" | "PATCH" | "DELETE";
4
4
  /**
@@ -49,21 +49,32 @@ export declare class HttpContext {
49
49
  * URI prefix in case it is exposed through something that prefix the uri
50
50
  */
51
51
  prefix: string;
52
+ /** Create a new HttpContext
53
+ * @param hostname - the request hostname
54
+ * @param method - the HTTP method
55
+ * @param uri - the request URI
56
+ * @param protocol - the protocol
57
+ * @param port - the port number
58
+ * @param headers - the request headers
59
+ */
52
60
  constructor(hostname: string, method: HttpMethodType, uri: string, protocol?: "http" | "https", port?: number | string, headers?: {
53
61
  [key: string]: string | string[];
54
62
  });
55
63
  /**
56
64
  * Set the client ip
65
+ * @param ip - the IP address
66
+ * @returns this for chaining
57
67
  */
58
68
  setClientIp(ip: string): this;
59
69
  /**
60
70
  * Get the client ip
71
+ * @returns the result string
61
72
  */
62
73
  getClientIp(): string;
63
74
  /**
64
75
  *
65
76
  * @see https://developer.mozilla.org/en-US/docs/Web/API/URL/href
66
- * @returns
77
+ * @returns the result string
67
78
  */
68
79
  getHref(): string;
69
80
  /**
@@ -73,51 +84,56 @@ export declare class HttpContext {
73
84
  setPrefix(prefix: string): void;
74
85
  /**
75
86
  * Return Uri without prefix
87
+ *
88
+ * The prefix is only removed on a path boundary, so prefix `/prod` does not strip `/production`
89
+ * @returns the result string
76
90
  */
77
91
  getRelativeUri(): string;
78
92
  /**
79
93
  * Get full URI
80
- * @returns
94
+ * @returns the result string
81
95
  */
82
96
  getUrl(): string;
83
97
  /**
84
98
  * Get cookies
85
- * @returns
99
+ * @returns the result
86
100
  */
87
101
  getCookies(): any;
88
102
  /**
89
103
  * Get port number as string
90
104
  *
91
105
  * If http on port 80, or https on port 443 will return ""
106
+ * @returns the result string
92
107
  */
93
108
  getPort(): string;
94
109
  /**
95
110
  * Get the port number
111
+ * @returns the result number
96
112
  */
97
113
  getPortNumber(): number;
98
114
  /**
99
115
  * Return hostname and port
100
- * @returns
116
+ * @returns the result string
101
117
  */
102
118
  getHost(): string;
103
119
  /**
104
120
  * Return protocol, hostname and port
105
- * @returns
121
+ * @returns the result string
106
122
  */
107
123
  getOrigin(): string;
108
124
  /**
109
125
  * Get the hostname
110
- * @returns
126
+ * @returns the result string
111
127
  */
112
128
  getHostName(): string;
113
129
  /**
114
130
  * Get HTTP Method used
115
- * @returns
131
+ * @returns the result
116
132
  */
117
133
  getMethod(): HttpMethodType;
118
134
  /**
119
135
  * Get protocol used
120
- * @returns
136
+ * @returns the result
121
137
  */
122
138
  getProtocol(): "http:" | "https:";
123
139
  /**
@@ -126,7 +142,7 @@ export declare class HttpContext {
126
142
  * @param limit the size of readable request
127
143
  * @param timeout the time to read the request
128
144
  * @param encoding to analyze
129
- * @returns
145
+ * @returns the result
130
146
  */
131
147
  getRawBodyAsString(limit?: number, timeout?: number, encoding?: string): Promise<string>;
132
148
  /**
@@ -134,51 +150,60 @@ export declare class HttpContext {
134
150
  *
135
151
  * @param limit the size of readable request
136
152
  * @param timeout the time to read the request
137
- * @returns
153
+ * @returns the result
138
154
  */
139
155
  getRawBody(limit?: number, timeout?: number): Promise<Buffer | undefined>;
140
156
  /**
141
157
  * Get the body as stream
158
+ * @returns the result
142
159
  */
143
160
  getRawStream(): Readable;
144
161
  /**
145
162
  * Get HTTP Headers
146
- * @returns
163
+ * @returns the result
147
164
  */
148
165
  getHeaders(): Readonly<IncomingHttpHeaders>;
149
166
  /**
150
167
  * Get header value
151
- * @param name
152
- * @param def
153
- * @returns
168
+ * @param name - the name to use
169
+ * @param def - the default value
170
+ * @returns the list of results
154
171
  */
155
172
  getHeader(name: string, def?: string): string | string[];
156
173
  /**
157
174
  * Return the last header found with that name
175
+ * @param name - the name to use
176
+ * @param def - the default value
177
+ * @returns the result string
158
178
  */
159
179
  getUniqueHeader(name: string, def?: string): string;
160
180
  /**
161
181
  * Used for test
162
- * @param body
182
+ * @param body - the request body
183
+ * @returns this for chaining
163
184
  */
164
185
  setBody(body: Buffer | string | Readable | any): this;
165
186
  /**
166
187
  * Get request path name
167
188
  *
168
189
  * @see https://developer.mozilla.org/en-US/docs/Web/API/URL/pathname
169
- * @returns
190
+ * @returns the result
170
191
  */
171
192
  getPathName(): string;
172
193
  /**
173
194
  * Get search section
174
195
  *
175
196
  * @see https://developer.mozilla.org/en-US/docs/Web/API/URL/search
176
- * @returns
197
+ * @returns the result
177
198
  */
178
199
  getSearch(): string;
179
200
  /**
201
+ * Return the absolute url of the request, or of an application uri
202
+ *
203
+ * An application uri is relative to the prefix, so the prefix is added to it
180
204
  *
181
- * @param uri to return absolute url from
205
+ * @param uri to return absolute url from, the request uri by default
206
+ * @returns the result string
182
207
  */
183
208
  getAbsoluteUrl(uri?: string): string;
184
209
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"httpcontext.d.ts","sourceRoot":"","sources":["../../src/contexts/httpcontext.ts"],"names":[],"mappings":"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"}