@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">0% </span>
26
+ <span class="strong">92.85% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>0/238</span>
28
+ <span class='fraction'>221/238</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">0% </span>
33
+ <span class="strong">77.41% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/2</span>
35
+ <span class='fraction'>24/31</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">0% </span>
40
+ <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/2</span>
42
+ <span class='fraction'>8/8</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">0% </span>
47
+ <span class="strong">92.85% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>0/238</span>
49
+ <span class='fraction'>221/238</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line low'></div>
64
+ <div class='status-line high'></div>
65
65
  <div class="pad1">
66
66
  <table class="coverage-summary">
67
67
  <thead>
@@ -79,33 +79,33 @@
79
79
  </tr>
80
80
  </thead>
81
81
  <tbody><tr>
82
- <td class="file low" data-value="alerts.hooks.js"><a href="alerts.hooks.js.html">alerts.hooks.js</a></td>
83
- <td data-value="0" class="pic low">
84
- <div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
82
+ <td class="file high" data-value="alerts.hooks.js"><a href="alerts.hooks.js.html">alerts.hooks.js</a></td>
83
+ <td data-value="100" class="pic high">
84
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
85
85
  </td>
86
- <td data-value="0" class="pct low">0%</td>
87
- <td data-value="63" class="abs low">0/63</td>
88
- <td data-value="0" class="pct low">0%</td>
89
- <td data-value="1" class="abs low">0/1</td>
90
- <td data-value="0" class="pct low">0%</td>
91
- <td data-value="1" class="abs low">0/1</td>
92
- <td data-value="0" class="pct low">0%</td>
93
- <td data-value="63" class="abs low">0/63</td>
86
+ <td data-value="100" class="pct high">100%</td>
87
+ <td data-value="63" class="abs high">63/63</td>
88
+ <td data-value="100" class="pct high">100%</td>
89
+ <td data-value="4" class="abs high">4/4</td>
90
+ <td data-value="100" class="pct high">100%</td>
91
+ <td data-value="2" class="abs high">2/2</td>
92
+ <td data-value="100" class="pct high">100%</td>
93
+ <td data-value="63" class="abs high">63/63</td>
94
94
  </tr>
95
95
 
96
96
  <tr>
97
- <td class="file low" data-value="alerts.service.js"><a href="alerts.service.js.html">alerts.service.js</a></td>
98
- <td data-value="0" class="pic low">
99
- <div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
97
+ <td class="file high" data-value="alerts.service.js"><a href="alerts.service.js.html">alerts.service.js</a></td>
98
+ <td data-value="90.28" class="pic high">
99
+ <div class="chart"><div class="cover-fill" style="width: 90%"></div><div class="cover-empty" style="width: 10%"></div></div>
100
100
  </td>
101
- <td data-value="0" class="pct low">0%</td>
102
- <td data-value="175" class="abs low">0/175</td>
103
- <td data-value="0" class="pct low">0%</td>
104
- <td data-value="1" class="abs low">0/1</td>
105
- <td data-value="0" class="pct low">0%</td>
106
- <td data-value="1" class="abs low">0/1</td>
107
- <td data-value="0" class="pct low">0%</td>
108
- <td data-value="175" class="abs low">0/175</td>
101
+ <td data-value="90.28" class="pct high">90.28%</td>
102
+ <td data-value="175" class="abs high">158/175</td>
103
+ <td data-value="74.07" class="pct medium">74.07%</td>
104
+ <td data-value="27" class="abs medium">20/27</td>
105
+ <td data-value="100" class="pct high">100%</td>
106
+ <td data-value="6" class="abs high">6/6</td>
107
+ <td data-value="90.28" class="pct high">90.28%</td>
108
+ <td data-value="175" class="abs high">158/175</td>
109
109
  </tr>
110
110
 
111
111
  </tbody>
@@ -116,7 +116,7 @@
116
116
  <div class='footer quiet pad2 space-top1 center small'>
117
117
  Code coverage generated by
118
118
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
119
- at 2025-05-21T12:01:19.833Z
119
+ at 2025-07-24T10:00:20.508Z
120
120
  </div>
121
121
  <script src="../../../../prettify.js"></script>
