@kalisio/kdk 2.5.1 → 2.5.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 (255) hide show
  1. package/core/api/hooks/hooks.authorisations.js +1 -2
  2. package/core/api/services/authorisations/authorisations.service.js +1 -3
  3. package/core/api/services/index.js +5 -1
  4. package/core/api/services/users/users.hooks.js +4 -3
  5. package/core/client/components/input/KShapePicker.vue +4 -4
  6. package/core/client/utils/index.js +1 -0
  7. package/coverage/core/api/application.js.html +344 -344
  8. package/coverage/core/api/authentication.js.html +79 -79
  9. package/coverage/core/api/db.js.html +167 -167
  10. package/coverage/core/api/hooks/hooks.authentication.js.html +12 -12
  11. package/coverage/core/api/hooks/hooks.authorisations.js.html +154 -157
  12. package/coverage/core/api/hooks/hooks.logger.js.html +18 -18
  13. package/coverage/core/api/hooks/hooks.model.js.html +275 -275
  14. package/coverage/core/api/hooks/hooks.push.js.html +34 -34
  15. package/coverage/core/api/hooks/hooks.query.js.html +89 -89
  16. package/coverage/core/api/hooks/hooks.schemas.js.html +13 -13
  17. package/coverage/core/api/hooks/hooks.service.js.html +28 -28
  18. package/coverage/core/api/hooks/hooks.storage.js.html +7 -7
  19. package/coverage/core/api/hooks/hooks.users.js.html +50 -50
  20. package/coverage/core/api/hooks/index.html +51 -51
  21. package/coverage/core/api/hooks/index.js.html +11 -11
  22. package/coverage/core/api/index.html +42 -42
  23. package/coverage/core/api/index.js.html +22 -22
  24. package/coverage/core/api/marshall.js.html +127 -127
  25. package/coverage/core/api/models/index.html +1 -1
  26. package/coverage/core/api/models/messages.model.mongodb.js.html +1 -1
  27. package/coverage/core/api/models/users.model.mongodb.js.html +11 -11
  28. package/coverage/core/api/services/account/account.hooks.js.html +42 -42
  29. package/coverage/core/api/services/account/account.service.js.html +34 -34
  30. package/coverage/core/api/services/account/index.html +1 -1
  31. package/coverage/core/api/services/authorisations/authorisations.hooks.js.html +34 -34
  32. package/coverage/core/api/services/authorisations/authorisations.service.js.html +87 -93
  33. package/coverage/core/api/services/authorisations/index.html +19 -19
  34. package/coverage/core/api/services/databases/databases.hooks.js.html +1 -1
  35. package/coverage/core/api/services/databases/databases.service.js.html +1 -1
  36. package/coverage/core/api/services/databases/index.html +1 -1
  37. package/coverage/core/api/services/import-export/import-export.hooks.js.html +1 -1
  38. package/coverage/core/api/services/import-export/import-export.service.js.html +1 -1
  39. package/coverage/core/api/services/import-export/index.html +1 -1
  40. package/coverage/core/api/services/index.html +15 -15
  41. package/coverage/core/api/services/index.js.html +97 -85
  42. package/coverage/core/api/services/mailer/index.html +1 -1
  43. package/coverage/core/api/services/mailer/mailer.hooks.js.html +1 -1
  44. package/coverage/core/api/services/mailer/mailer.service.js.html +1 -1
  45. package/coverage/core/api/services/messages/index.html +1 -1
  46. package/coverage/core/api/services/messages/messages.hooks.js.html +1 -1
  47. package/coverage/core/api/services/push/index.html +1 -1
  48. package/coverage/core/api/services/push/push.hooks.js.html +1 -1
  49. package/coverage/core/api/services/push/push.service.js.html +1 -1
  50. package/coverage/core/api/services/storage/index.html +1 -1
  51. package/coverage/core/api/services/storage/storage.hooks.js.html +36 -36
  52. package/coverage/core/api/services/storage/storage.service.js.html +30 -30
  53. package/coverage/core/api/services/users/index.html +7 -7
  54. package/coverage/core/api/services/users/users.hooks.js.html +83 -80
  55. package/coverage/core/api/services/users/users.service.js.html +4 -4
  56. package/coverage/core/common/errors.js.html +2 -2
  57. package/coverage/core/common/index.html +30 -30
  58. package/coverage/core/common/index.js.html +11 -11
  59. package/coverage/core/common/permissions.js.html +187 -187
  60. package/coverage/core/common/schema.js.html +26 -26
  61. package/coverage/core/common/utils.js.html +61 -61
  62. package/coverage/core/common/utils.offline.js.html +6 -6
  63. package/coverage/index.html +173 -173
  64. package/coverage/lcov-report/core/api/application.js.html +344 -344
  65. package/coverage/lcov-report/core/api/authentication.js.html +79 -79
  66. package/coverage/lcov-report/core/api/db.js.html +167 -167
  67. package/coverage/lcov-report/core/api/hooks/hooks.authentication.js.html +12 -12
  68. package/coverage/lcov-report/core/api/hooks/hooks.authorisations.js.html +154 -157
  69. package/coverage/lcov-report/core/api/hooks/hooks.logger.js.html +18 -18
  70. package/coverage/lcov-report/core/api/hooks/hooks.model.js.html +275 -275
  71. package/coverage/lcov-report/core/api/hooks/hooks.push.js.html +34 -34
  72. package/coverage/lcov-report/core/api/hooks/hooks.query.js.html +89 -89
  73. package/coverage/lcov-report/core/api/hooks/hooks.schemas.js.html +13 -13
  74. package/coverage/lcov-report/core/api/hooks/hooks.service.js.html +28 -28
  75. package/coverage/lcov-report/core/api/hooks/hooks.storage.js.html +7 -7
  76. package/coverage/lcov-report/core/api/hooks/hooks.users.js.html +50 -50
  77. package/coverage/lcov-report/core/api/hooks/index.html +51 -51
  78. package/coverage/lcov-report/core/api/hooks/index.js.html +11 -11
  79. package/coverage/lcov-report/core/api/index.html +42 -42
  80. package/coverage/lcov-report/core/api/index.js.html +22 -22
  81. package/coverage/lcov-report/core/api/marshall.js.html +127 -127
  82. package/coverage/lcov-report/core/api/models/index.html +1 -1
  83. package/coverage/lcov-report/core/api/models/messages.model.mongodb.js.html +1 -1
  84. package/coverage/lcov-report/core/api/models/users.model.mongodb.js.html +11 -11
  85. package/coverage/lcov-report/core/api/services/account/account.hooks.js.html +42 -42
  86. package/coverage/lcov-report/core/api/services/account/account.service.js.html +34 -34
  87. package/coverage/lcov-report/core/api/services/account/index.html +1 -1
  88. package/coverage/lcov-report/core/api/services/authorisations/authorisations.hooks.js.html +34 -34
  89. package/coverage/lcov-report/core/api/services/authorisations/authorisations.service.js.html +87 -93
  90. package/coverage/lcov-report/core/api/services/authorisations/index.html +19 -19
  91. package/coverage/lcov-report/core/api/services/databases/databases.hooks.js.html +1 -1
  92. package/coverage/lcov-report/core/api/services/databases/databases.service.js.html +1 -1
  93. package/coverage/lcov-report/core/api/services/databases/index.html +1 -1
  94. package/coverage/lcov-report/core/api/services/import-export/import-export.hooks.js.html +1 -1
  95. package/coverage/lcov-report/core/api/services/import-export/import-export.service.js.html +1 -1
  96. package/coverage/lcov-report/core/api/services/import-export/index.html +1 -1
  97. package/coverage/lcov-report/core/api/services/index.html +15 -15
  98. package/coverage/lcov-report/core/api/services/index.js.html +97 -85
  99. package/coverage/lcov-report/core/api/services/mailer/index.html +1 -1
  100. package/coverage/lcov-report/core/api/services/mailer/mailer.hooks.js.html +1 -1
  101. package/coverage/lcov-report/core/api/services/mailer/mailer.service.js.html +1 -1
  102. package/coverage/lcov-report/core/api/services/messages/index.html +1 -1
  103. package/coverage/lcov-report/core/api/services/messages/messages.hooks.js.html +1 -1
  104. package/coverage/lcov-report/core/api/services/push/index.html +1 -1
  105. package/coverage/lcov-report/core/api/services/push/push.hooks.js.html +1 -1
  106. package/coverage/lcov-report/core/api/services/push/push.service.js.html +1 -1
  107. package/coverage/lcov-report/core/api/services/storage/index.html +1 -1
  108. package/coverage/lcov-report/core/api/services/storage/storage.hooks.js.html +36 -36
  109. package/coverage/lcov-report/core/api/services/storage/storage.service.js.html +30 -30
  110. package/coverage/lcov-report/core/api/services/users/index.html +7 -7
  111. package/coverage/lcov-report/core/api/services/users/users.hooks.js.html +83 -80
  112. package/coverage/lcov-report/core/api/services/users/users.service.js.html +4 -4
  113. package/coverage/lcov-report/core/common/errors.js.html +2 -2
  114. package/coverage/lcov-report/core/common/index.html +30 -30
  115. package/coverage/lcov-report/core/common/index.js.html +11 -11
  116. package/coverage/lcov-report/core/common/permissions.js.html +187 -187
  117. package/coverage/lcov-report/core/common/schema.js.html +26 -26
  118. package/coverage/lcov-report/core/common/utils.js.html +61 -61
  119. package/coverage/lcov-report/core/common/utils.offline.js.html +6 -6
  120. package/coverage/lcov-report/index.html +173 -173
  121. package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +316 -316
  122. package/coverage/lcov-report/map/api/hooks/hooks.features.js.html +218 -218
  123. package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +798 -789
  124. package/coverage/lcov-report/map/api/hooks/index.html +54 -54
  125. package/coverage/lcov-report/map/api/hooks/index.js.html +16 -16
  126. package/coverage/lcov-report/map/api/index.html +32 -32
  127. package/coverage/lcov-report/map/api/index.js.html +46 -46
  128. package/coverage/lcov-report/map/api/marshall.js.html +72 -72
  129. package/coverage/lcov-report/map/api/models/alerts.model.mongodb.js.html +24 -24
  130. package/coverage/lcov-report/map/api/models/catalog.model.mongodb.js.html +44 -44
  131. package/coverage/lcov-report/map/api/models/features.model.mongodb.js.html +80 -80
  132. package/coverage/lcov-report/map/api/models/index.html +65 -65
  133. package/coverage/lcov-report/map/api/models/projects.model.mongodb.js.html +26 -26
  134. package/coverage/lcov-report/map/api/models/styles.model.mongodb.js.html +28 -28
  135. package/coverage/lcov-report/map/api/services/alerts/alerts.hooks.js.html +136 -136
  136. package/coverage/lcov-report/map/api/services/alerts/alerts.service.js.html +343 -343
  137. package/coverage/lcov-report/map/api/services/alerts/index.html +32 -32
  138. package/coverage/lcov-report/map/api/services/catalog/catalog.hooks.js.html +172 -172
  139. package/coverage/lcov-report/map/api/services/catalog/index.html +21 -21
  140. package/coverage/lcov-report/map/api/services/daptiles/daptiles.service.js.html +1 -1
  141. package/coverage/lcov-report/map/api/services/daptiles/index.html +1 -1
  142. package/coverage/lcov-report/map/api/services/features/features.hooks.js.html +160 -160
  143. package/coverage/lcov-report/map/api/services/features/features.service.js.html +117 -117
  144. package/coverage/lcov-report/map/api/services/features/index.html +31 -31
  145. package/coverage/lcov-report/map/api/services/index.html +21 -21
  146. package/coverage/lcov-report/map/api/services/index.js.html +334 -334
  147. package/coverage/lcov-report/map/api/services/projects/index.html +21 -21
  148. package/coverage/lcov-report/map/api/services/projects/projects.hooks.js.html +237 -237
  149. package/coverage/lcov-report/map/api/services/styles/index.html +21 -21
  150. package/coverage/lcov-report/map/api/services/styles/styles.hooks.js.html +84 -84
  151. package/coverage/lcov-report/map/common/dynamic-grid-source.js.html +68 -68
  152. package/coverage/lcov-report/map/common/errors.js.html +16 -16
  153. package/coverage/lcov-report/map/common/geotiff-grid-source.js.html +267 -267
  154. package/coverage/lcov-report/map/common/grid.js.html +554 -554
  155. package/coverage/lcov-report/map/common/index.html +159 -159
  156. package/coverage/lcov-report/map/common/index.js.html +68 -68
  157. package/coverage/lcov-report/map/common/meteo-model-grid-source.js.html +73 -73
  158. package/coverage/lcov-report/map/common/moment-utils.js.html +18 -18
  159. package/coverage/lcov-report/map/common/opendap-grid-source.js.html +484 -484
  160. package/coverage/lcov-report/map/common/opendap-utils.js.html +353 -353
  161. package/coverage/lcov-report/map/common/permissions.js.html +40 -40
  162. package/coverage/lcov-report/map/common/time-based-grid-source.js.html +59 -59
  163. package/coverage/lcov-report/map/common/tms-utils.js.html +1 -1
  164. package/coverage/lcov-report/map/common/wcs-grid-source.js.html +190 -190
  165. package/coverage/lcov-report/map/common/wcs-utils.js.html +338 -338
  166. package/coverage/lcov-report/map/common/weacast-grid-source.js.html +345 -345
  167. package/coverage/lcov-report/map/common/wfs-utils.js.html +1 -1
  168. package/coverage/lcov-report/map/common/wms-utils.js.html +1 -1
  169. package/coverage/lcov-report/map/common/wmts-utils.js.html +1 -1
  170. package/coverage/lcov.info +6880 -5908
  171. package/coverage/map/api/hooks/hooks.catalog.js.html +316 -316
  172. package/coverage/map/api/hooks/hooks.features.js.html +218 -218
  173. package/coverage/map/api/hooks/hooks.query.js.html +798 -789
  174. package/coverage/map/api/hooks/index.html +54 -54
  175. package/coverage/map/api/hooks/index.js.html +16 -16
  176. package/coverage/map/api/index.html +32 -32
  177. package/coverage/map/api/index.js.html +46 -46
  178. package/coverage/map/api/marshall.js.html +72 -72
  179. package/coverage/map/api/models/alerts.model.mongodb.js.html +24 -24
  180. package/coverage/map/api/models/catalog.model.mongodb.js.html +44 -44
  181. package/coverage/map/api/models/features.model.mongodb.js.html +80 -80
  182. package/coverage/map/api/models/index.html +65 -65
  183. package/coverage/map/api/models/projects.model.mongodb.js.html +26 -26
  184. package/coverage/map/api/models/styles.model.mongodb.js.html +28 -28
  185. package/coverage/map/api/services/alerts/alerts.hooks.js.html +136 -136
  186. package/coverage/map/api/services/alerts/alerts.service.js.html +343 -343
  187. package/coverage/map/api/services/alerts/index.html +32 -32
  188. package/coverage/map/api/services/catalog/catalog.hooks.js.html +172 -172
  189. package/coverage/map/api/services/catalog/index.html +21 -21
  190. package/coverage/map/api/services/daptiles/daptiles.service.js.html +1 -1
  191. package/coverage/map/api/services/daptiles/index.html +1 -1
  192. package/coverage/map/api/services/features/features.hooks.js.html +160 -160
  193. package/coverage/map/api/services/features/features.service.js.html +117 -117
  194. package/coverage/map/api/services/features/index.html +31 -31
  195. package/coverage/map/api/services/index.html +21 -21
  196. package/coverage/map/api/services/index.js.html +334 -334
  197. package/coverage/map/api/services/projects/index.html +21 -21
  198. package/coverage/map/api/services/projects/projects.hooks.js.html +237 -237
  199. package/coverage/map/api/services/styles/index.html +21 -21
  200. package/coverage/map/api/services/styles/styles.hooks.js.html +84 -84
  201. package/coverage/map/common/dynamic-grid-source.js.html +68 -68
  202. package/coverage/map/common/errors.js.html +16 -16
  203. package/coverage/map/common/geotiff-grid-source.js.html +267 -267
  204. package/coverage/map/common/grid.js.html +554 -554
  205. package/coverage/map/common/index.html +159 -159
  206. package/coverage/map/common/index.js.html +68 -68
  207. package/coverage/map/common/meteo-model-grid-source.js.html +73 -73
  208. package/coverage/map/common/moment-utils.js.html +18 -18
  209. package/coverage/map/common/opendap-grid-source.js.html +484 -484
  210. package/coverage/map/common/opendap-utils.js.html +353 -353
  211. package/coverage/map/common/permissions.js.html +40 -40
  212. package/coverage/map/common/time-based-grid-source.js.html +59 -59
  213. package/coverage/map/common/tms-utils.js.html +1 -1
  214. package/coverage/map/common/wcs-grid-source.js.html +190 -190
  215. package/coverage/map/common/wcs-utils.js.html +338 -338
  216. package/coverage/map/common/weacast-grid-source.js.html +345 -345
  217. package/coverage/map/common/wfs-utils.js.html +1 -1
  218. package/coverage/map/common/wms-utils.js.html +1 -1
  219. package/coverage/map/common/wmts-utils.js.html +1 -1
  220. package/coverage/tmp/coverage-151198-1753351220086-0.json +1 -0
  221. package/coverage/tmp/coverage-151210-1753351220070-0.json +1 -0
  222. package/coverage/tmp/coverage-151221-1753351129816-0.json +1 -0
  223. package/coverage/tmp/coverage-151233-1753351129803-0.json +1 -0
  224. package/coverage/tmp/coverage-151240-1753351129770-0.json +1 -0
  225. package/coverage/tmp/coverage-151307-1753351220058-0.json +1 -0
  226. package/coverage/tmp/coverage-151319-1753351220044-0.json +1 -0
  227. package/coverage/tmp/coverage-151326-1753351220010-0.json +1 -0
  228. package/map/api/hooks/hooks.query.js +7 -4
  229. package/map/api/services/styles/styles.hooks.js +1 -1
  230. package/map/client/components/KLayerEditor.vue +4 -0
  231. package/map/client/components/catalog/KLayerCategories.vue +2 -0
  232. package/map/client/components/stickies/KAttribution.vue +8 -7
  233. package/map/client/components/stickies/KLevelSlider.vue +10 -8
  234. package/map/client/components/styles/KStyleEditor.vue +1 -1
  235. package/map/client/components/styles/KStyleManager.vue +7 -1
  236. package/map/client/composables/highlight.js +5 -1
  237. package/map/client/i18n/map_en.json +4 -1
  238. package/map/client/i18n/map_fr.json +5 -2
  239. package/map/client/leaflet/utils/utils.geojson.js +5 -4
  240. package/map/client/mixins/globe/mixin.geojson-layers.js +11 -5
  241. package/map/client/mixins/mixin.activity.js +9 -0
  242. package/map/client/utils/utils.layers.js +0 -2
  243. package/package.json +1 -1
  244. package/test/api/core/index.test.js +49 -60
  245. package/test/api/core/push.test.js +1 -1
  246. package/test/api/core/test-log-2025-06-25.log +9 -0
  247. package/test/api/core/test-log-2025-07-24.log +44 -0
  248. package/test/api/map/test-log-2025-05-27.log +13 -0
  249. package/test/api/map/test-log-2025-06-23.log +7 -0
  250. package/test/api/map/test-log-2025-07-24.log +11 -0
  251. package/coverage/tmp/coverage-323534-1747828879483-0.json +0 -1
  252. package/coverage/tmp/coverage-323546-1747828879453-0.json +0 -1
  253. package/coverage/tmp/coverage-323557-1747828879439-0.json +0 -1
  254. package/coverage/tmp/coverage-323569-1747828879416-0.json +0 -1
  255. package/coverage/tmp/coverage-323576-1747828879390-0.json +0 -1
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">80.08% </span>
26
+ <span class="strong">81.77% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>189/236</span>
28
+ <span class='fraction'>193/236</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">64.15% </span>
33
+ <span class="strong">70.49% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>34/53</span>
35
+ <span class='fraction'>43/61</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">71.42% </span>
40
+ <span class="strong">76.19% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>15/21</span>
42
+ <span class='fraction'>16/21</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">80.08% </span>
47
+ <span class="strong">81.77% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>189/236</span>
49
+ <span class='fraction'>193/236</span>
50
50
  </div>
