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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (756) hide show
  1. package/README.md +252 -0
  2. package/lib/application/application.d.ts +437 -0
  3. package/lib/application/application.d.ts.map +1 -0
  4. package/lib/application/application.js +792 -0
  5. package/lib/application/application.js.map +1 -0
  6. package/lib/application/hooks.d.ts +34 -0
  7. package/lib/application/hooks.d.ts.map +1 -0
  8. package/lib/application/hooks.js +57 -0
  9. package/lib/application/hooks.js.map +1 -0
  10. package/lib/application/iapplication.d.ts +43 -0
  11. package/lib/application/iapplication.d.ts.map +1 -0
  12. package/lib/application/iapplication.js +2 -0
  13. package/lib/application/iapplication.js.map +1 -0
  14. package/lib/application/iconfiguration.d.ts +176 -0
  15. package/lib/application/iconfiguration.d.ts.map +1 -0
  16. package/lib/application/iconfiguration.js +8 -0
  17. package/lib/application/iconfiguration.js.map +1 -0
  18. package/lib/application/runner.d.ts +8 -0
  19. package/lib/application/runner.d.ts.map +1 -0
  20. package/lib/application/runner.js +26 -0
  21. package/lib/application/runner.js.map +1 -0
  22. package/lib/{unpackedapplication.d.ts → application/unpackedapplication.d.ts} +43 -23
  23. package/lib/application/unpackedapplication.d.ts.map +1 -0
  24. package/lib/application/unpackedapplication.js +492 -0
  25. package/lib/application/unpackedapplication.js.map +1 -0
  26. package/lib/bin/cli-phase.d.ts +28 -0
  27. package/lib/bin/cli-phase.d.ts.map +1 -0
  28. package/lib/bin/cli-phase.js +44 -0
  29. package/lib/bin/cli-phase.js.map +1 -0
  30. package/lib/bin/cli.d.ts +161 -0
  31. package/lib/bin/cli.d.ts.map +1 -0
  32. package/lib/bin/cli.js +828 -0
  33. package/lib/bin/cli.js.map +1 -0
  34. package/lib/bin/launcher.d.ts +3 -0
  35. package/lib/bin/launcher.d.ts.map +1 -0
  36. package/lib/bin/launcher.js +50 -0
  37. package/lib/bin/launcher.js.map +1 -0
  38. package/lib/cache/cache.d.ts +33 -0
  39. package/lib/cache/cache.d.ts.map +1 -0
  40. package/lib/cache/cache.js +8 -0
  41. package/lib/cache/cache.js.map +1 -0
  42. package/lib/{services/configuration.d.ts → configurations/configuration.service.d.ts} +58 -58
  43. package/lib/configurations/configuration.service.d.ts.map +1 -0
  44. package/lib/configurations/configuration.service.js +248 -0
  45. package/lib/configurations/configuration.service.js.map +1 -0
  46. package/lib/configurations/fileconfiguration.service.d.ts +30 -0
  47. package/lib/configurations/fileconfiguration.service.d.ts.map +1 -0
  48. package/lib/configurations/fileconfiguration.service.js +65 -0
  49. package/lib/configurations/fileconfiguration.service.js.map +1 -0
  50. package/lib/configurations/kubernetesconfiguration.service.d.ts +43 -0
  51. package/lib/configurations/kubernetesconfiguration.service.d.ts.map +1 -0
  52. package/lib/configurations/kubernetesconfiguration.service.js +83 -0
  53. package/lib/configurations/kubernetesconfiguration.service.js.map +1 -0
  54. package/lib/contexts/execution.d.ts +33 -0
  55. package/lib/contexts/execution.d.ts.map +1 -0
  56. package/lib/contexts/execution.js +73 -0
  57. package/lib/contexts/execution.js.map +1 -0
  58. package/lib/contexts/globalcontext.d.ts +29 -0
  59. package/lib/contexts/globalcontext.d.ts.map +1 -0
  60. package/lib/contexts/globalcontext.js +38 -0
  61. package/lib/contexts/globalcontext.js.map +1 -0
  62. package/lib/{utils → contexts}/httpcontext.d.ts +44 -19
  63. package/lib/contexts/httpcontext.d.ts.map +1 -0
  64. package/lib/{utils → contexts}/httpcontext.js +95 -27
  65. package/lib/contexts/httpcontext.js.map +1 -0
  66. package/lib/contexts/icontext.d.ts +236 -0
  67. package/lib/contexts/icontext.d.ts.map +1 -0
  68. package/lib/contexts/icontext.js +230 -0
  69. package/lib/contexts/icontext.js.map +1 -0
  70. package/lib/contexts/operationcontext.d.ts +179 -0
  71. package/lib/contexts/operationcontext.d.ts.map +1 -0
  72. package/lib/contexts/operationcontext.js +358 -0
  73. package/lib/contexts/operationcontext.js.map +1 -0
  74. package/lib/contexts/simplecontext.d.ts +31 -0
  75. package/lib/contexts/simplecontext.d.ts.map +1 -0
  76. package/lib/contexts/simplecontext.js +45 -0
  77. package/lib/contexts/simplecontext.js.map +1 -0
  78. package/lib/contexts/webcontext.d.ts +218 -0
  79. package/lib/contexts/webcontext.d.ts.map +1 -0
  80. package/lib/contexts/webcontext.js +389 -0
  81. package/lib/contexts/webcontext.js.map +1 -0
  82. package/lib/core/authorizer.d.ts +23 -0
  83. package/lib/core/authorizer.d.ts.map +1 -0
  84. package/lib/core/authorizer.js +17 -0
  85. package/lib/core/authorizer.js.map +1 -0
  86. package/lib/core/core.d.ts +225 -0
  87. package/lib/core/core.d.ts.map +1 -0
  88. package/lib/core/core.js +576 -0
  89. package/lib/core/core.js.map +1 -0
  90. package/lib/core/hooks.d.ts +72 -0
  91. package/lib/core/hooks.d.ts.map +1 -0
  92. package/lib/core/hooks.js +73 -0
  93. package/lib/core/hooks.js.map +1 -0
  94. package/lib/core/icore.d.ts +249 -0
  95. package/lib/core/icore.d.ts.map +1 -0
  96. package/lib/core/icore.js +15 -0
  97. package/lib/core/icore.js.map +1 -0
  98. package/lib/core/instancestorage.d.ts +61 -0
  99. package/lib/core/instancestorage.d.ts.map +1 -0
  100. package/lib/core/instancestorage.js +75 -0
  101. package/lib/core/instancestorage.js.map +1 -0
  102. package/lib/core/operations.d.ts +181 -0
  103. package/lib/core/operations.d.ts.map +1 -0
  104. package/lib/core/operations.js +559 -0
  105. package/lib/core/operations.js.map +1 -0
  106. package/lib/errors/errors.d.ts +126 -0
  107. package/lib/errors/errors.d.ts.map +1 -0
  108. package/lib/errors/errors.js +165 -0
  109. package/lib/errors/errors.js.map +1 -0
  110. package/lib/events/asynceventemitter.d.ts +159 -0
  111. package/lib/events/asynceventemitter.d.ts.map +1 -0
  112. package/lib/events/asynceventemitter.js +152 -0
  113. package/lib/events/asynceventemitter.js.map +1 -0
  114. package/lib/events/events.d.ts +112 -0
  115. package/lib/events/events.d.ts.map +1 -0
  116. package/lib/events/events.js +45 -0
  117. package/lib/events/events.js.map +1 -0
  118. package/lib/index.d.ts +82 -53
  119. package/lib/index.d.ts.map +1 -1
  120. package/lib/index.js +81 -62
  121. package/lib/index.js.map +1 -1
  122. package/lib/loggers/console.service.d.ts +24 -0
  123. package/lib/loggers/console.service.d.ts.map +1 -0
  124. package/lib/loggers/console.service.js +30 -0
  125. package/lib/loggers/console.service.js.map +1 -0
  126. package/lib/loggers/file.service.d.ts +25 -0
  127. package/lib/loggers/file.service.d.ts.map +1 -0
  128. package/lib/loggers/file.service.js +33 -0
  129. package/lib/loggers/file.service.js.map +1 -0
  130. package/lib/loggers/hooks.d.ts +20 -0
  131. package/lib/loggers/hooks.d.ts.map +1 -0
  132. package/lib/loggers/hooks.js +40 -0
  133. package/lib/loggers/hooks.js.map +1 -0
  134. package/lib/loggers/ilogger.d.ts +76 -0
  135. package/lib/loggers/ilogger.d.ts.map +1 -0
  136. package/lib/loggers/ilogger.js +108 -0
  137. package/lib/loggers/ilogger.js.map +1 -0
  138. package/lib/loggers/logger.d.ts +13 -0
  139. package/lib/loggers/logger.d.ts.map +1 -0
  140. package/lib/loggers/logger.js +18 -0
  141. package/lib/loggers/logger.js.map +1 -0
  142. package/lib/loggers/memory.service.d.ts +18 -0
  143. package/lib/loggers/memory.service.d.ts.map +1 -0
  144. package/lib/loggers/memory.service.js +21 -0
  145. package/lib/loggers/memory.service.js.map +1 -0
  146. package/lib/loggers/params.d.ts +47 -0
  147. package/lib/loggers/params.d.ts.map +1 -0
  148. package/lib/loggers/params.js +56 -0
  149. package/lib/loggers/params.js.map +1 -0
  150. package/lib/metrics/metrics.d.ts +25 -0
  151. package/lib/metrics/metrics.d.ts.map +1 -0
  152. package/lib/metrics/metrics.js +51 -0
  153. package/lib/metrics/metrics.js.map +1 -0
  154. package/lib/models/aclmodel.d.ts +20 -76
  155. package/lib/models/aclmodel.d.ts.map +1 -1
  156. package/lib/models/aclmodel.js +27 -203
  157. package/lib/models/aclmodel.js.map +1 -1
  158. package/lib/models/coremodel.model.d.ts +5 -0
  159. package/lib/models/coremodel.model.d.ts.map +1 -0
  160. package/lib/models/coremodel.model.js +5 -0
  161. package/lib/models/coremodel.model.js.map +1 -0
  162. package/lib/models/decorator.d.ts +63 -0
  163. package/lib/models/decorator.d.ts.map +1 -0
  164. package/lib/models/decorator.js +63 -0
  165. package/lib/models/decorator.js.map +1 -0
  166. package/lib/models/deployment.d.ts +1 -1
  167. package/lib/models/deployment.d.ts.map +1 -1
  168. package/lib/models/ident.model.d.ts +89 -0
  169. package/lib/models/ident.model.d.ts.map +1 -0
  170. package/lib/models/ident.model.js +115 -0
  171. package/lib/models/ident.model.js.map +1 -0
  172. package/lib/models/ownermodel.model.d.ts +68 -0
  173. package/lib/models/ownermodel.model.d.ts.map +1 -0
  174. package/lib/models/ownermodel.model.js +112 -0
  175. package/lib/models/ownermodel.model.js.map +1 -0
  176. package/lib/models/registry.model.d.ts +76 -0
  177. package/lib/models/registry.model.d.ts.map +1 -0
  178. package/lib/models/registry.model.js +104 -0
  179. package/lib/models/registry.model.js.map +1 -0
  180. package/lib/models/rolemodel.model.d.ts +28 -0
  181. package/lib/models/rolemodel.model.d.ts.map +1 -0
  182. package/lib/models/{rolemodel.js → rolemodel.model.js} +23 -5
  183. package/lib/models/rolemodel.model.js.map +1 -0
  184. package/lib/models/simpleuser.model.d.ts +78 -0
  185. package/lib/models/simpleuser.model.d.ts.map +1 -0
  186. package/lib/models/simpleuser.model.js +123 -0
  187. package/lib/models/simpleuser.model.js.map +1 -0
  188. package/lib/models/types.d.ts +113 -0
  189. package/lib/models/types.d.ts.map +1 -0
  190. package/lib/models/types.js +2 -0
  191. package/lib/models/types.js.map +1 -0
  192. package/lib/models/user.model.d.ts +103 -0
  193. package/lib/models/user.model.d.ts.map +1 -0
  194. package/lib/models/user.model.js +125 -0
  195. package/lib/models/user.model.js.map +1 -0
  196. package/lib/queues/{memoryqueue.d.ts → memoryqueue.service.d.ts} +26 -13
  197. package/lib/queues/memoryqueue.service.d.ts.map +1 -0
  198. package/lib/queues/{memoryqueue.js → memoryqueue.service.js} +55 -31
  199. package/lib/queues/memoryqueue.service.js.map +1 -0
  200. package/lib/queues/pubsubservice.d.ts +8 -6
  201. package/lib/queues/pubsubservice.d.ts.map +1 -1
  202. package/lib/queues/pubsubservice.js +5 -4
  203. package/lib/queues/pubsubservice.js.map +1 -1
  204. package/lib/queues/queueservice.d.ts +9 -11
  205. package/lib/queues/queueservice.d.ts.map +1 -1
  206. package/lib/queues/queueservice.js +41 -13
  207. package/lib/queues/queueservice.js.map +1 -1
  208. package/lib/rest/hooks.d.ts +8 -0
  209. package/lib/rest/hooks.d.ts.map +1 -0
  210. package/lib/rest/hooks.js +10 -0
  211. package/lib/rest/hooks.js.map +1 -0
  212. package/lib/rest/irest.d.ts +212 -0
  213. package/lib/rest/irest.d.ts.map +1 -0
  214. package/lib/rest/irest.js +39 -0
  215. package/lib/rest/irest.js.map +1 -0
  216. package/lib/rest/originfilter.d.ts +38 -0
  217. package/lib/rest/originfilter.d.ts.map +1 -0
  218. package/lib/rest/originfilter.js +61 -0
  219. package/lib/rest/originfilter.js.map +1 -0
  220. package/lib/rest/restoperationstransport.service.d.ts +193 -0
  221. package/lib/rest/restoperationstransport.service.d.ts.map +1 -0
  222. package/lib/rest/restoperationstransport.service.js +780 -0
  223. package/lib/rest/restoperationstransport.service.js.map +1 -0
  224. package/lib/rest/router.service.d.ts +244 -0
  225. package/lib/rest/router.service.d.ts.map +1 -0
  226. package/lib/rest/router.service.js +843 -0
  227. package/lib/rest/router.service.js.map +1 -0
  228. package/lib/schemas/hooks.d.ts +48 -0
  229. package/lib/schemas/hooks.d.ts.map +1 -0
  230. package/lib/schemas/hooks.js +152 -0
  231. package/lib/schemas/hooks.js.map +1 -0
  232. package/lib/services/audit.model.d.ts +208 -0
  233. package/lib/services/audit.model.d.ts.map +1 -0
  234. package/lib/services/audit.model.js +431 -0
  235. package/lib/services/audit.model.js.map +1 -0
  236. package/lib/services/{authentication.d.ts → authentication.service.d.ts} +140 -59
  237. package/lib/services/authentication.service.d.ts.map +1 -0
  238. package/lib/services/authentication.service.js +932 -0
  239. package/lib/services/authentication.service.js.map +1 -0
  240. package/lib/services/binary.service.d.ts +808 -0
  241. package/lib/services/binary.service.d.ts.map +1 -0
  242. package/lib/services/binary.service.js +1365 -0
  243. package/lib/services/binary.service.js.map +1 -0
  244. package/lib/services/cloudbinary.d.ts +17 -12
  245. package/lib/services/cloudbinary.d.ts.map +1 -1
  246. package/lib/services/cloudbinary.js +23 -17
  247. package/lib/services/cloudbinary.js.map +1 -1
  248. package/lib/services/command.d.ts +118 -0
  249. package/lib/services/command.d.ts.map +1 -0
  250. package/lib/services/command.js +97 -0
  251. package/lib/services/command.js.map +1 -0
  252. package/lib/services/cron.service.d.ts +142 -0
  253. package/lib/services/cron.service.d.ts.map +1 -0
  254. package/lib/services/cron.service.js +291 -0
  255. package/lib/services/cron.service.js.map +1 -0
  256. package/lib/services/{cryptoservice.d.ts → cryptoservice.service.d.ts} +75 -141
  257. package/lib/services/cryptoservice.service.d.ts.map +1 -0
  258. package/lib/services/cryptoservice.service.js +527 -0
  259. package/lib/services/cryptoservice.service.js.map +1 -0
  260. package/lib/services/debugmailer.service.d.ts +49 -0
  261. package/lib/services/debugmailer.service.d.ts.map +1 -0
  262. package/lib/services/{debugmailer.js → debugmailer.service.js} +25 -10
  263. package/lib/services/debugmailer.service.js.map +1 -0
  264. package/lib/services/domainservice.service.d.ts +203 -0
  265. package/lib/services/domainservice.service.d.ts.map +1 -0
  266. package/lib/services/domainservice.service.js +600 -0
  267. package/lib/services/domainservice.service.js.map +1 -0
  268. package/lib/services/httpserver.service.d.ts +248 -0
  269. package/lib/services/httpserver.service.d.ts.map +1 -0
  270. package/lib/services/httpserver.service.js +673 -0
  271. package/lib/services/httpserver.service.js.map +1 -0
  272. package/lib/services/iauthentication.d.ts +9 -0
  273. package/lib/services/iauthentication.d.ts.map +1 -0
  274. package/lib/services/iauthentication.js +2 -0
  275. package/lib/services/iauthentication.js.map +1 -0
  276. package/lib/services/icryptoservice.d.ts +127 -0
  277. package/lib/services/icryptoservice.d.ts.map +1 -0
  278. package/lib/services/icryptoservice.js +68 -0
  279. package/lib/services/icryptoservice.js.map +1 -0
  280. package/lib/services/imailer.d.ts +17 -0
  281. package/lib/services/imailer.d.ts.map +1 -0
  282. package/lib/services/imailer.js +2 -0
  283. package/lib/services/imailer.js.map +1 -0
  284. package/lib/services/iservice.d.ts +104 -0
  285. package/lib/services/iservice.d.ts.map +1 -0
  286. package/lib/services/iservice.js +63 -0
  287. package/lib/services/iservice.js.map +1 -0
  288. package/lib/services/mailer.service.d.ts +220 -0
  289. package/lib/services/mailer.service.d.ts.map +1 -0
  290. package/lib/services/mailer.service.js +251 -0
  291. package/lib/services/mailer.service.js.map +1 -0
  292. package/lib/services/{notificationservice.d.ts → notificationservice.service.d.ts} +10 -11
  293. package/lib/services/notificationservice.service.d.ts.map +1 -0
  294. package/lib/services/{notificationservice.js → notificationservice.service.js} +24 -12
  295. package/lib/services/notificationservice.service.js.map +1 -0
  296. package/lib/services/oauth.d.ts +52 -28
  297. package/lib/services/oauth.d.ts.map +1 -1
  298. package/lib/services/oauth.js +365 -254
  299. package/lib/services/oauth.js.map +1 -1
  300. package/lib/services/operationstransport.d.ts +65 -0
  301. package/lib/services/operationstransport.d.ts.map +1 -0
  302. package/lib/services/operationstransport.js +103 -0
  303. package/lib/services/operationstransport.js.map +1 -0
  304. package/lib/services/{prometheus.d.ts → prometheus.service.d.ts} +13 -12
  305. package/lib/services/prometheus.service.d.ts.map +1 -0
  306. package/lib/services/prometheus.service.js +203 -0
  307. package/lib/services/prometheus.service.js.map +1 -0
  308. package/lib/services/{resource.d.ts → resource.service.d.ts} +34 -15
  309. package/lib/services/resource.service.d.ts.map +1 -0
  310. package/lib/services/resource.service.js +301 -0
  311. package/lib/services/resource.service.js.map +1 -0
  312. package/lib/services/service.d.ts +87 -188
  313. package/lib/services/service.d.ts.map +1 -1
  314. package/lib/services/service.js +407 -422
  315. package/lib/services/service.js.map +1 -1
  316. package/lib/services/servicecommands.d.ts +99 -0
  317. package/lib/services/servicecommands.d.ts.map +1 -0
  318. package/lib/services/servicecommands.js +165 -0
  319. package/lib/services/servicecommands.js.map +1 -0
  320. package/lib/services/serviceparameters.d.ts +33 -0
  321. package/lib/services/serviceparameters.d.ts.map +1 -0
  322. package/lib/services/serviceparameters.js +79 -0
  323. package/lib/services/serviceparameters.js.map +1 -0
  324. package/lib/{utils → session}/cookie.d.ts +32 -19
  325. package/lib/session/cookie.d.ts.map +1 -0
  326. package/lib/{utils → session}/cookie.js +76 -23
  327. package/lib/session/cookie.js.map +1 -0
  328. package/lib/session/manager.model.d.ts +71 -0
  329. package/lib/session/manager.model.d.ts.map +1 -0
  330. package/lib/session/manager.model.js +155 -0
  331. package/lib/session/manager.model.js.map +1 -0
  332. package/lib/session/session.d.ts +57 -0
  333. package/lib/session/session.d.ts.map +1 -0
  334. package/lib/session/session.js +126 -0
  335. package/lib/session/session.js.map +1 -0
  336. package/lib/stores/istore.d.ts +99 -0
  337. package/lib/stores/istore.d.ts.map +1 -0
  338. package/lib/stores/istore.js +26 -0
  339. package/lib/stores/istore.js.map +1 -0
  340. package/lib/stores/memory.service.d.ts +114 -0
  341. package/lib/stores/memory.service.d.ts.map +1 -0
  342. package/lib/stores/memory.service.js +343 -0
  343. package/lib/stores/memory.service.js.map +1 -0
  344. package/lib/stores/store.d.ts +126 -626
  345. package/lib/stores/store.d.ts.map +1 -1
  346. package/lib/stores/store.js +257 -1117
  347. package/lib/stores/store.js.map +1 -1
  348. package/lib/templates/templates.d.ts +39 -0
  349. package/lib/templates/templates.d.ts.map +1 -0
  350. package/lib/templates/templates.js +92 -0
  351. package/lib/templates/templates.js.map +1 -0
  352. package/lib/test/application.d.ts +174 -0
  353. package/lib/test/application.d.ts.map +1 -0
  354. package/lib/test/application.js +288 -0
  355. package/lib/test/application.js.map +1 -0
  356. package/lib/test/asyncstorage.d.ts +16 -0
  357. package/lib/test/asyncstorage.d.ts.map +1 -0
  358. package/lib/test/asyncstorage.js +32 -0
  359. package/lib/test/asyncstorage.js.map +1 -0
  360. package/lib/test/core.d.ts +63 -0
  361. package/lib/test/core.d.ts.map +1 -0
  362. package/lib/test/core.js +190 -0
  363. package/lib/test/core.js.map +1 -0
  364. package/lib/test/index.d.ts +7 -0
  365. package/lib/test/index.d.ts.map +1 -0
  366. package/lib/test/index.js +8 -0
  367. package/lib/test/index.js.map +1 -0
  368. package/lib/test/internal.d.ts +34 -0
  369. package/lib/test/internal.d.ts.map +1 -0
  370. package/lib/test/internal.js +156 -0
  371. package/lib/test/internal.js.map +1 -0
  372. package/lib/test/objects.d.ts +318 -0
  373. package/lib/test/objects.d.ts.map +1 -0
  374. package/lib/test/objects.js +443 -0
  375. package/lib/test/objects.js.map +1 -0
  376. package/lib/utils/abstractdeployer.d.ts +4 -2
  377. package/lib/utils/abstractdeployer.d.ts.map +1 -1
  378. package/lib/utils/abstractdeployer.js +3 -0
  379. package/lib/utils/abstractdeployer.js.map +1 -1
  380. package/package.json +85 -60
  381. package/test/cachedapp/webda.config.json +1 -5
  382. package/test/config-cached.json +1 -5
  383. package/test/config.json +0 -9
  384. package/test/my-cnf.json +9 -0
  385. package/webda.module.json +3463 -2482
  386. package/lib/application.d.ts +0 -888
  387. package/lib/application.d.ts.map +0 -1
  388. package/lib/application.js +0 -768
  389. package/lib/application.js.map +0 -1
  390. package/lib/application.spec.d.ts +0 -2
  391. package/lib/application.spec.d.ts.map +0 -1
  392. package/lib/application.spec.js +0 -248
  393. package/lib/application.spec.js.map +0 -1
  394. package/lib/core.d.ts +0 -743
  395. package/lib/core.d.ts.map +0 -1
  396. package/lib/core.js +0 -1334
  397. package/lib/core.js.map +0 -1
  398. package/lib/core.spec.d.ts +0 -2
  399. package/lib/core.spec.d.ts.map +0 -1
  400. package/lib/core.spec.js +0 -790
  401. package/lib/core.spec.js.map +0 -1
  402. package/lib/errors.d.ts +0 -64
  403. package/lib/errors.d.ts.map +0 -1
  404. package/lib/errors.js +0 -97
  405. package/lib/errors.js.map +0 -1
  406. package/lib/errors.spec.d.ts +0 -2
  407. package/lib/errors.spec.d.ts.map +0 -1
  408. package/lib/errors.spec.js +0 -33
  409. package/lib/errors.spec.js.map +0 -1
  410. package/lib/models/aclmodel.spec.d.ts +0 -2
  411. package/lib/models/aclmodel.spec.d.ts.map +0 -1
  412. package/lib/models/aclmodel.spec.js +0 -187
  413. package/lib/models/aclmodel.spec.js.map +0 -1
  414. package/lib/models/coremodel.d.ts +0 -896
  415. package/lib/models/coremodel.d.ts.map +0 -1
  416. package/lib/models/coremodel.js +0 -1214
  417. package/lib/models/coremodel.js.map +0 -1
  418. package/lib/models/coremodel.spec.d.ts +0 -2
  419. package/lib/models/coremodel.spec.d.ts.map +0 -1
  420. package/lib/models/coremodel.spec.js +0 -464
  421. package/lib/models/coremodel.spec.js.map +0 -1
  422. package/lib/models/ident.d.ts +0 -68
  423. package/lib/models/ident.d.ts.map +0 -1
  424. package/lib/models/ident.js +0 -26
  425. package/lib/models/ident.js.map +0 -1
  426. package/lib/models/ident.spec.d.ts +0 -2
  427. package/lib/models/ident.spec.d.ts.map +0 -1
  428. package/lib/models/ident.spec.js +0 -24
  429. package/lib/models/ident.spec.js.map +0 -1
  430. package/lib/models/ownermodel.d.ts +0 -51
  431. package/lib/models/ownermodel.d.ts.map +0 -1
  432. package/lib/models/ownermodel.js +0 -65
  433. package/lib/models/ownermodel.js.map +0 -1
  434. package/lib/models/ownermodel.spec.d.ts +0 -2
  435. package/lib/models/ownermodel.spec.d.ts.map +0 -1
  436. package/lib/models/ownermodel.spec.js +0 -215
  437. package/lib/models/ownermodel.spec.js.map +0 -1
  438. package/lib/models/relations.d.ts +0 -182
  439. package/lib/models/relations.d.ts.map +0 -1
  440. package/lib/models/relations.js +0 -157
  441. package/lib/models/relations.js.map +0 -1
  442. package/lib/models/relations.spec.d.ts +0 -14
  443. package/lib/models/relations.spec.d.ts.map +0 -1
  444. package/lib/models/relations.spec.js +0 -217
  445. package/lib/models/relations.spec.js.map +0 -1
  446. package/lib/models/rolemodel.d.ts +0 -11
  447. package/lib/models/rolemodel.d.ts.map +0 -1
  448. package/lib/models/rolemodel.js.map +0 -1
  449. package/lib/models/rolemodel.spec.d.ts +0 -2
  450. package/lib/models/rolemodel.spec.d.ts.map +0 -1
  451. package/lib/models/rolemodel.spec.js +0 -90
  452. package/lib/models/rolemodel.spec.js.map +0 -1
  453. package/lib/models/simpleuser.d.ts +0 -47
  454. package/lib/models/simpleuser.d.ts.map +0 -1
  455. package/lib/models/simpleuser.js +0 -84
  456. package/lib/models/simpleuser.js.map +0 -1
  457. package/lib/models/test.d.ts +0 -11
  458. package/lib/models/test.d.ts.map +0 -1
  459. package/lib/models/test.js +0 -7
  460. package/lib/models/test.js.map +0 -1
  461. package/lib/models/user.d.ts +0 -67
  462. package/lib/models/user.d.ts.map +0 -1
  463. package/lib/models/user.js +0 -86
  464. package/lib/models/user.js.map +0 -1
  465. package/lib/models/user.spec.d.ts +0 -2
  466. package/lib/models/user.spec.d.ts.map +0 -1
  467. package/lib/models/user.spec.js +0 -89
  468. package/lib/models/user.spec.js.map +0 -1
  469. package/lib/queues/filequeue.d.ts +0 -59
  470. package/lib/queues/filequeue.d.ts.map +0 -1
  471. package/lib/queues/filequeue.js +0 -131
  472. package/lib/queues/filequeue.js.map +0 -1
  473. package/lib/queues/filequeue.spec.d.ts +0 -2
  474. package/lib/queues/filequeue.spec.d.ts.map +0 -1
  475. package/lib/queues/filequeue.spec.js +0 -84
  476. package/lib/queues/filequeue.spec.js.map +0 -1
  477. package/lib/queues/memoryqueue.d.ts.map +0 -1
  478. package/lib/queues/memoryqueue.js.map +0 -1
  479. package/lib/queues/memoryqueue.spec.d.ts +0 -2
  480. package/lib/queues/memoryqueue.spec.d.ts.map +0 -1
  481. package/lib/queues/memoryqueue.spec.js +0 -203
  482. package/lib/queues/memoryqueue.spec.js.map +0 -1
  483. package/lib/queues/queue.spec.d.ts +0 -6
  484. package/lib/queues/queue.spec.d.ts.map +0 -1
  485. package/lib/queues/queue.spec.js +0 -55
  486. package/lib/queues/queue.spec.js.map +0 -1
  487. package/lib/rest/restdomainservice.d.ts +0 -63
  488. package/lib/rest/restdomainservice.d.ts.map +0 -1
  489. package/lib/rest/restdomainservice.js +0 -687
  490. package/lib/rest/restdomainservice.js.map +0 -1
  491. package/lib/rest/restdomainservice.spec.d.ts +0 -2
  492. package/lib/rest/restdomainservice.spec.d.ts.map +0 -1
  493. package/lib/rest/restdomainservice.spec.js +0 -124
  494. package/lib/rest/restdomainservice.spec.js.map +0 -1
  495. package/lib/rest/router.d.ts +0 -174
  496. package/lib/rest/router.d.ts.map +0 -1
  497. package/lib/rest/router.js +0 -429
  498. package/lib/rest/router.js.map +0 -1
  499. package/lib/rest/router.spec.d.ts +0 -2
  500. package/lib/rest/router.spec.d.ts.map +0 -1
  501. package/lib/rest/router.spec.js +0 -255
  502. package/lib/rest/router.spec.js.map +0 -1
  503. package/lib/services/asyncevents.d.ts +0 -152
  504. package/lib/services/asyncevents.d.ts.map +0 -1
  505. package/lib/services/asyncevents.js +0 -217
  506. package/lib/services/asyncevents.js.map +0 -1
  507. package/lib/services/asyncevents.spec.d.ts +0 -2
  508. package/lib/services/asyncevents.spec.d.ts.map +0 -1
  509. package/lib/services/asyncevents.spec.js +0 -118
  510. package/lib/services/asyncevents.spec.js.map +0 -1
  511. package/lib/services/authentication.d.ts.map +0 -1
  512. package/lib/services/authentication.js +0 -773
  513. package/lib/services/authentication.js.map +0 -1
  514. package/lib/services/authentication.spec.d.ts +0 -2
  515. package/lib/services/authentication.spec.d.ts.map +0 -1
  516. package/lib/services/authentication.spec.js +0 -458
  517. package/lib/services/authentication.spec.js.map +0 -1
  518. package/lib/services/binary.d.ts +0 -477
  519. package/lib/services/binary.d.ts.map +0 -1
  520. package/lib/services/binary.js +0 -617
  521. package/lib/services/binary.js.map +0 -1
  522. package/lib/services/binary.spec.d.ts +0 -41
  523. package/lib/services/binary.spec.d.ts.map +0 -1
  524. package/lib/services/binary.spec.js +0 -151
  525. package/lib/services/binary.spec.js.map +0 -1
  526. package/lib/services/cloudbinary.spec.d.ts +0 -6
  527. package/lib/services/cloudbinary.spec.d.ts.map +0 -1
  528. package/lib/services/cloudbinary.spec.js +0 -66
  529. package/lib/services/cloudbinary.spec.js.map +0 -1
  530. package/lib/services/configuration.d.ts.map +0 -1
  531. package/lib/services/configuration.js +0 -193
  532. package/lib/services/configuration.js.map +0 -1
  533. package/lib/services/configuration.spec.d.ts +0 -2
  534. package/lib/services/configuration.spec.d.ts.map +0 -1
  535. package/lib/services/configuration.spec.js +0 -130
  536. package/lib/services/configuration.spec.js.map +0 -1
  537. package/lib/services/cron.d.ts +0 -74
  538. package/lib/services/cron.d.ts.map +0 -1
  539. package/lib/services/cron.js +0 -141
  540. package/lib/services/cron.js.map +0 -1
  541. package/lib/services/cron.spec.d.ts +0 -2
  542. package/lib/services/cron.spec.d.ts.map +0 -1
  543. package/lib/services/cron.spec.js +0 -76
  544. package/lib/services/cron.spec.js.map +0 -1
  545. package/lib/services/cryptoservice.d.ts.map +0 -1
  546. package/lib/services/cryptoservice.js +0 -433
  547. package/lib/services/cryptoservice.js.map +0 -1
  548. package/lib/services/cryptoservice.spec.d.ts +0 -2
  549. package/lib/services/cryptoservice.spec.d.ts.map +0 -1
  550. package/lib/services/cryptoservice.spec.js +0 -177
  551. package/lib/services/cryptoservice.spec.js.map +0 -1
  552. package/lib/services/debugmailer.d.ts +0 -36
  553. package/lib/services/debugmailer.d.ts.map +0 -1
  554. package/lib/services/debugmailer.js.map +0 -1
  555. package/lib/services/debugmailer.spec.d.ts +0 -2
  556. package/lib/services/debugmailer.spec.d.ts.map +0 -1
  557. package/lib/services/debugmailer.spec.js +0 -32
  558. package/lib/services/debugmailer.spec.js.map +0 -1
  559. package/lib/services/domainservice.d.ts +0 -272
  560. package/lib/services/domainservice.d.ts.map +0 -1
  561. package/lib/services/domainservice.js +0 -651
  562. package/lib/services/domainservice.js.map +0 -1
  563. package/lib/services/domainservice.spec.d.ts +0 -2
  564. package/lib/services/domainservice.spec.d.ts.map +0 -1
  565. package/lib/services/domainservice.spec.js +0 -592
  566. package/lib/services/domainservice.spec.js.map +0 -1
  567. package/lib/services/filebinary.d.ts +0 -136
  568. package/lib/services/filebinary.d.ts.map +0 -1
  569. package/lib/services/filebinary.js +0 -373
  570. package/lib/services/filebinary.js.map +0 -1
  571. package/lib/services/filebinary.spec.d.ts +0 -25
  572. package/lib/services/filebinary.spec.d.ts.map +0 -1
  573. package/lib/services/filebinary.spec.js +0 -428
  574. package/lib/services/filebinary.spec.js.map +0 -1
  575. package/lib/services/fileconfiguration.d.ts +0 -23
  576. package/lib/services/fileconfiguration.d.ts.map +0 -1
  577. package/lib/services/fileconfiguration.js +0 -48
  578. package/lib/services/fileconfiguration.js.map +0 -1
  579. package/lib/services/fileconfiguration.spec.d.ts +0 -2
  580. package/lib/services/fileconfiguration.spec.d.ts.map +0 -1
  581. package/lib/services/fileconfiguration.spec.js +0 -215
  582. package/lib/services/fileconfiguration.spec.js.map +0 -1
  583. package/lib/services/invitationservice.d.ts +0 -223
  584. package/lib/services/invitationservice.d.ts.map +0 -1
  585. package/lib/services/invitationservice.js +0 -529
  586. package/lib/services/invitationservice.js.map +0 -1
  587. package/lib/services/invitationservice.spec.d.ts +0 -2
  588. package/lib/services/invitationservice.spec.d.ts.map +0 -1
  589. package/lib/services/invitationservice.spec.js +0 -567
  590. package/lib/services/invitationservice.spec.js.map +0 -1
  591. package/lib/services/kubernetesconfiguration.d.ts +0 -27
  592. package/lib/services/kubernetesconfiguration.d.ts.map +0 -1
  593. package/lib/services/kubernetesconfiguration.js +0 -52
  594. package/lib/services/kubernetesconfiguration.js.map +0 -1
  595. package/lib/services/kubernetesconfiguration.spec.d.ts +0 -2
  596. package/lib/services/kubernetesconfiguration.spec.d.ts.map +0 -1
  597. package/lib/services/kubernetesconfiguration.spec.js +0 -206
  598. package/lib/services/kubernetesconfiguration.spec.js.map +0 -1
  599. package/lib/services/mailer.d.ts +0 -166
  600. package/lib/services/mailer.d.ts.map +0 -1
  601. package/lib/services/mailer.js +0 -176
  602. package/lib/services/mailer.js.map +0 -1
  603. package/lib/services/mailer.spec.d.ts +0 -2
  604. package/lib/services/mailer.spec.d.ts.map +0 -1
  605. package/lib/services/mailer.spec.js +0 -158
  606. package/lib/services/mailer.spec.js.map +0 -1
  607. package/lib/services/notificationservice.d.ts.map +0 -1
  608. package/lib/services/notificationservice.js.map +0 -1
  609. package/lib/services/notificationservice.spec.d.ts +0 -2
  610. package/lib/services/notificationservice.spec.d.ts.map +0 -1
  611. package/lib/services/notificationservice.spec.js +0 -83
  612. package/lib/services/notificationservice.spec.js.map +0 -1
  613. package/lib/services/oauth.spec.d.ts +0 -2
  614. package/lib/services/oauth.spec.d.ts.map +0 -1
  615. package/lib/services/oauth.spec.js +0 -208
  616. package/lib/services/oauth.spec.js.map +0 -1
  617. package/lib/services/prometheus.d.ts.map +0 -1
  618. package/lib/services/prometheus.js +0 -160
  619. package/lib/services/prometheus.js.map +0 -1
  620. package/lib/services/prometheus.spec.d.ts +0 -2
  621. package/lib/services/prometheus.spec.d.ts.map +0 -1
  622. package/lib/services/prometheus.spec.js +0 -76
  623. package/lib/services/prometheus.spec.js.map +0 -1
  624. package/lib/services/resource.d.ts.map +0 -1
  625. package/lib/services/resource.js +0 -170
  626. package/lib/services/resource.js.map +0 -1
  627. package/lib/services/resource.spec.d.ts +0 -2
  628. package/lib/services/resource.spec.d.ts.map +0 -1
  629. package/lib/services/resource.spec.js +0 -140
  630. package/lib/services/resource.spec.js.map +0 -1
  631. package/lib/services/service.spec.d.ts +0 -2
  632. package/lib/services/service.spec.d.ts.map +0 -1
  633. package/lib/services/service.spec.js +0 -286
  634. package/lib/services/service.spec.js.map +0 -1
  635. package/lib/stores/aggregator.d.ts +0 -48
  636. package/lib/stores/aggregator.d.ts.map +0 -1
  637. package/lib/stores/aggregator.js +0 -80
  638. package/lib/stores/aggregator.js.map +0 -1
  639. package/lib/stores/file.d.ts +0 -108
  640. package/lib/stores/file.d.ts.map +0 -1
  641. package/lib/stores/file.js +0 -188
  642. package/lib/stores/file.js.map +0 -1
  643. package/lib/stores/file.spec.d.ts +0 -13
  644. package/lib/stores/file.spec.d.ts.map +0 -1
  645. package/lib/stores/file.spec.js +0 -138
  646. package/lib/stores/file.spec.js.map +0 -1
  647. package/lib/stores/mapper.d.ts +0 -150
  648. package/lib/stores/mapper.d.ts.map +0 -1
  649. package/lib/stores/mapper.js +0 -293
  650. package/lib/stores/mapper.js.map +0 -1
  651. package/lib/stores/mapper.spec.d.ts +0 -2
  652. package/lib/stores/mapper.spec.d.ts.map +0 -1
  653. package/lib/stores/mapper.spec.js +0 -167
  654. package/lib/stores/mapper.spec.js.map +0 -1
  655. package/lib/stores/memory.d.ts +0 -152
  656. package/lib/stores/memory.d.ts.map +0 -1
  657. package/lib/stores/memory.js +0 -371
  658. package/lib/stores/memory.js.map +0 -1
  659. package/lib/stores/memory.spec.d.ts +0 -14
  660. package/lib/stores/memory.spec.d.ts.map +0 -1
  661. package/lib/stores/memory.spec.js +0 -263
  662. package/lib/stores/memory.spec.js.map +0 -1
  663. package/lib/stores/modelmapper.d.ts +0 -62
  664. package/lib/stores/modelmapper.d.ts.map +0 -1
  665. package/lib/stores/modelmapper.js +0 -197
  666. package/lib/stores/modelmapper.js.map +0 -1
  667. package/lib/stores/store.spec.d.ts +0 -57
  668. package/lib/stores/store.spec.d.ts.map +0 -1
  669. package/lib/stores/store.spec.js +0 -737
  670. package/lib/stores/store.spec.js.map +0 -1
  671. package/lib/test.d.ts +0 -265
  672. package/lib/test.d.ts.map +0 -1
  673. package/lib/test.js +0 -622
  674. package/lib/test.js.map +0 -1
  675. package/lib/unpackedapplication.d.ts.map +0 -1
  676. package/lib/unpackedapplication.js +0 -350
  677. package/lib/unpackedapplication.js.map +0 -1
  678. package/lib/utils/abstractdeployer.spec.d.ts +0 -2
  679. package/lib/utils/abstractdeployer.spec.d.ts.map +0 -1
  680. package/lib/utils/abstractdeployer.spec.js +0 -21
  681. package/lib/utils/abstractdeployer.spec.js.map +0 -1
  682. package/lib/utils/case.d.ts +0 -8
  683. package/lib/utils/case.d.ts.map +0 -1
  684. package/lib/utils/case.js +0 -43
  685. package/lib/utils/case.js.map +0 -1
  686. package/lib/utils/case.spec.d.ts +0 -2
  687. package/lib/utils/case.spec.d.ts.map +0 -1
  688. package/lib/utils/case.spec.js +0 -50
  689. package/lib/utils/case.spec.js.map +0 -1
  690. package/lib/utils/context.d.ts +0 -482
  691. package/lib/utils/context.d.ts.map +0 -1
  692. package/lib/utils/context.js +0 -739
  693. package/lib/utils/context.js.map +0 -1
  694. package/lib/utils/context.spec.d.ts +0 -10
  695. package/lib/utils/context.spec.d.ts.map +0 -1
  696. package/lib/utils/context.spec.js +0 -383
  697. package/lib/utils/context.spec.js.map +0 -1
  698. package/lib/utils/cookie.d.ts.map +0 -1
  699. package/lib/utils/cookie.js.map +0 -1
  700. package/lib/utils/cookie.spec.d.ts +0 -2
  701. package/lib/utils/cookie.spec.d.ts.map +0 -1
  702. package/lib/utils/cookie.spec.js +0 -88
  703. package/lib/utils/cookie.spec.js.map +0 -1
  704. package/lib/utils/esm.d.ts +0 -14
  705. package/lib/utils/esm.d.ts.map +0 -1
  706. package/lib/utils/esm.js +0 -19
  707. package/lib/utils/esm.js.map +0 -1
  708. package/lib/utils/httpcontext.d.ts.map +0 -1
  709. package/lib/utils/httpcontext.js.map +0 -1
  710. package/lib/utils/httpcontext.spec.d.ts +0 -5
  711. package/lib/utils/httpcontext.spec.d.ts.map +0 -1
  712. package/lib/utils/httpcontext.spec.js +0 -77
  713. package/lib/utils/httpcontext.spec.js.map +0 -1
  714. package/lib/utils/logger.d.ts +0 -92
  715. package/lib/utils/logger.d.ts.map +0 -1
  716. package/lib/utils/logger.js +0 -121
  717. package/lib/utils/logger.js.map +0 -1
  718. package/lib/utils/logger.spec.d.ts +0 -2
  719. package/lib/utils/logger.spec.d.ts.map +0 -1
  720. package/lib/utils/logger.spec.js +0 -48
  721. package/lib/utils/logger.spec.js.map +0 -1
  722. package/lib/utils/serializers.d.ts +0 -162
  723. package/lib/utils/serializers.d.ts.map +0 -1
  724. package/lib/utils/serializers.js +0 -420
  725. package/lib/utils/serializers.js.map +0 -1
  726. package/lib/utils/serializers.spec.d.ts +0 -2
  727. package/lib/utils/serializers.spec.d.ts.map +0 -1
  728. package/lib/utils/serializers.spec.js +0 -311
  729. package/lib/utils/serializers.spec.js.map +0 -1
  730. package/lib/utils/session.d.ts +0 -123
  731. package/lib/utils/session.d.ts.map +0 -1
  732. package/lib/utils/session.js +0 -156
  733. package/lib/utils/session.js.map +0 -1
  734. package/lib/utils/session.spec.d.ts +0 -2
  735. package/lib/utils/session.spec.d.ts.map +0 -1
  736. package/lib/utils/session.spec.js +0 -81
  737. package/lib/utils/session.spec.js.map +0 -1
  738. package/lib/utils/throttler.d.ts +0 -99
  739. package/lib/utils/throttler.d.ts.map +0 -1
  740. package/lib/utils/throttler.js +0 -160
  741. package/lib/utils/throttler.js.map +0 -1
  742. package/lib/utils/throttler.spec.d.ts +0 -2
  743. package/lib/utils/throttler.spec.d.ts.map +0 -1
  744. package/lib/utils/throttler.spec.js +0 -53
  745. package/lib/utils/throttler.spec.js.map +0 -1
  746. package/lib/utils/waiter.d.ts +0 -94
  747. package/lib/utils/waiter.d.ts.map +0 -1
  748. package/lib/utils/waiter.js +0 -148
  749. package/lib/utils/waiter.js.map +0 -1
  750. package/lib/utils/waiter.spec.d.ts +0 -2
  751. package/lib/utils/waiter.spec.d.ts.map +0 -1
  752. package/lib/utils/waiter.spec.js +0 -98
  753. package/lib/utils/waiter.spec.js.map +0 -1
  754. package/test/jsonutils/mdocs.yaml +0 -56
  755. package/test/jsonutils/test.json +0 -3
  756. 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":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAClG,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD;;;GAGG;AACH,MAAM,OAAO,iCAAkC,SAAQ,8BAA8B;IACnF;;;;OAIG;IACH,IAAI,CAAC,MAAW;QACd,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,IACE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM;YAClD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC,MAAM;YACrD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,EACpD,CAAC;YACD,MAAM,IAAI,UAAU,CAAC,SAAS,CAC5B,+BAA+B,EAC/B,yEAAyE,MAAM,CAAC,OAAO,EAAE,CAC1F,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AACD;;;;;GAKG;AACH,MAAM,OAAO,8BAGX,SAAQ,oBAAuB;IAC/B,WAAW,GAA2B,EAAE,CAAC;IAEzC;;;;OAIG;IACH,WAAW,CAAC,EAAU;QACpB,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,cAAc,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,UAAU,CAAC,SAAS,CAC5B,mCAAmC,EACnC,8CAA8C,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CACrE,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,EAAU,EAAE,QAAoB;QACtD,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,UAAU,CAAC,SAAS,CAC5B,mCAAmC,EACnC,8CAA8C,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CACrE,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;QAChE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE;YAC9E,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAClF,QAAQ,EAAE,CAAC;QACb,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,EAAU;QAC/B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,EAAE;aACb,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;aACjC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;aACrE,GAAG,EAAE,CAAC;QACT,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,UAAU,CAAC,SAAS,CAC5B,mCAAmC,EACnC,8CAA8C,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CACrE,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAChE,CAAC;CACF"}
@@ -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 this.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,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;AACzD,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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"}