122
122
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">0% </span>
26
+ <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>0/81</span>
28
+ <span class='fraction'>81/81</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">0% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/1</span>
35
+ <span class='fraction'>4/4</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">0% </span>
40
+ <span class="strong">75% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/1</span>
42
+ <span class='fraction'>3/4</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">0% </span>
47
+ <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>0/81</span>
49
+ <span class='fraction'>81/81</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line low'></div>
64
+ <div class='status-line high'></div>
65
65
  <pre><table class="coverage">
66
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -144,168 +144,168 @@
144
144
  <a name='L79'></a><a href='#L79'>79</a>
145
145
  <a name='L80'></a><a href='#L80'>80</a>
146
146
  <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
148
- <span class="cline-any cline-no">&nbsp;</span>
149
- <span class="cline-any cline-no">&nbsp;</span>
150
- <span class="cline-any cline-no">&nbsp;</span>
151
- <span class="cline-any cline-no">&nbsp;</span>
152
- <span class="cline-any cline-no">&nbsp;</span>
153
- <span class="cline-any cline-no">&nbsp;</span>
154
- <span class="cline-any cline-no">&nbsp;</span>
155
- <span class="cline-any cline-no">&nbsp;</span>
156
- <span class="cline-any cline-no">&nbsp;</span>
157
- <span class="cline-any cline-no">&nbsp;</span>
158
- <span class="cline-any cline-no">&nbsp;</span>
159
- <span class="cline-any cline-no">&nbsp;</span>
160
- <span class="cline-any cline-no">&nbsp;</span>
161
- <span class="cline-any cline-no">&nbsp;</span>
162
- <span class="cline-any cline-no">&nbsp;</span>
163
- <span class="cline-any cline-no">&nbsp;</span>
164
- <span class="cline-any cline-no">&nbsp;</span>
165
- <span class="cline-any cline-no">&nbsp;</span>
166
- <span class="cline-any cline-no">&nbsp;</span>
167
- <span class="cline-any cline-no">&nbsp;</span>
168
- <span class="cline-any cline-no">&nbsp;</span>
169
- <span class="cline-any cline-no">&nbsp;</span>
170
- <span class="cline-any cline-no">&nbsp;</span>
171
- <span class="cline-any cline-no">&nbsp;</span>
172
- <span class="cline-any cline-no">&nbsp;</span>
173
- <span class="cline-any cline-no">&nbsp;</span>
174
- <span class="cline-any cline-no">&nbsp;</span>
175
- <span class="cline-any cline-no">&nbsp;</span>
176
- <span class="cline-any cline-no">&nbsp;</span>
177
- <span class="cline-any cline-no">&nbsp;</span>
178
- <span class="cline-any cline-no">&nbsp;</span>
179
- <span class="cline-any cline-no">&nbsp;</span>
180
- <span class="cline-any cline-no">&nbsp;</span>
181
- <span class="cline-any cline-no">&nbsp;</span>
182
- <span class="cline-any cline-no">&nbsp;</span>
183
- <span class="cline-any cline-no">&nbsp;</span>
184
- <span class="cline-any cline-no">&nbsp;</span>
185
- <span class="cline-any cline-no">&nbsp;</span>
186
- <span class="cline-any cline-no">&nbsp;</span>
187
- <span class="cline-any cline-no">&nbsp;</span>
188
- <span class="cline-any cline-no">&nbsp;</span>
189
- <span class="cline-any cline-no">&nbsp;</span>
190
- <span class="cline-any cline-no">&nbsp;</span>
191
- <span class="cline-any cline-no">&nbsp;</span>
192
- <span class="cline-any cline-no">&nbsp;</span>
193
- <span class="cline-any cline-no">&nbsp;</span>
194
- <span class="cline-any cline-no">&nbsp;</span>
195
- <span class="cline-any cline-no">&nbsp;</span>
196
- <span class="cline-any cline-no">&nbsp;</span>
197
- <span class="cline-any cline-no">&nbsp;</span>
198
- <span class="cline-any cline-no">&nbsp;</span>
199
- <span class="cline-any cline-no">&nbsp;</span>
200
- <span class="cline-any cline-no">&nbsp;</span>
201
- <span class="cline-any cline-no">&nbsp;</span>
202
- <span class="cline-any cline-no">&nbsp;</span>
203
- <span class="cline-any cline-no">&nbsp;</span>
204
- <span class="cline-any cline-no">&nbsp;</span>
205
- <span class="cline-any cline-no">&nbsp;</span>
206
- <span class="cline-any cline-no">&nbsp;</span>
207
- <span class="cline-any cline-no">&nbsp;</span>
208
- <span class="cline-any cline-no">&nbsp;</span>
209
- <span class="cline-any cline-no">&nbsp;</span>
210
- <span class="cline-any cline-no">&nbsp;</span>
211
- <span class="cline-any cline-no">&nbsp;</span>
212
- <span class="cline-any cline-no">&nbsp;</span>
213
- <span class="cline-any cline-no">&nbsp;</span>
214
- <span class="cline-any cline-no">&nbsp;</span>
215
- <span class="cline-any cline-no">&nbsp;</span>
216
- <span class="cline-any cline-no">&nbsp;</span>
217
- <span class="cline-any cline-no">&nbsp;</span>
218
- <span class="cline-any cline-no">&nbsp;</span>
219
- <span class="cline-any cline-no">&nbsp;</span>
220
- <span class="cline-any cline-no">&nbsp;</span>
221
- <span class="cline-any cline-no">&nbsp;</span>
222
- <span class="cline-any cline-no">&nbsp;</span>
223
- <span class="cline-any cline-no">&nbsp;</span>
224
- <span class="cline-any cline-no">&nbsp;</span>
225
- <span class="cline-any cline-no">&nbsp;</span>
226
- <span class="cline-any cline-no">&nbsp;</span>
227
- <span class="cline-any cline-no">&nbsp;</span>
228
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" >import _ from 'lodash'</span></span></span>
229
- <span class="cstat-no" title="statement not covered" >import common from 'feathers-hooks-common'</span>
230
- <span class="cstat-no" title="statement not covered" >import fuzzySearch from 'feathers-mongodb-fuzzy-search'</span>
231
- <span class="cstat-no" title="statement not covered" >import { hooks as coreHooks } from '../../../../core/api/index.js'</span>
232
- <span class="cstat-no" title="statement not covered" >import { filterLayers, updateLayerReferences, updateProjects,</span>
233
- <span class="cstat-no" title="statement not covered" > getDefaultCategories, getDefaultSublegends, </span>
234
- <span class="cstat-no" title="statement not covered" > convertFilterQueriesToString, convertFilterQueriesToObject } from '../../hooks/index.js'</span>
235
- <span class="cstat-no" title="statement not covered" ></span>
236
- <span class="cstat-no" title="statement not covered" >const { setNow, discard, when } = common</span>
237
- <span class="cstat-no" title="statement not covered" ></span>
238
- <span class="cstat-no" title="statement not covered" >export default {</span>
239
- <span class="cstat-no" title="statement not covered" > before: {</span>
240
- <span class="cstat-no" title="statement not covered" > all: [coreHooks.marshallHttpQuery],</span>
241
- <span class="cstat-no" title="statement not covered" > find: [</span>
242
- <span class="cstat-no" title="statement not covered" > fuzzySearch({ fields: ['name'] }), coreHooks.diacriticSearch(), filterLayers, coreHooks.distinct</span>
243
- <span class="cstat-no" title="statement not covered" > ],</span>
244
- <span class="cstat-no" title="statement not covered" > get: [],</span>
245
- <span class="cstat-no" title="statement not covered" > create: [</span>
246
- <span class="cstat-no" title="statement not covered" > coreHooks.checkUnique({ field: 'name', query: (query, hook) =&gt; { query.type = _.get(hook, 'data.type') } }),</span>
247
- <span class="cstat-no" title="statement not covered" > coreHooks.convertToString(['baseQuery', 'schema.content']),</span>
248
- <span class="cstat-no" title="statement not covered" > convertFilterQueriesToString,</span>
249
- <span class="cstat-no" title="statement not covered" > setNow('createdAt', 'updatedAt'),</span>
250
- <span class="cstat-no" title="statement not covered" > // This allow to use keys for base queries like 'properties.xxx': 'yyy'</span>
251
- <span class="cstat-no" title="statement not covered" > (hook) =&gt; { _.set(hook, 'params.mongodb.checkKeys', false) }</span>
252
- <span class="cstat-no" title="statement not covered" > ],</span>
253
- <span class="cstat-no" title="statement not covered" > update: [</span>
254
- <span class="cstat-no" title="statement not covered" > coreHooks.populatePreviousObject,</span>
255
- <span class="cstat-no" title="statement not covered" > coreHooks.checkUnique({ field: 'name', query: (query, hook) =&gt; { query.type = _.get(hook, 'params.previousItem.type') } }),</span>
256
- <span class="cstat-no" title="statement not covered" > coreHooks.convertToString(['baseQuery', 'schema.content']),</span>
257
- <span class="cstat-no" title="statement not covered" > convertFilterQueriesToString,</span>
258
- <span class="cstat-no" title="statement not covered" > discard('createdAt', 'updatedAt'),</span>
259
- <span class="cstat-no" title="statement not covered" > setNow('updatedAt')</span>
260
- <span class="cstat-no" title="statement not covered" > ],</span>
261
- <span class="cstat-no" title="statement not covered" > patch: [</span>
262
- <span class="cstat-no" title="statement not covered" > coreHooks.populatePreviousObject,</span>
263
- <span class="cstat-no" title="statement not covered" > coreHooks.checkUnique({ field: 'name', query: (query, hook) =&gt; { query.type = _.get(hook, 'params.previousItem.type') } }),</span>
264
- <span class="cstat-no" title="statement not covered" > coreHooks.convertToString(['baseQuery', 'schema.content']),</span>
265
- <span class="cstat-no" title="statement not covered" > convertFilterQueriesToString,</span>
266
- <span class="cstat-no" title="statement not covered" > discard('createdAt', 'updatedAt'),</span>
267
- <span class="cstat-no" title="statement not covered" > setNow('updatedAt')</span>
268
- <span class="cstat-no" title="statement not covered" > ],</span>
269
- <span class="cstat-no" title="statement not covered" > remove: [</span>
270
- <span class="cstat-no" title="statement not covered" > coreHooks.populatePreviousObject</span>
271
- <span class="cstat-no" title="statement not covered" > ]</span>
272
- <span class="cstat-no" title="statement not covered" > },</span>
273
- <span class="cstat-no" title="statement not covered" ></span>
274
- <span class="cstat-no" title="statement not covered" > after: {</span>
275
- <span class="cstat-no" title="statement not covered" > all: [</span>
276
- <span class="cstat-no" title="statement not covered" > coreHooks.convertToJson(['baseQuery', 'schema.content']),</span>
277
- <span class="cstat-no" title="statement not covered" > convertFilterQueriesToObject,</span>
278
- <span class="cstat-no" title="statement not covered" > coreHooks.convertObjectIDs(['baseQuery.layer'])</span>
279
- <span class="cstat-no" title="statement not covered" > ],</span>
280
- <span class="cstat-no" title="statement not covered" > find: [</span>
281
- <span class="cstat-no" title="statement not covered" > // Merge built-in categories/sublegends (if provided) with user-defined ones</span>
282
- <span class="cstat-no" title="statement not covered" > getDefaultCategories, getDefaultSublegends</span>
283
- <span class="cstat-no" title="statement not covered" > ],</span>
284
- <span class="cstat-no" title="statement not covered" > get: [],</span>
285
- <span class="cstat-no" title="statement not covered" > create: [],</span>
286
- <span class="cstat-no" title="statement not covered" > update: [</span>
287
- <span class="cstat-no" title="statement not covered" > updateLayerReferences</span>
288
- <span class="cstat-no" title="statement not covered" > ],</span>
289
- <span class="cstat-no" title="statement not covered" > patch: [</span>
290
- <span class="cstat-no" title="statement not covered" > updateLayerReferences</span>
291
- <span class="cstat-no" title="statement not covered" > ],</span>
292
- <span class="cstat-no" title="statement not covered" > remove: [</span>
293
- <span class="cstat-no" title="statement not covered" > setNow('updatedAt'),</span>
294
- <span class="cstat-no" title="statement not covered" > updateLayerReferences,</span>
295
- <span class="cstat-no" title="statement not covered" > updateProjects</span>
296
- <span class="cstat-no" title="statement not covered" > ]</span>
297
- <span class="cstat-no" title="statement not covered" > },</span>
298
- <span class="cstat-no" title="statement not covered" ></span>
299
- <span class="cstat-no" title="statement not covered" > error: {</span>
300
- <span class="cstat-no" title="statement not covered" > all: [],</span>
301
- <span class="cstat-no" title="statement not covered" > find: [],</span>
302
- <span class="cstat-no" title="statement not covered" > get: [],</span>
303
- <span class="cstat-no" title="statement not covered" > create: [],</span>
304
- <span class="cstat-no" title="statement not covered" > update: [],</span>
305
- <span class="cstat-no" title="statement not covered" > patch: [],</span>
306
- <span class="cstat-no" title="statement not covered" > remove: []</span>
307
- <span class="cstat-no" title="statement not covered" > }</span>
308
- <span class="cstat-no" title="statement not covered" >}</span>
147
+ <a name='L82'></a><a href='#L82'>82</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
148
+ <span class="cline-any cline-yes">1x</span>
149
+ <span class="cline-any cline-yes">1x</span>
150
+ <span class="cline-any cline-yes">1x</span>
151
+ <span class="cline-any cline-yes">1x</span>
152
+ <span class="cline-any cline-yes">1x</span>
153
+ <span class="cline-any cline-yes">1x</span>
154
+ <span class="cline-any cline-yes">1x</span>
155
+ <span class="cline-any cline-yes">1x</span>
156
+ <span class="cline-any cline-yes">1x</span>
157
+ <span class="cline-any cline-yes">1x</span>
158
+ <span class="cline-any cline-yes">1x</span>
159
+ <span class="cline-any cline-yes">1x</span>
160
+ <span class="cline-any cline-yes">1x</span>
161
+ <span class="cline-any cline-yes">1x</span>
162
+ <span class="cline-any cline-yes">1x</span>
163
+ <span class="cline-any cline-yes">1x</span>
164
+ <span class="cline-any cline-yes">1x</span>
165
+ <span class="cline-any cline-yes">1x</span>
166
+ <span class="cline-any cline-yes">1x</span>
167
+ <span class="cline-any cline-yes">1x</span>
168
+ <span class="cline-any cline-yes">1x</span>
169
+ <span class="cline-any cline-yes">1x</span>
170
+ <span class="cline-any cline-yes">1x</span>
171
+ <span class="cline-any cline-yes">1x</span>
172
+ <span class="cline-any cline-yes">1x</span>
173
+ <span class="cline-any cline-yes">1x</span>
174
+ <span class="cline-any cline-yes">1x</span>
175
+ <span class="cline-any cline-yes">1x</span>
176
+ <span class="cline-any cline-yes">1x</span>
177
+ <span class="cline-any cline-yes">1x</span>
178
+ <span class="cline-any cline-yes">1x</span>
179
+ <span class="cline-any cline-yes">1x</span>
180
+ <span class="cline-any cline-yes">1x</span>
181
+ <span class="cline-any cline-yes">1x</span>
182
+ <span class="cline-any cline-yes">1x</span>
183
+ <span class="cline-any cline-yes">1x</span>
184
+ <span class="cline-any cline-yes">1x</span>
185
+ <span class="cline-any cline-yes">1x</span>
186
+ <span class="cline-any cline-yes">1x</span>
187
+ <span class="cline-any cline-yes">1x</span>
188
+ <span class="cline-any cline-yes">1x</span>
189
+ <span class="cline-any cline-yes">1x</span>
190
+ <span class="cline-any cline-yes">1x</span>
191
+ <span class="cline-any cline-yes">1x</span>
192
+ <span class="cline-any cline-yes">1x</span>
193
+ <span class="cline-any cline-yes">1x</span>
194
+ <span class="cline-any cline-yes">1x</span>
195
+ <span class="cline-any cline-yes">1x</span>
196
+ <span class="cline-any cline-yes">1x</span>
197
+ <span class="cline-any cline-yes">1x</span>
198
+ <span class="cline-any cline-yes">1x</span>
199
+ <span class="cline-any cline-yes">1x</span>
200
+ <span class="cline-any cline-yes">1x</span>
201
+ <span class="cline-any cline-yes">1x</span>
202
+ <span class="cline-any cline-yes">1x</span>
203
+ <span class="cline-any cline-yes">1x</span>
204
+ <span class="cline-any cline-yes">1x</span>
205
+ <span class="cline-any cline-yes">1x</span>
206
+ <span class="cline-any cline-yes">1x</span>
207
+ <span class="cline-any cline-yes">1x</span>
208
+ <span class="cline-any cline-yes">1x</span>
209
+ <span class="cline-any cline-yes">1x</span>
210
+ <span class="cline-any cline-yes">1x</span>
211
+ <span class="cline-any cline-yes">1x</span>
212
+ <span class="cline-any cline-yes">1x</span>
213
+ <span class="cline-any cline-yes">1x</span>
214
+ <span class="cline-any cline-yes">1x</span>
215
+ <span class="cline-any cline-yes">1x</span>
216
+ <span class="cline-any cline-yes">1x</span>
217
+ <span class="cline-any cline-yes">1x</span>
218
+ <span class="cline-any cline-yes">1x</span>
219
+ <span class="cline-any cline-yes">1x</span>
220
+ <span class="cline-any cline-yes">1x</span>
221
+ <span class="cline-any cline-yes">1x</span>
222
+ <span class="cline-any cline-yes">1x</span>
223
+ <span class="cline-any cline-yes">1x</span>
224
+ <span class="cline-any cline-yes">1x</span>
225
+ <span class="cline-any cline-yes">1x</span>
226
+ <span class="cline-any cline-yes">1x</span>
227
+ <span class="cline-any cline-yes">1x</span>
228
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import _ from 'lodash'
229
+ import common from 'feathers-hooks-common'
230
+ import fuzzySearch from 'feathers-mongodb-fuzzy-search'
231
+ import { hooks as coreHooks } from '../../../../core/api/index.js'
232
+ import { filterLayers, updateLayerReferences, updateProjects,
233
+ getDefaultCategories, getDefaultSublegends,
234
+ convertFilterQueriesToString, convertFilterQueriesToObject } from '../../hooks/index.js'
235
+ &nbsp;
236
+ const { setNow, discard, when } = common
237
+ &nbsp;
238
+ export default {
239
+ before: {
240
+ all: [coreHooks.marshallHttpQuery],
241
+ find: [
242
+ fuzzySearch({ fields: ['name'] }), coreHooks.diacriticSearch(), filterLayers, coreHooks.distinct
243
+ ],
244
+ get: [],
245
+ create: [
246
+ coreHooks.checkUnique({ field: 'name', query: (query, hook) =&gt; { query.type = _.get(hook, 'data.type') } }),
247
+ coreHooks.convertToString(['baseQuery', 'schema.content']),
248
+ convertFilterQueriesToString,
249
+ setNow('createdAt', 'updatedAt'),
250
+ // This allow to use keys for base queries like 'properties.xxx': 'yyy'
251
+ (hook) =&gt; { _.set(hook, 'params.mongodb.checkKeys', false) }
252
+ ],
253
+ update: [
254
+ coreHooks.populatePreviousObject,
255
+ coreHooks.checkUnique({ field: 'name', query: <span class="fstat-no" title="function not covered" >(query, hook) =&gt; { query.type = _.get(hook, 'params.previousItem.type') } </span>}),
256
+ coreHooks.convertToString(['baseQuery', 'schema.content']),
257
+ convertFilterQueriesToString,
258
+ discard('createdAt', 'updatedAt'),
259
+ setNow('updatedAt')
260
+ ],
261
+ patch: [
262
+ coreHooks.populatePreviousObject,
263
+ coreHooks.checkUnique({ field: 'name', query: (query, hook) =&gt; { query.type = _.get(hook, 'params.previousItem.type') } }),
264
+ coreHooks.convertToString(['baseQuery', 'schema.content']),
265
+ convertFilterQueriesToString,
266
+ discard('createdAt', 'updatedAt'),
267
+ setNow('updatedAt')
268
+ ],
269
+ remove: [
270
+ coreHooks.populatePreviousObject
271
+ ]
272
+ },
273
+ &nbsp;
274
+ after: {
275
+ all: [
276
+ coreHooks.convertToJson(['baseQuery', 'schema.content']),
277
+ convertFilterQueriesToObject,
278
+ coreHooks.convertObjectIDs(['baseQuery.layer'])
279
+ ],
280
+ find: [
281
+ // Merge built-in categories/sublegends (if provided) with user-defined ones
282
+ getDefaultCategories, getDefaultSublegends
283
+ ],
284
+ get: [],
285
+ create: [],
286
+ update: [
287
+ updateLayerReferences
288
+ ],
289
+ patch: [
290
+ updateLayerReferences
291
+ ],
292
+ remove: [
293
+ setNow('updatedAt'),
294
+ updateLayerReferences,
295
+ updateProjects
296
+ ]
297
+ },
298
+ &nbsp;
299
+ error: {
300
+ all: [],
301
+ find: [],
302
+ get: [],
303
+ create: [],
304
+ update: [],
305
+ patch: [],
306
+ remove: []
307
+ }
308
+ }
309
309
  &nbsp;</pre></td></tr></table></pre>