51
51
 
52
52
 
@@ -299,52 +299,52 @@
299
299
  <a name='L234'></a><a href='#L234'>234</a>
300
300
  <a name='L235'></a><a href='#L235'>235</a>
301
301
  <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
303
- <span class="cline-any cline-yes">1x</span>
304
- <span class="cline-any cline-yes">1x</span>
305
- <span class="cline-any cline-yes">1x</span>
306
- <span class="cline-any cline-yes">1x</span>
307
- <span class="cline-any cline-yes">1x</span>
308
- <span class="cline-any cline-yes">1x</span>
309
- <span class="cline-any cline-yes">1x</span>
310
- <span class="cline-any cline-yes">1x</span>
311
- <span class="cline-any cline-yes">1x</span>
312
- <span class="cline-any cline-yes">1x</span>
313
- <span class="cline-any cline-no">&nbsp;</span>
314
- <span class="cline-any cline-no">&nbsp;</span>
315
- <span class="cline-any cline-yes">1x</span>
316
- <span class="cline-any cline-yes">1x</span>
317
- <span class="cline-any cline-yes">6x</span>
318
- <span class="cline-any cline-yes">6x</span>
319
- <span class="cline-any cline-yes">1x</span>
320
- <span class="cline-any cline-yes">1x</span>
302
+ <a name='L237'></a><a href='#L237'>237</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
303
+ <span class="cline-any cline-yes">2x</span>
304
+ <span class="cline-any cline-yes">2x</span>
305
+ <span class="cline-any cline-yes">2x</span>
306
+ <span class="cline-any cline-yes">2x</span>
307
+ <span class="cline-any cline-yes">2x</span>
308
+ <span class="cline-any cline-yes">2x</span>
309
+ <span class="cline-any cline-yes">2x</span>
310
+ <span class="cline-any cline-yes">2x</span>
311
+ <span class="cline-any cline-yes">2x</span>
312
+ <span class="cline-any cline-yes">2x</span>
313
+ <span class="cline-any cline-yes">3x</span>
314
+ <span class="cline-any cline-yes">3x</span>
315
+ <span class="cline-any cline-yes">2x</span>
316
+ <span class="cline-any cline-yes">2x</span>
317
+ <span class="cline-any cline-yes">4696x</span>
318
+ <span class="cline-any cline-yes">4696x</span>
319
+ <span class="cline-any cline-yes">2x</span>
320
+ <span class="cline-any cline-yes">2x</span>
321
321
  <span class="cline-any cline-no">&nbsp;</span>
