@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 @@
1
+ {"version":3,"file":"ident.model.js","sourceRoot":"","sources":["../../src/models/ident.model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ import { type ModelClass, ModelLink, type PrimaryKeyType, UuidModel } from "@webda/models";
2
+ import { User } from "./user.model.js";
3
+ import { IOperationContext } from "../contexts/icontext.js";
4
+ /**
5
+ * Abstract class to define an object with an owner
6
+ *
7
+ * The owner is the user that created the object
8
+ * The owner can be changed by the owner
9
+ */
10
+ export declare abstract class AbstractOwnerModel<T extends User> extends UuidModel {
11
+ /**
12
+ * Default owner of the object
13
+ */
14
+ get _user(): ModelLink<T>;
15
+ set _user(value: string | T | PrimaryKeyType<T> | ModelLink<T>);
16
+ /**
17
+ * Define if the object is publicly readable
18
+ * @default false
19
+ */
20
+ public?: boolean;
21
+ /**
22
+ *
23
+ * @returns
24
+ */
25
+ abstract getOwnerModel(): ModelClass<T>;
26
+ /**
27
+ * Set object owner
28
+ * @param uuid - the unique identifier
29
+ */
30
+ setOwner(uuid: PrimaryKeyType<T>): void;
31
+ /**
32
+ * Return the owner of the object
33
+ *
34
+ * Only the owner can do update to the object
35
+ * @returns the result
36
+ */
37
+ getOwner(): ModelLink<T>;
38
+ /**
39
+ * Check if the current user can perform the given action based on ownership
40
+ * @param context - the execution context
41
+ * @param action - the action to check
42
+ * @returns the result
43
+ */
44
+ canAct(context: IOperationContext, action: string): Promise<string | boolean>;
45
+ /**
46
+ * Return a query to filter OwnerModel
47
+ *
48
+ * @param context - the execution context
49
+ * @returns the result
50
+ */
51
+ static getPermissionQuery(context?: IOperationContext): null | {
52
+ partial: boolean;
53
+ query: string;
54
+ };
55
+ /** Generated by @webda/content-mapper: include values held in WEBDA_STORAGE. */
56
+ toJSON(): any;
57
+ }
58
+ /**
59
+ * @WebdaModel
60
+ */
61
+ export declare class OwnerModel extends AbstractOwnerModel<User> {
62
+ /**
63
+ * Get the User model class used for ownership
64
+ * @returns the result
65
+ */
66
+ getOwnerModel(): ModelClass<User>;
67
+ }
68
+ //# sourceMappingURL=ownermodel.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ownermodel.model.d.ts","sourceRoot":"","sources":["../../src/models/ownermodel.model.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,UAAU,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3F,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D;;;;;GAKG;AACH,8BAAsB,kBAAkB,CAAC,CAAC,SAAS,IAAI,CAAE,SAAQ,SAAS;IACxE;;OAEG;IACH,IAAI,KAAK,IAAI,SAAS,CAAC,CAAC,CAAC,CAExB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAU7D;IACD;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,QAAQ,CAAC,aAAa,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAExC;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,IAAI,CAGtC;IAED;;;;;OAKG;IACH,QAAQ,IAAI,SAAS,CAAC,CAAC,CAAC,CAEvB;IAED;;;;;OAKG;IACG,MAAM,CAAC,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,CAalF;IAED;;;;;OAKG;IACH,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAQjG;IAED,gFAAgF;IAChF,MAAM,IAAI,GAAG,CAQZ;CACF;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,kBAAkB,CAAC,IAAI,CAAC;IACtD;;;OAGG;IACH,aAAa,IAAI,UAAU,CAAC,IAAI,CAAC,CAEhC;CACF"}
@@ -0,0 +1,113 @@
1
+ import { WEBDA_STORAGE } from "@webda/models";
2
+ //import { UuidModel } from "./uuid.js";
3
+ import { ModelLink, UuidModel } from "@webda/models";
4
+ import { User } from "./user.model.js";
5
+ /**
6
+ * Abstract class to define an object with an owner
7
+ *
8
+ * The owner is the user that created the object
9
+ * The owner can be changed by the owner
10
+ */
11
+ export class AbstractOwnerModel extends UuidModel {
12
+ /**
13
+ * Default owner of the object
14
+ */
15
+ get _user() {
16
+ return this[WEBDA_STORAGE]["_user"];
17
+ }
18
+ set _user(value) {
19
+ if (value instanceof ModelLink) {
20
+ this[WEBDA_STORAGE]["_user"] = value;
21
+ }
22
+ else if (value != null) {
23
+ const inst = this[WEBDA_STORAGE]["_user"] || new ModelLink(User);
24
+ inst.set(value);
25
+ this[WEBDA_STORAGE]["_user"] = inst;
26
+ }
27
+ else {
28
+ this[WEBDA_STORAGE]["_user"] = value;
29
+ }
30
+ }
31
+ /**
32
+ * Define if the object is publicly readable
33
+ * @default false
34
+ */
35
+ public;
36
+ /**
37
+ * Set object owner
38
+ * @param uuid - the unique identifier
39
+ */
40
+ setOwner(uuid) {
41
+ this._user ??= new ModelLink(this.getOwnerModel()).set(uuid);
42
+ this._user.set(uuid);
43
+ }
44
+ /**
45
+ * Return the owner of the object
46
+ *
47
+ * Only the owner can do update to the object
48
+ * @returns the result
49
+ */
50
+ getOwner() {
51
+ return this._user;
52
+ }
53
+ /**
54
+ * Check if the current user can perform the given action based on ownership
55
+ * @param context - the execution context
56
+ * @param action - the action to check
57
+ * @returns the result
58
+ */
59
+ async canAct(context, action) {
60
+ // Object is public
61
+ if (this.public && (action === "get" || action === "get_binary")) {
62
+ return true;
63
+ }
64
+ else if (!context.getCurrentUserId()) {
65
+ return "You need to be logged in to access this object";
66
+ }
67
+ else if (!this.getOwner() && action !== "create") {
68
+ return "Object does not have an owner";
69
+ }
70
+ if (action === "create") {
71
+ //this.setOwner(Uuid.parse(ctx.getCurrentUserId(), this.getOwnerModel()));
72
+ }
73
+ return context.getCurrentUserId() === this.getOwner()?.toString();
74
+ }
75
+ /**
76
+ * Return a query to filter OwnerModel
77
+ *
78
+ * @param context - the execution context
79
+ * @returns the result
80
+ */
81
+ static getPermissionQuery(context) {
82
+ if (!context) {
83
+ return null;
84
+ }
85
+ return {
86
+ query: `_user = '${context.getCurrentUserId()}' OR public = TRUE`,
87
+ partial: false
88
+ };
89
+ }
90
+ /** Generated by @webda/content-mapper: include values held in WEBDA_STORAGE. */
91
+ toJSON() {
92
+ const parent = super.toJSON ? super.toJSON() : {};
93
+ const result = parent === this ? {} : parent;
94
+ for (const key of Object.keys(this)) {
95
+ result[key] = this[key];
96
+ }
97
+ Object.assign(result, this[WEBDA_STORAGE]);
98
+ return result;
99
+ }
100
+ }
101
+ /**
102
+ * @WebdaModel
103
+ */
104
+ export class OwnerModel extends AbstractOwnerModel {
105
+ /**
106
+ * Get the User model class used for ownership
107
+ * @returns the result
108
+ */
109
+ getOwnerModel() {
110
+ return User;
111
+ }
112
+ }
113
+ //# sourceMappingURL=ownermodel.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ownermodel.model.js","sourceRoot":"","sources":["../../src/models/ownermodel.model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ import { WEBDA_STORAGE } from "@webda/models";
2
+ import * as WebdaError from "../errors/errors.js";
3
+ import type { User } from "./user.model.js";
4
+ /** Rule a candidate password must satisfy */
5
+ export interface PasswordPolicy {
6
+ /**
7
+ * @param password - candidate password
8
+ * @param user - user setting it, when known
9
+ * @returns true when acceptable
10
+ */
11
+ validate(password: string, user?: User): Promise<boolean>;
12
+ }
13
+ /**
14
+ * Replace the active password policy (undefined restores the default `.{8,}`)
15
+ * @param policy - the policy
16
+ */
17
+ export declare function registerPasswordPolicy(policy: PasswordPolicy | undefined): void;
18
+ /**
19
+ * Get the active password policy
20
+ * @returns the policy
21
+ */
22
+ export declare function usePasswordPolicy(): PasswordPolicy;
23
+ /** Raised when a password does not satisfy the active policy (400 PASSWORD_POLICY) */
24
+ export declare class PasswordPolicyError extends WebdaError.HttpError {
25
+ /** @param message - error message */
26
+ constructor(message?: string);
27
+ }
28
+ /**
29
+ * Non-enumerable flag set on a User whose data carried a v3 top-level `__password` mapped onto `password` at
30
+ * hydration: its stored record still has the v3 layout until it is saved again (`webda auth migrate`)
31
+ */
32
+ export declare const V3_PASSWORD_MAPPED: unique symbol;
33
+ /**
34
+ * Password credential of a user: bcrypt hash and change timestamp
35
+ * @WebdaBehavior Webda/Password
36
+ */
37
+ export declare class Password {
38
+ [WEBDA_STORAGE]: Record<string, any>;
39
+ /** bcrypt hash, never output */
40
+ __hash?: string;
41
+ /** Last change, ms since epoch */
42
+ changedAt?: number;
43
+ /**
44
+ * Owning user (set by behavior hydration)
45
+ * @returns the user or undefined when detached
46
+ */
47
+ protected getUser(): User | undefined;
48
+ /**
49
+ * @returns true when a password is set
50
+ */
51
+ hasPassword(): boolean;
52
+ /**
53
+ * Compare a candidate with the stored hash
54
+ * @param plain - candidate password
55
+ * @returns true when it matches
56
+ */
57
+ verify(plain: string): Promise<boolean>;
58
+ /**
59
+ * Validate against the policy and store a new hash (does not save the user)
60
+ * @param plain - new password
61
+ */
62
+ set(plain: string): Promise<void>;
63
+ /**
64
+ * Store an existing hash (migration)
65
+ * @param hash - bcrypt hash
66
+ * @param changedAt - change timestamp
67
+ */
68
+ setHash(hash: string, changedAt?: number): void;
69
+ /**
70
+ * Change the password of the owning user
71
+ * @param current - current password
72
+ * @param next - new password
73
+ */
74
+ change(current: string, next: string): Promise<void>;
75
+ get parent(): any;
76
+ toJSON(): Record<string, any>;
77
+ }
78
+ //# sourceMappingURL=password.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password.model.d.ts","sourceRoot":"","sources":["../../src/models/password.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAC;AAGlD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,6CAA6C;AAC7C,MAAM,WAAW,cAAc;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3D;AAKD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,IAAI,CAE/E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,cAAc,CAElD;AAED,sFAAsF;AACtF,qBAAa,mBAAoB,SAAQ,UAAU,CAAC,SAAS;IAC3D,qCAAqC;IACrC,YAAY,OAAO,GAAE,MAA6C,EAGjE;CACF;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,eAA6B,CAAC;AAE7D;;;GAGG;AACH,qBAAa,QAAQ;IACnB,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAC1C,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,OAAO,IAAI,IAAI,GAAG,SAAS,CAEpC;IAED;;OAEG;IACH,WAAW,IAAI,OAAO,CAErB;IAED;;;;OAIG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAU5C;IAED;;;OAGG;IACG,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMtC;IAED;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,MAAmB,GAAG,IAAI,CAG1D;IAED;;;;OAIG;IAEG,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAQzD;IACD,IAAI,MAAM,QAAgD;IAC1D,MAAM,wBAcL;CACF"}
@@ -0,0 +1,171 @@
1
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
2
+ var useValue = arguments.length > 2;
3
+ for (var i = 0; i < initializers.length; i++) {
4
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
5
+ }
6
+ return useValue ? value : void 0;
7
+ };
8
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
9
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
10
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
11
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
12
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
13
+ var _, done = false;
14
+ for (var i = decorators.length - 1; i >= 0; i--) {
15
+ var context = {};
16
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
17
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
18
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
19
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
20
+ if (kind === "accessor") {
21
+ if (result === void 0) continue;
22
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
23
+ if (_ = accept(result.get)) descriptor.get = _;
24
+ if (_ = accept(result.set)) descriptor.set = _;
25
+ if (_ = accept(result.init)) initializers.unshift(_);
26
+ }
27
+ else if (_ = accept(result)) {
28
+ if (kind === "field") initializers.unshift(_);
29
+ else descriptor[key] = _;
30
+ }
31
+ }
32
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
33
+ done = true;
34
+ };
35
+ import { WEBDA_STORAGE } from "@webda/models";
36
+ import bcrypt from "bcryptjs";
37
+ import * as WebdaError from "../errors/errors.js";
38
+ import { Action } from "./decorator.js";
39
+ import { useDynamicService } from "../core/hooks.js";
40
+ const DEFAULT_POLICY = { validate: async (p) => /.{8,}/.test(p) };
41
+ let currentPolicy = DEFAULT_POLICY;
42
+ /**
43
+ * Replace the active password policy (undefined restores the default `.{8,}`)
44
+ * @param policy - the policy
45
+ */
46
+ export function registerPasswordPolicy(policy) {
47
+ currentPolicy = policy ?? DEFAULT_POLICY;
48
+ }
49
+ /**
50
+ * Get the active password policy
51
+ * @returns the policy
52
+ */
53
+ export function usePasswordPolicy() {
54
+ return currentPolicy;
55
+ }
56
+ /** Raised when a password does not satisfy the active policy (400 PASSWORD_POLICY) */
57
+ export class PasswordPolicyError extends WebdaError.HttpError {
58
+ /** @param message - error message */
59
+ constructor(message = "Password does not match the policy") {
60
+ super(message, 400);
61
+ this.code = "PASSWORD_POLICY";
62
+ }
63
+ }
64
+ /**
65
+ * Non-enumerable flag set on a User whose data carried a v3 top-level `__password` mapped onto `password` at
66
+ * hydration: its stored record still has the v3 layout until it is saved again (`webda auth migrate`)
67
+ */
68
+ export const V3_PASSWORD_MAPPED = Symbol("v3PasswordMapped");
69
+ /**
70
+ * Password credential of a user: bcrypt hash and change timestamp
71
+ * @WebdaBehavior Webda/Password
72
+ */
73
+ let Password = (() => {
74
+ let _instanceExtraInitializers = [];
75
+ let _change_decorators;
76
+ return class Password {
77
+ static {
78
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
79
+ _change_decorators = [Action({ rest: { method: "PUT" } })];
80
+ __esDecorate(this, null, _change_decorators, { kind: "method", name: "change", static: false, private: false, access: { has: obj => "change" in obj, get: obj => obj.change }, metadata: _metadata }, null, _instanceExtraInitializers);
81
+ if (_metadata) Object.defineProperty(this, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
82
+ }
83
+ [WEBDA_STORAGE] = (__runInitializers(this, _instanceExtraInitializers), {});
84
+ /** bcrypt hash, never output */
85
+ __hash;
86
+ /** Last change, ms since epoch */
87
+ changedAt;
88
+ /**
89
+ * Owning user (set by behavior hydration)
90
+ * @returns the user or undefined when detached
91
+ */
92
+ getUser() {
93
+ return this.parent?.instance;
94
+ }
95
+ /**
96
+ * @returns true when a password is set
97
+ */
98
+ hasPassword() {
99
+ return typeof this.__hash === "string" && this.__hash.length > 0;
100
+ }
101
+ /**
102
+ * Compare a candidate with the stored hash
103
+ * @param plain - candidate password
104
+ * @returns true when it matches
105
+ */
106
+ async verify(plain) {
107
+ if (!this.hasPassword() || typeof plain !== "string") {
108
+ return false;
109
+ }
110
+ try {
111
+ return await bcrypt.compare(plain, this.__hash);
112
+ }
113
+ catch {
114
+ // Malformed stored hash
115
+ return false;
116
+ }
117
+ }
118
+ /**
119
+ * Validate against the policy and store a new hash (does not save the user)
120
+ * @param plain - new password
121
+ */
122
+ async set(plain) {
123
+ if (typeof plain !== "string" || !(await usePasswordPolicy().validate(plain, this.getUser()))) {
124
+ throw new PasswordPolicyError();
125
+ }
126
+ this.__hash = await bcrypt.hash(plain, 10);
127
+ this.changedAt = Date.now();
128
+ }
129
+ /**
130
+ * Store an existing hash (migration)
131
+ * @param hash - bcrypt hash
132
+ * @param changedAt - change timestamp
133
+ */
134
+ setHash(hash, changedAt = Date.now()) {
135
+ this.__hash = hash;
136
+ this.changedAt = changedAt;
137
+ }
138
+ /**
139
+ * Change the password of the owning user
140
+ * @param current - current password
141
+ * @param next - new password
142
+ */
143
+ async change(current, next) {
144
+ if (!(await this.verify(current))) {
145
+ throw new WebdaError.Forbidden("Invalid password");
146
+ }
147
+ await this.set(next);
148
+ const user = this.getUser();
149
+ await user?.save();
150
+ await useDynamicService("TokenService")?.revokeUser?.(user?.getUUID());
151
+ }
152
+ get parent() { return this[WEBDA_STORAGE]["__parent__"]; }
153
+ toJSON() {
154
+ const result = {};
155
+ for (const key of Object.keys(this)) {
156
+ result[key] = this[key];
157
+ }
158
+ const storage = this[WEBDA_STORAGE];
159
+ if (storage) {
160
+ for (const key of Object.keys(storage)) {
161
+ if (key !== "__parent__") {
162
+ result[key] = storage[key];
163
+ }
164
+ }
165
+ }
166
+ return result;
167
+ }
168
+ };
169
+ })();
170
+ export { Password };
171
+ //# sourceMappingURL=password.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password.model.js","sourceRoot":"","sources":["../../src/models/password.model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { Model, WEBDA_PRIMARY_KEY } from "@webda/models";
2
+ import type { MfaState } from "../session/session.js";
3
+ /**
4
+ * Stored refresh token (only its SHA-256 hash)
5
+ * @WebdaModel
6
+ */
7
+ export declare class RefreshToken extends Model {
8
+ [WEBDA_PRIMARY_KEY]: readonly ["hash"];
9
+ /** SHA-256 hex of the token */
10
+ hash: string;
11
+ /** Owner */
12
+ userId: string;
13
+ /** Ident used to log in */
14
+ identId: string;
15
+ /** Provider used */
16
+ provider?: string;
17
+ /** Authentication methods */
18
+ amr: string[];
19
+ /** MFA state of the session that issued the token */
20
+ mfa: MfaState;
21
+ /** Rotation family */
22
+ family: string;
23
+ /** Expiry, ms since epoch */
24
+ expiresAt: number;
25
+ /** Set once exchanged */
26
+ rotatedAt?: number;
27
+ /** Set when revoked */
28
+ revokedAt?: number;
29
+ }
30
+ //# sourceMappingURL=refreshtoken.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refreshtoken.model.d.ts","sourceRoot":"","sources":["../../src/models/refreshtoken.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;;GAGG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,CAAC,iBAAiB,CAAC,YAAI,MAAM,EAAW;IACxC,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,GAAG,EAAE,MAAM,EAAE,CAAM;IACnB,qDAAqD;IACrD,GAAG,EAAE,QAAQ,CAAU;IACvB,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,29 @@
1
+ import { Model, WEBDA_PRIMARY_KEY } from "@webda/models";
2
+ /**
3
+ * Stored refresh token (only its SHA-256 hash)
4
+ * @WebdaModel
5
+ */
6
+ export class RefreshToken extends Model {
7
+ [WEBDA_PRIMARY_KEY] = ["hash"];
8
+ /** SHA-256 hex of the token */
9
+ hash;
10
+ /** Owner */
11
+ userId;
12
+ /** Ident used to log in */
13
+ identId;
14
+ /** Provider used */
15
+ provider;
16
+ /** Authentication methods */
17
+ amr = [];
18
+ /** MFA state of the session that issued the token */
19
+ mfa = "none";
20
+ /** Rotation family */
21
+ family;
22
+ /** Expiry, ms since epoch */
23
+ expiresAt;
24
+ /** Set once exchanged */
25
+ rotatedAt;
26
+ /** Set when revoked */
27
+ revokedAt;
28
+ }
29
+ //# sourceMappingURL=refreshtoken.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refreshtoken.model.js","sourceRoot":"","sources":["../../src/models/refreshtoken.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGzD;;;GAGG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IACrC,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAU,CAAC;IACxC,+BAA+B;IAC/B,IAAI,CAAS;IACb,YAAY;IACZ,MAAM,CAAS;IACf,2BAA2B;IAC3B,OAAO,CAAS;IAChB,oBAAoB;IACpB,QAAQ,CAAU;IAClB,6BAA6B;IAC7B,GAAG,GAAa,EAAE,CAAC;IACnB,qDAAqD;IACrD,GAAG,GAAa,MAAM,CAAC;IACvB,sBAAsB;IACtB,MAAM,CAAS;IACf,6BAA6B;IAC7B,SAAS,CAAS;IAClB,yBAAyB;IACzB,SAAS,CAAU;IACnB,uBAAuB;IACvB,SAAS,CAAU;CACpB"}
@@ -0,0 +1,76 @@
1
+ import { type Settable, UuidModel } from "@webda/models";
2
+ /**
3
+ * Specific type for registry
4
+ */
5
+ export declare class RegistryEntry extends UuidModel {
6
+ /** Create a new RegistryEntry
7
+ * @param data - initial data
8
+ */
9
+ constructor(data?: Settable<RegistryEntry>);
10
+ /**
11
+ * Registry entries are not serializable to DTO
12
+ * @returns the result
13
+ */
14
+ toDTO(): undefined;
15
+ /**
16
+ * No-op DTO deserialization for registry entries
17
+ * @returns this for chaining
18
+ */
19
+ fromDTO(): this;
20
+ /**
21
+ * Remove an attribute from the registry
22
+ * @param uuid - the unique identifier
23
+ * @param attribute - the attribute name
24
+ * @returns the result
25
+ */
26
+ static removeAttribute(uuid: string, attribute: string): Promise<void>;
27
+ /**
28
+ * Set an attribute from the registry
29
+ * @param uuid - the unique identifier
30
+ * @param attribute - the attribute name
31
+ * @param value - the value to set
32
+ * @returns the result
33
+ */
34
+ static setAttribute(uuid: string, attribute: string, value: any): Promise<void>;
35
+ /**
36
+ * Helper for upsert
37
+ * @param uuid - the unique identifier
38
+ * @param data - the data to process
39
+ * @returns the result
40
+ */
41
+ static get<K = any>(uuid: string, data?: K): Promise<RegistryEntry & K>;
42
+ /**
43
+ * Helper for upsert
44
+ * @param uuid - the unique identifier
45
+ * @param data - the data to process
46
+ * @returns the result
47
+ */
48
+ static put<K = any>(uuid: string, data: K): Promise<K & RegistryEntry>;
49
+ /**
50
+ * Delete a registry entry by UUID
51
+ * @param uuid - the unique identifier
52
+ * @returns the result
53
+ */
54
+ static delete(uuid: string): Promise<void>;
55
+ /**
56
+ * Check if a registry entry exists
57
+ * @param uuid - the unique identifier
58
+ * @returns the result
59
+ */
60
+ static exists(uuid: string): Promise<boolean>;
61
+ /**
62
+ * Perform a conditional patch
63
+ * @param uuid - the unique identifier
64
+ * @param patch - the patch to apply
65
+ * @param conditionField - the condition field name
66
+ * @param conditionValue - the condition value
67
+ * @returns the result
68
+ */
69
+ static patch(uuid: string, patch: any, conditionField: string, conditionValue: any): Promise<void>;
70
+ }
71
+ /**
72
+ * Use the registry
73
+ * @returns the result
74
+ */
75
+ export declare function useRegistry(): typeof RegistryEntry;
76
+ //# sourceMappingURL=registry.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.model.d.ts","sourceRoot":"","sources":["../../src/models/registry.model.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,QAAQ,EACb,SAAS,EACV,MAAM,eAAe,CAAC;AAGvB;;GAEG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C;;OAEG;IACH,YAAY,IAAI,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,EAGzC;IAED;;;OAGG;IACH,KAAK,IAAI,SAAS,CAEjB;IAED;;;OAGG;IACH,OAAO,IAAI,IAAI,CAEd;IAED;;;;;OAKG;IACH,OAAa,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,iBAG3D;IAED;;;;;;OAMG;IACH,OAAa,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,iBAGpE;IAED;;;;;OAKG;IACH,OAAa,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC,CAI5E;IAED;;;;;OAKG;IACH,OAAa,GAAG,CAAC,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,aAAa,CAAC,CAE3E;IAED;;;;OAIG;IACH,OAAa,MAAM,CAAC,IAAI,EAAE,MAAM,iBAE/B;IAED;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,oBAEzB;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,iBAGjF;CACF;AAED;;;GAGG;AACH,wBAAgB,WAAW,yBAE1B"}