310
310
 
311
311
  <div class='push'></div><!-- for sticky footer -->
@@ -313,7 +313,7 @@
313
313
  <div class='footer quiet pad2 space-top1 center small'>
314
314
  Code coverage generated by
315
315
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
316
- at 2025-05-21T12:01:19.833Z
316
+ at 2025-07-24T10:00:20.508Z
317
317
  </div>
318
318
  <script src="../../../../prettify.js"></script>
319
319
  <script>
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">0% </span>
26
+ <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>0/81</span>
28
+ <span class='fraction'>81/81</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">0% </span>
33
+ <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>0/1</span>
35
+ <span class='fraction'>4/4</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">0% </span>
40
+ <span class="strong">75% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/1</span>
42
+ <span class='fraction'>3/4</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">0% </span>
47
+ <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>0/81</span>
49
+ <span class='fraction'>81/81</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line low'></div>
64
+ <div class='status-line high'></div>
65
65
  <div class="pad1">
66
66
  <table class="coverage-summary">
67
67
  <thead>
@@ -79,18 +79,18 @@
79
79
  </tr>
80
80
  </thead>
81
81
  <tbody><tr>
82
- <td class="file low" data-value="catalog.hooks.js"><a href="catalog.hooks.js.html">catalog.hooks.js</a></td>
83
- <td data-value="0" class="pic low">
84
- <div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
82
+ <td class="file high" data-value="catalog.hooks.js"><a href="catalog.hooks.js.html">catalog.hooks.js</a></td>
83
+ <td data-value="100" class="pic high">
84
+ <div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
85
85
  </td>