322
322
  <span class="cline-any cline-no">&nbsp;</span>
323
323
  <span class="cline-any cline-no">&nbsp;</span>
324
324
  <span class="cline-any cline-no">&nbsp;</span>
325
325
  <span class="cline-any cline-no">&nbsp;</span>
326
326
  <span class="cline-any cline-no">&nbsp;</span>
327
- <span class="cline-any cline-yes">1x</span>
328
- <span class="cline-any cline-yes">1x</span>
329
- <span class="cline-any cline-yes">6x</span>
330
- <span class="cline-any cline-yes">6x</span>
331
- <span class="cline-any cline-yes">6x</span>
332
- <span class="cline-any cline-yes">6x</span>
333
- <span class="cline-any cline-yes">6x</span>
334
- <span class="cline-any cline-yes">6x</span>
327
+ <span class="cline-any cline-yes">2x</span>
328
+ <span class="cline-any cline-yes">2x</span>
329
+ <span class="cline-any cline-yes">4696x</span>
330
+ <span class="cline-any cline-yes">4696x</span>
331
+ <span class="cline-any cline-yes">4696x</span>
332
+ <span class="cline-any cline-yes">4696x</span>
335
333
  <span class="cline-any cline-yes">6x</span>
336
334
  <span class="cline-any cline-yes">6x</span>
337
335
  <span class="cline-any cline-yes">6x</span>
338
336
  <span class="cline-any cline-yes">6x</span>
339
337
  <span class="cline-any cline-yes">6x</span>
340
- <span class="cline-any cline-yes">1x</span>
341
- <span class="cline-any cline-yes">1x</span>
342
- <span class="cline-any cline-yes">1x</span>
343
- <span class="cline-any cline-yes">1x</span>
344
- <span class="cline-any cline-yes">1x</span>
345
- <span class="cline-any cline-yes">14x</span>
346
- <span class="cline-any cline-yes">14x</span>
347
338
  <span class="cline-any cline-yes">6x</span>
339
+ <span class="cline-any cline-yes">4696x</span>
340
+ <span class="cline-any cline-yes">2x</span>
341
+ <span class="cline-any cline-yes">2x</span>
342
+ <span class="cline-any cline-yes">2x</span>
343
+ <span class="cline-any cline-yes">2x</span>
344
+ <span class="cline-any cline-yes">2x</span>
345
+ <span class="cline-any cline-yes">16x</span>
346
+ <span class="cline-any cline-yes">16x</span>
347
+ <span class="cline-any cline-yes">8x</span>
348
348
  <span class="cline-any cline-yes">14x</span>
349
349
  <span class="cline-any cline-yes">14x</span>