86
- <td data-value="0" class="pct low">0%</td>
87
- <td data-value="81" class="abs low">0/81</td>
88
- <td data-value="0" class="pct low">0%</td>
89
- <td data-value="1" class="abs low">0/1</td>
90
- <td data-value="0" class="pct low">0%</td>
91
- <td data-value="1" class="abs low">0/1</td>
92
- <td data-value="0" class="pct low">0%</td>
93
- <td data-value="81" class="abs low">0/81</td>
86
+ <td data-value="100" class="pct high">100%</td>
87
+ <td data-value="81" class="abs high">81/81</td>
88
+ <td data-value="100" class="pct high">100%</td>
89
+ <td data-value="4" class="abs high">4/4</td>
90
+ <td data-value="75" class="pct medium">75%</td>
91
+ <td data-value="4" class="abs medium">3/4</td>
92
+ <td data-value="100" class="pct high">100%</td>
93
+ <td data-value="81" class="abs high">81/81</td>
94
94
  </tr>
95
95
 
96
96
  </tbody>
@@ -101,7 +101,7 @@
101
101
  <div class='footer quiet pad2 space-top1 center small'>
102
102
  Code coverage generated by
103
103
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
104
- at 2025-05-21T12:01:19.833Z
104
+ at 2025-07-24T10:00:20.508Z
105
105
  </div>
106
106
  <script src="../../../../prettify.js"></script>
107
107
  <script>
@@ -1495,7 +1495,7 @@
1495
1495
  <div class='footer quiet pad2 space-top1 center small'>
1496
1496
  Code coverage generated by
1497
1497
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1498
- at 2025-05-21T12:01:19.833Z
1498
+ at 2025-07-24T10:00:20.508Z
1499
1499
  </div>
1500
1500
  <script src="../../../../prettify.js"></script>
1501
1501
  <script>