350
350
  <span class="cline-any cline-yes">14x</span>
@@ -369,136 +369,136 @@
369
369
  <span class="cline-any cline-yes">8x</span>
370
370
  <span class="cline-any cline-yes">2x</span>
371
371
  <span class="cline-any cline-yes">8x</span>
372
- <span class="cline-any cline-yes">6x</span>
373
- <span class="cline-any cline-yes">6x</span>
374
- <span class="cline-any cline-yes">14x</span>
375
- <span class="cline-any cline-yes">14x</span>
376
- <span class="cline-any cline-yes">1x</span>
377
- <span class="cline-any cline-yes">1x</span>
378
- <span class="cline-any cline-yes">1x</span>
372
+ <span class="cline-any cline-yes">8x</span>
373
+ <span class="cline-any cline-yes">8x</span>
374
+ <span class="cline-any cline-yes">16x</span>
375
+ <span class="cline-any cline-yes">16x</span>
379
376
  <span class="cline-any cline-yes">2x</span>
380
377
  <span class="cline-any cline-yes">2x</span>
381
378
  <span class="cline-any cline-yes">2x</span>
382
- <span class="cline-any cline-no">&nbsp;</span>
383
- <span class="cline-any cline-no">&nbsp;</span>
379
+ <span class="cline-any cline-yes">4689x</span>
380
+ <span class="cline-any cline-yes">4693x</span>
381
+ <span class="cline-any cline-yes">4693x</span>
382
+ <span class="cline-any cline-yes">5x</span>
383
+ <span class="cline-any cline-yes">5x</span>
384
+ <span class="cline-any cline-yes">4693x</span>
385
+ <span class="cline-any cline-yes">4688x</span>
386
+ <span class="cline-any cline-yes">4688x</span>
387
+ <span class="cline-any cline-yes">4688x</span>
388
+ <span class="cline-any cline-yes">4689x</span>
389
+ <span class="cline-any cline-yes">4689x</span>
384
390
  <span class="cline-any cline-yes">2x</span>
385
391
  <span class="cline-any cline-yes">2x</span>
386
392
  <span class="cline-any cline-yes">2x</span>
393
+ <span class="cline-any cline-yes">13x</span>
394
+ <span class="cline-any cline-yes">13x</span>
395
+ <span class="cline-any cline-yes">13x</span>
396
+ <span class="cline-any cline-yes">13x</span>
397
+ <span class="cline-any cline-no">&nbsp;</span>
398
+ <span class="cline-any cline-no">&nbsp;</span>
399
+ <span class="cline-any cline-yes">13x</span>
400
+ <span class="cline-any cline-yes">13x</span>
387
401
  <span class="cline-any cline-yes">2x</span>
388
402
  <span class="cline-any cline-yes">2x</span>
403
+ <span class="cline-any cline-yes">137x</span>
404
+ <span class="cline-any cline-yes">137x</span>
405
+ <span class="cline-any cline-yes">2x</span>
389
406
  <span class="cline-any cline-yes">2x</span>
390
- <span class="cline-any cline-yes">1x</span>
391
- <span class="cline-any cline-yes">1x</span>
392
- <span class="cline-any cline-yes">1x</span>
393
- <span class="cline-any cline-yes">9x</span>
394
- <span class="cline-any cline-yes">9x</span>
395
- <span class="cline-any cline-yes">9x</span>
396
- <span class="cline-any cline-yes">9x</span>
397
- <span class="cline-any cline-no">&nbsp;</span>
398
- <span class="cline-any cline-no">&nbsp;</span>
399
- <span class="cline-any cline-yes">9x</span>
400
- <span class="cline-any cline-yes">9x</span>
401
- <span class="cline-any cline-yes">1x</span>
402
- <span class="cline-any cline-yes">1x</span>
403
- <span class="cline-any cline-yes">79x</span>
404
- <span class="cline-any cline-yes">79x</span>
405
- <span class="cline-any cline-yes">1x</span>
406
- <span class="cline-any cline-yes">1x</span>
407
407
  <span class="cline-any cline-no">&nbsp;</span>
408
408
  <span class="cline-any cline-no">&nbsp;</span>
409
409
  <span class="cline-any cline-no">&nbsp;</span>
410
- <span class="cline-any cline-yes">1x</span>
411
- <span class="cline-any cline-yes">1x</span>
410
+ <span class="cline-any cline-yes">2x</span>
411
+ <span class="cline-any cline-yes">2x</span>
412
412
  <span class="cline-any cline-no">&nbsp;</span>
413
413
  <span class="cline-any cline-no">&nbsp;</span>
414
- <span class="cline-any cline-yes">1x</span>
415
- <span class="cline-any cline-yes">1x</span>
414
+ <span class="cline-any cline-yes">2x</span>
415
+ <span class="cline-any cline-yes">2x</span>
416
416
  <span class="cline-any cline-no">&nbsp;</span>
417
417
  <span class="cline-any cline-no">&nbsp;</span>
418
418
  <span class="cline-any cline-no">&nbsp;</span>
419
- <span class="cline-any cline-yes">1x</span>
420
- <span class="cline-any cline-yes">1x</span>
421
- <span class="cline-any cline-yes">9x</span>
422
- <span class="cline-any cline-yes">9x</span>
423
- <span class="cline-any cline-yes">9x</span>
424
- <span class="cline-any cline-yes">9x</span>
425
- <span class="cline-any cline-yes">9x</span>
426
- <span class="cline-any cline-yes">9x</span>
427
- <span class="cline-any cline-yes">1x</span>
428
- <span class="cline-any cline-yes">1x</span>
429
- <span class="cline-any cline-yes">1x</span>
430
- <span class="cline-any cline-yes">1x</span>
431
- <span class="cline-any cline-yes">9x</span>
432
- <span class="cline-any cline-yes">9x</span>
433
- <span class="cline-any cline-yes">9x</span>
434
- <span class="cline-any cline-yes">9x</span>
435
- <span class="cline-any cline-yes">9x</span>
436
- <span class="cline-any cline-yes">9x</span>
437
- <span class="cline-any cline-yes">9x</span>
419
+ <span class="cline-any cline-yes">2x</span>
420
+ <span class="cline-any cline-yes">2x</span>
421
+ <span class="cline-any cline-yes">13x</span>
422
+ <span class="cline-any cline-yes">13x</span>
423
+ <span class="cline-any cline-yes">13x</span>
424
+ <span class="cline-any cline-yes">13x</span>
425
+ <span class="cline-any cline-yes">13x</span>
426
+ <span class="cline-any cline-yes">13x</span>
427
+ <span class="cline-any cline-yes">2x</span>
428
+ <span class="cline-any cline-yes">2x</span>
429
+ <span class="cline-any cline-yes">2x</span>
430
+ <span class="cline-any cline-yes">2x</span>
431
+ <span class="cline-any cline-yes">13x</span>
432
+ <span class="cline-any cline-yes">13x</span>
433
+ <span class="cline-any cline-yes">13x</span>
434
+ <span class="cline-any cline-yes">13x</span>
435
+ <span class="cline-any cline-yes">13x</span>
436
+ <span class="cline-any cline-yes">13x</span>
437
+ <span class="cline-any cline-yes">13x</span>
438
438
  <span class="cline-any cline-no">&nbsp;</span>
439
439
  <span class="cline-any cline-no">&nbsp;</span>
440
- <span class="cline-any cline-yes">9x</span>
441
- <span class="cline-any cline-yes">1x</span>
442
- <span class="cline-any cline-yes">1x</span>
443
- <span class="cline-any cline-yes">7x</span>
444
- <span class="cline-any cline-yes">7x</span>
445
- <span class="cline-any cline-yes">7x</span>
446
- <span class="cline-any cline-yes">7x</span>
447
- <span class="cline-any cline-yes">7x</span>
448
- <span class="cline-any cline-no">&nbsp;</span>
449
- <span class="cline-any cline-yes">7x</span>
450
- <span class="cline-any cline-yes">7x</span>
451
- <span class="cline-any cline-yes">7x</span>
452
- <span class="cline-any cline-yes">1x</span>
453
- <span class="cline-any cline-yes">1x</span>
454
- <span class="cline-any cline-yes">7x</span>
455
- <span class="cline-any cline-yes">7x</span>
456
- <span class="cline-any cline-yes">7x</span>
457
- <span class="cline-any cline-yes">7x</span>
458
- <span class="cline-any cline-yes">7x</span>
459
- <span class="cline-any cline-yes">7x</span>
460
- <span class="cline-any cline-yes">7x</span>
461
- <span class="cline-any cline-yes">7x</span>
462
- <span class="cline-any cline-yes">7x</span>
463
- <span class="cline-any cline-yes">7x</span>
464
- <span class="cline-any cline-yes">7x</span>
440
+ <span class="cline-any cline-yes">13x</span>
441
+ <span class="cline-any cline-yes">2x</span>
442
+ <span class="cline-any cline-yes">2x</span>
443
+ <span class="cline-any cline-yes">11x</span>
444
+ <span class="cline-any cline-yes">11x</span>
445
+ <span class="cline-any cline-yes">11x</span>
446
+ <span class="cline-any cline-yes">11x</span>
447
+ <span class="cline-any cline-yes">11x</span>
448
+ <span class="cline-any cline-no">&nbsp;</span>
449
+ <span class="cline-any cline-yes">11x</span>
450
+ <span class="cline-any cline-yes">11x</span>
451
+ <span class="cline-any cline-yes">11x</span>
452
+ <span class="cline-any cline-yes">2x</span>
453
+ <span class="cline-any cline-yes">2x</span>
454
+ <span class="cline-any cline-yes">11x</span>
455
+ <span class="cline-any cline-yes">11x</span>
456
+ <span class="cline-any cline-yes">11x</span>
457
+ <span class="cline-any cline-yes">11x</span>
458
+ <span class="cline-any cline-yes">11x</span>
459
+ <span class="cline-any cline-yes">11x</span>
460
+ <span class="cline-any cline-yes">11x</span>
461
+ <span class="cline-any cline-yes">11x</span>
462
+ <span class="cline-any cline-yes">11x</span>
463
+ <span class="cline-any cline-yes">11x</span>
464
+ <span class="cline-any cline-yes">11x</span>
465
465
  <span class="cline-any cline-no">&nbsp;</span>
466
466
  <span class="cline-any cline-no">&nbsp;</span>
467
467
  <span class="cline-any cline-no">&nbsp;</span>
468
468
  <span class="cline-any cline-no">&nbsp;</span>
469
469
  <span class="cline-any cline-no">&nbsp;</span>
470
- <span class="cline-any cline-yes">7x</span>
471
- <span class="cline-any cline-yes">7x</span>
472
- <span class="cline-any cline-yes">7x</span>
473
- <span class="cline-any cline-yes">7x</span>
470
+ <span class="cline-any cline-yes">11x</span>
471
+ <span class="cline-any cline-yes">11x</span>
472
+ <span class="cline-any cline-yes">11x</span>
473
+ <span class="cline-any cline-yes">11x</span>
474
474
  <span class="cline-any cline-no">&nbsp;</span>
475
475
  <span class="cline-any cline-no">&nbsp;</span>
476
476
  <span class="cline-any cline-no">&nbsp;</span>
477
- <span class="cline-any cline-yes">7x</span>
478
- <span class="cline-any cline-yes">1x</span>
479
- <span class="cline-any cline-yes">1x</span>
480
- <span class="cline-any cline-yes">7x</span>
481
- <span class="cline-any cline-yes">7x</span>
482
- <span class="cline-any cline-yes">7x</span>
483
- <span class="cline-any cline-yes">7x</span>
484
- <span class="cline-any cline-yes">7x</span>
485
- <span class="cline-any cline-yes">7x</span>
486
- <span class="cline-any cline-yes">7x</span>
487
- <span class="cline-any cline-yes">7x</span>
488
- <span class="cline-any cline-yes">7x</span>
477
+ <span class="cline-any cline-yes">11x</span>
478
+ <span class="cline-any cline-yes">2x</span>
479
+ <span class="cline-any cline-yes">2x</span>
480
+ <span class="cline-any cline-yes">11x</span>
481
+ <span class="cline-any cline-yes">11x</span>
482
+ <span class="cline-any cline-yes">11x</span>
483
+ <span class="cline-any cline-yes">11x</span>
484
+ <span class="cline-any cline-yes">11x</span>
485
+ <span class="cline-any cline-yes">11x</span>
486
+ <span class="cline-any cline-yes">11x</span>
487
+ <span class="cline-any cline-yes">11x</span>
488
+ <span class="cline-any cline-yes">11x</span>
489
489
  <span class="cline-any cline-no">&nbsp;</span>
490
490
  <span class="cline-any cline-no">&nbsp;</span>
491
- <span class="cline-any cline-yes">7x</span>
492
- <span class="cline-any cline-yes">7x</span>
493
- <span class="cline-any cline-yes">7x</span>
494
- <span class="cline-any cline-yes">7x</span>
495
- <span class="cline-any cline-yes">7x</span>
491
+ <span class="cline-any cline-yes">11x</span>
492
+ <span class="cline-any cline-yes">11x</span>
493
+ <span class="cline-any cline-yes">11x</span>
494
+ <span class="cline-any cline-yes">11x</span>
495
+ <span class="cline-any cline-yes">11x</span>
496
496
  <span class="cline-any cline-no">&nbsp;</span>
497
497
  <span class="cline-any cline-no">&nbsp;</span>
498
498
  <span class="cline-any cline-no">&nbsp;</span>
499
- <span class="cline-any cline-yes">7x</span>
500
- <span class="cline-any cline-yes">1x</span>
501
- <span class="cline-any cline-yes">1x</span>
499
+ <span class="cline-any cline-yes">11x</span>
500
+ <span class="cline-any cline-yes">2x</span>
501
+ <span class="cline-any cline-yes">2x</span>
502
502
  <span class="cline-any cline-yes">1x</span>
503
503
  <span class="cline-any cline-yes">1x</span>
504
504
  <span class="cline-any cline-yes">1x</span>
@@ -514,27 +514,27 @@
514
514
  <span class="cline-any cline-no">&nbsp;</span>
515
515
  <span class="cline-any cline-no">&nbsp;</span>
516
516
  <span class="cline-any cline-yes">1x</span>
517
- <span class="cline-any cline-yes">1x</span>
518
- <span class="cline-any cline-yes">1x</span>
517
+ <span class="cline-any cline-yes">2x</span>
518
+ <span class="cline-any cline-yes">2x</span>
519
519
  <span class="cline-any cline-no">&nbsp;</span>
520
520
  <span class="cline-any cline-no">&nbsp;</span>
521
- <span class="cline-any cline-yes">1x</span>
522
- <span class="cline-any cline-yes">1x</span>
523
- <span class="cline-any cline-yes">15x</span>
524
- <span class="cline-any cline-yes">15x</span>
525
- <span class="cline-any cline-yes">1x</span>
526
- <span class="cline-any cline-yes">1x</span>
527
- <span class="cline-any cline-yes">8x</span>
528
- <span class="cline-any cline-yes">8x</span>
529
- <span class="cline-any cline-yes">1x</span>
530
- <span class="cline-any cline-yes">1x</span>
531
- <span class="cline-any cline-yes">8x</span>
532
- <span class="cline-any cline-yes">8x</span>
533
- <span class="cline-any cline-yes">8x</span>
534
- <span class="cline-any cline-yes">8x</span>
535
- <span class="cline-any cline-yes">8x</span>
536
- <span class="cline-any cline-yes">8x</span>
537
- <span class="cline-any cline-yes">1x</span>
521
+ <span class="cline-any cline-yes">2x</span>
522
+ <span class="cline-any cline-yes">2x</span>
523
+ <span class="cline-any cline-yes">16x</span>
524
+ <span class="cline-any cline-yes">16x</span>
525
+ <span class="cline-any cline-yes">2x</span>
526
+ <span class="cline-any cline-yes">2x</span>
527
+ <span class="cline-any cline-yes">25x</span>
528
+ <span class="cline-any cline-yes">25x</span>
529
+ <span class="cline-any cline-yes">2x</span>
530
+ <span class="cline-any cline-yes">2x</span>
531
+ <span class="cline-any cline-yes">25x</span>
532
+ <span class="cline-any cline-yes">25x</span>
533
+ <span class="cline-any cline-yes">25x</span>
534
+ <span class="cline-any cline-yes">25x</span>
535
+ <span class="cline-any cline-yes">25x</span>
536
+ <span class="cline-any cline-yes">25x</span>
537
+ <span class="cline-any cline-yes">2x</span>
538
538
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import _ from 'lodash'
539
539
  import moment from 'moment'
540
540
  import makeDebug from 'debug'
@@ -545,9 +545,9 @@ const { MongoClient, ObjectID } = mongodb
545
545
  const debug = makeDebug('kdk:core:db')
546
546
  &nbsp;
547
547
  // This ensure moment objects are correctly serialized in MongoDB
548
- Object.getPrototypeOf(moment()).toBSON = <span class="fstat-no" title="function not covered" >function () {</span>
549
- <span class="cstat-no" title="statement not covered" > return this.toDate()</span>
550
- <span class="cstat-no" title="statement not covered" >}</span>
548
+ Object.getPrototypeOf(moment()).toBSON = function () {
549
+ return this.toDate()
550
+ }
551
551
  &nbsp;
552
552
  export function isObjectID (id) {
553
553
  return id &amp;&amp; (typeof id.toHexString === 'function') <span class="branch-0 cbranch-no" title="branch not covered" >&amp;&amp; (typeof id.getTimestamp === 'function')</span>
@@ -565,7 +565,7 @@ export function createObjectID (id) {
565
565
  // This ensure it works even if id is already an ObjectID
566
566
  if (isObjectID(id)) <span class="branch-0 cbranch-no" title="branch not covered" >return id</span>
567
567
  // Take care that numbers could be a valid object ID
568
- else if ((typeof id === 'number') || !ObjectID.isValid(id)) <span class="branch-0 cbranch-no" title="branch not covered" >return null</span>
568
+ else if ((typeof id === 'number') || !ObjectID.isValid(id)) return null
569
569
  else {
570
570
  const objectId = new ObjectID(id)
571
571
  // It appears that ObjectID.isValid is not reliable in some driver versions, see eg https://jira.mongodb.org/browse/NODE-3760
@@ -614,9 +614,9 @@ export function objectifyIDs (object) {
614
614
  export function toObjectIDs (object, properties) {
615
615
  properties.forEach(property =&gt; {
616
616
  const value = _.get(object, property)
617
- if (Array.isArray(value)) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
618
- <span class="cstat-no" title="statement not covered" > const ids = value.map(id =&gt; createObjectID(id)).filter(id =&gt; id)</span>
619
- <span class="cstat-no" title="statement not covered" > if (ids.length &gt; 0) _.set(object, property, ids)</span>
617
+ if (Array.isArray(value)) {
618
+ const ids = value.map(id =&gt; createObjectID(id)).filter(id =&gt; id)
619
+ if (ids.length &gt; 0) <span class="branch-0 cbranch-no" title="branch not covered" >_.set(object, property, ids)</span>
620
620
  } else {
621
621
  const id = createObjectID(value)
622
622
  if (id) _.set(object, property, id)
@@ -778,7 +778,7 @@ export class MongoDatabase extends Database {
778
778
  <div class='footer quiet pad2 space-top1 center small'>
779
779
  Code coverage generated by
780
780
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
781
- at 2025-05-21T12:01:19.833Z
781
+ at 2025-07-24T10:00:20.508Z
782
782
  </div>
783
783
  <script src="../../prettify.js"></script>
784
784
  <script>
@@ -81,17 +81,17 @@
81
81
  <a name='L16'></a><a href='#L16'>16</a>
82
82
  <a name='L17'></a><a href='#L17'>17</a>
83
83
  <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
85
- <span class="cline-any cline-yes">1x</span>
86
- <span class="cline-any cline-yes">1x</span>
87
- <span class="cline-any cline-yes">1x</span>
88
- <span class="cline-any cline-yes">1x</span>
89
- <span class="cline-any cline-yes">1x</span>
90
- <span class="cline-any cline-yes">1x</span>
91
- <span class="cline-any cline-yes">1x</span>
92
- <span class="cline-any cline-yes">1x</span>
93
- <span class="cline-any cline-yes">1x</span>
94
- <span class="cline-any cline-yes">1x</span>
84
+ <a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
85
+ <span class="cline-any cline-yes">2x</span>
86
+ <span class="cline-any cline-yes">2x</span>
87
+ <span class="cline-any cline-yes">2x</span>
88
+ <span class="cline-any cline-yes">2x</span>
89
+ <span class="cline-any cline-yes">2x</span>
90
+ <span class="cline-any cline-yes">2x</span>
91
+ <span class="cline-any cline-yes">2x</span>
92
+ <span class="cline-any cline-yes">2x</span>
93
+ <span class="cline-any cline-yes">2x</span>
94
+ <span class="cline-any cline-yes">2x</span>
95
95
  <span class="cline-any cline-yes">20x</span>
96
96
  <span class="cline-any cline-yes">20x</span>
97
97
  <span class="cline-any cline-yes">20x</span>
@@ -124,7 +124,7 @@ export function discardAuthenticationProviders (hook) {
124
124
  <div class='footer quiet pad2 space-top1 center small'>
125
125
  Code coverage generated by
126
126
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
127
- at 2025-05-21T12:01:19.833Z
127
+ at 2025-07-24T10:00:20.508Z
128
128
  </div>
129
129
  <script src="../../../prettify.js"></script>
130
130
  <script>