@kalisio/kdk 2.5.2 → 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 (275) hide show
  1. package/core/client/components/input/KShapePicker.vue +4 -4
  2. package/coverage/core/api/application.js.html +344 -344
  3. package/coverage/core/api/authentication.js.html +79 -79
  4. package/coverage/core/api/db.js.html +167 -167
  5. package/coverage/core/api/hooks/hooks.authentication.js.html +12 -12
  6. package/coverage/core/api/hooks/hooks.authorisations.js.html +166 -163
  7. package/coverage/core/api/hooks/hooks.groups.js.html +1 -1
  8. package/coverage/core/api/hooks/hooks.logger.js.html +18 -18
  9. package/coverage/core/api/hooks/hooks.model.js.html +280 -268
  10. package/coverage/core/api/hooks/hooks.organisations.js.html +1 -1
  11. package/coverage/core/api/hooks/hooks.push.js.html +12 -12
  12. package/coverage/core/api/hooks/hooks.query.js.html +92 -92
  13. package/coverage/core/api/hooks/hooks.schemas.js.html +13 -13
  14. package/coverage/core/api/hooks/hooks.service.js.html +28 -28
  15. package/coverage/core/api/hooks/hooks.storage.js.html +7 -7
  16. package/coverage/core/api/hooks/hooks.users.js.html +48 -48
  17. package/coverage/core/api/hooks/index.html +49 -49
  18. package/coverage/core/api/hooks/index.js.html +11 -11
  19. package/coverage/core/api/index.html +42 -42
  20. package/coverage/core/api/index.js.html +22 -22
  21. package/coverage/core/api/marshall.js.html +127 -127
  22. package/coverage/core/api/models/groups.model.mongodb.js.html +1 -1
  23. package/coverage/core/api/models/index.html +1 -1
  24. package/coverage/core/api/models/messages.model.mongodb.js.html +1 -1
  25. package/coverage/core/api/models/organisations.model.mongodb.js.html +1 -1
  26. package/coverage/core/api/models/tags.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 +108 -120
  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/groups/groups.hooks.js.html +1 -1
  38. package/coverage/core/api/services/groups/index.html +1 -1
  39. package/coverage/core/api/services/import-export/import-export.hooks.js.html +1 -1
  40. package/coverage/core/api/services/import-export/import-export.service.js.html +1 -1
  41. package/coverage/core/api/services/import-export/index.html +1 -1
  42. package/coverage/core/api/services/index.html +15 -15
  43. package/coverage/core/api/services/index.js.html +97 -85
  44. package/coverage/core/api/services/mailer/index.html +1 -1
  45. package/coverage/core/api/services/mailer/mailer.hooks.js.html +1 -1
  46. package/coverage/core/api/services/mailer/mailer.service.js.html +1 -1
  47. package/coverage/core/api/services/messages/index.html +5 -5
  48. package/coverage/core/api/services/messages/messages.hooks.js.html +11 -8
  49. package/coverage/core/api/services/organisations/index.html +1 -1
  50. package/coverage/core/api/services/organisations/organisations.hooks.js.html +1 -1
  51. package/coverage/core/api/services/organisations/organisations.service.js.html +1 -1
  52. package/coverage/core/api/services/push/index.html +1 -1
  53. package/coverage/core/api/services/push/push.hooks.js.html +1 -1
  54. package/coverage/core/api/services/push/push.service.js.html +1 -1
  55. package/coverage/core/api/services/storage/index.html +1 -1
  56. package/coverage/core/api/services/storage/storage.hooks.js.html +36 -36
  57. package/coverage/core/api/services/storage/storage.service.js.html +30 -30
  58. package/coverage/core/api/services/tags/index.html +1 -1
  59. package/coverage/core/api/services/tags/tags.hooks.js.html +1 -1
  60. package/coverage/core/api/services/users/index.html +7 -7
  61. package/coverage/core/api/services/users/users.hooks.js.html +83 -80
  62. package/coverage/core/api/services/users/users.service.js.html +4 -4
  63. package/coverage/core/api/utils.js.html +1 -1
  64. package/coverage/core/common/errors.js.html +2 -2
  65. package/coverage/core/common/index.html +30 -30
  66. package/coverage/core/common/index.js.html +11 -11
  67. package/coverage/core/common/permissions.js.html +187 -187
  68. package/coverage/core/common/schema.js.html +26 -26
  69. package/coverage/core/common/utils.js.html +61 -61
  70. package/coverage/core/common/utils.offline.js.html +6 -6
  71. package/coverage/index.html +179 -164
  72. package/coverage/lcov-report/core/api/application.js.html +344 -344
  73. package/coverage/lcov-report/core/api/authentication.js.html +79 -79
  74. package/coverage/lcov-report/core/api/db.js.html +167 -167
  75. package/coverage/lcov-report/core/api/hooks/hooks.authentication.js.html +12 -12
  76. package/coverage/lcov-report/core/api/hooks/hooks.authorisations.js.html +166 -163
  77. package/coverage/lcov-report/core/api/hooks/hooks.groups.js.html +1 -1
  78. package/coverage/lcov-report/core/api/hooks/hooks.logger.js.html +18 -18
  79. package/coverage/lcov-report/core/api/hooks/hooks.model.js.html +280 -268
  80. package/coverage/lcov-report/core/api/hooks/hooks.organisations.js.html +1 -1
  81. package/coverage/lcov-report/core/api/hooks/hooks.push.js.html +12 -12
  82. package/coverage/lcov-report/core/api/hooks/hooks.query.js.html +92 -92
  83. package/coverage/lcov-report/core/api/hooks/hooks.schemas.js.html +13 -13
  84. package/coverage/lcov-report/core/api/hooks/hooks.service.js.html +28 -28
  85. package/coverage/lcov-report/core/api/hooks/hooks.storage.js.html +7 -7
  86. package/coverage/lcov-report/core/api/hooks/hooks.users.js.html +48 -48
  87. package/coverage/lcov-report/core/api/hooks/index.html +49 -49
  88. package/coverage/lcov-report/core/api/hooks/index.js.html +11 -11
  89. package/coverage/lcov-report/core/api/index.html +42 -42
  90. package/coverage/lcov-report/core/api/index.js.html +22 -22
  91. package/coverage/lcov-report/core/api/marshall.js.html +127 -127
  92. package/coverage/lcov-report/core/api/models/groups.model.mongodb.js.html +1 -1
  93. package/coverage/lcov-report/core/api/models/index.html +1 -1
  94. package/coverage/lcov-report/core/api/models/messages.model.mongodb.js.html +1 -1
  95. package/coverage/lcov-report/core/api/models/organisations.model.mongodb.js.html +1 -1
  96. package/coverage/lcov-report/core/api/models/tags.model.mongodb.js.html +1 -1
  97. package/coverage/lcov-report/core/api/models/users.model.mongodb.js.html +11 -11
  98. package/coverage/lcov-report/core/api/services/account/account.hooks.js.html +42 -42
  99. package/coverage/lcov-report/core/api/services/account/account.service.js.html +34 -34
  100. package/coverage/lcov-report/core/api/services/account/index.html +1 -1
  101. package/coverage/lcov-report/core/api/services/authorisations/authorisations.hooks.js.html +34 -34
  102. package/coverage/lcov-report/core/api/services/authorisations/authorisations.service.js.html +108 -120
  103. package/coverage/lcov-report/core/api/services/authorisations/index.html +19 -19
  104. package/coverage/lcov-report/core/api/services/databases/databases.hooks.js.html +1 -1
  105. package/coverage/lcov-report/core/api/services/databases/databases.service.js.html +1 -1
  106. package/coverage/lcov-report/core/api/services/databases/index.html +1 -1
  107. package/coverage/lcov-report/core/api/services/groups/groups.hooks.js.html +1 -1
  108. package/coverage/lcov-report/core/api/services/groups/index.html +1 -1
  109. package/coverage/lcov-report/core/api/services/import-export/import-export.hooks.js.html +1 -1
  110. package/coverage/lcov-report/core/api/services/import-export/import-export.service.js.html +1 -1
  111. package/coverage/lcov-report/core/api/services/import-export/index.html +1 -1
  112. package/coverage/lcov-report/core/api/services/index.html +15 -15
  113. package/coverage/lcov-report/core/api/services/index.js.html +97 -85
  114. package/coverage/lcov-report/core/api/services/mailer/index.html +1 -1
  115. package/coverage/lcov-report/core/api/services/mailer/mailer.hooks.js.html +1 -1
  116. package/coverage/lcov-report/core/api/services/mailer/mailer.service.js.html +1 -1
  117. package/coverage/lcov-report/core/api/services/messages/index.html +5 -5
  118. package/coverage/lcov-report/core/api/services/messages/messages.hooks.js.html +11 -8
  119. package/coverage/lcov-report/core/api/services/organisations/index.html +1 -1
  120. package/coverage/lcov-report/core/api/services/organisations/organisations.hooks.js.html +1 -1
  121. package/coverage/lcov-report/core/api/services/organisations/organisations.service.js.html +1 -1
  122. package/coverage/lcov-report/core/api/services/push/index.html +1 -1
  123. package/coverage/lcov-report/core/api/services/push/push.hooks.js.html +1 -1
  124. package/coverage/lcov-report/core/api/services/push/push.service.js.html +1 -1
  125. package/coverage/lcov-report/core/api/services/storage/index.html +1 -1
  126. package/coverage/lcov-report/core/api/services/storage/storage.hooks.js.html +36 -36
  127. package/coverage/lcov-report/core/api/services/storage/storage.service.js.html +30 -30
  128. package/coverage/lcov-report/core/api/services/tags/index.html +1 -1
  129. package/coverage/lcov-report/core/api/services/tags/tags.hooks.js.html +1 -1
  130. package/coverage/lcov-report/core/api/services/users/index.html +7 -7
  131. package/coverage/lcov-report/core/api/services/users/users.hooks.js.html +83 -80
  132. package/coverage/lcov-report/core/api/services/users/users.service.js.html +4 -4
  133. package/coverage/lcov-report/core/api/utils.js.html +1 -1
  134. package/coverage/lcov-report/core/common/errors.js.html +2 -2
  135. package/coverage/lcov-report/core/common/index.html +30 -30
  136. package/coverage/lcov-report/core/common/index.js.html +11 -11
  137. package/coverage/lcov-report/core/common/permissions.js.html +187 -187
  138. package/coverage/lcov-report/core/common/schema.js.html +26 -26
  139. package/coverage/lcov-report/core/common/utils.js.html +61 -61
  140. package/coverage/lcov-report/core/common/utils.offline.js.html +6 -6
  141. package/coverage/lcov-report/index.html +179 -164
  142. package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +348 -258
  143. package/coverage/lcov-report/map/api/hooks/hooks.features.js.html +218 -218
  144. package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +795 -810
  145. package/coverage/lcov-report/map/api/hooks/index.html +54 -54
  146. package/coverage/lcov-report/map/api/hooks/index.js.html +16 -16
  147. package/coverage/lcov-report/map/api/index.html +32 -32
  148. package/coverage/lcov-report/map/api/index.js.html +46 -46
  149. package/coverage/lcov-report/map/api/marshall.js.html +72 -72
  150. package/coverage/lcov-report/map/api/models/alerts.model.mongodb.js.html +24 -24
  151. package/coverage/lcov-report/map/api/models/catalog.model.mongodb.js.html +69 -27
  152. package/coverage/lcov-report/map/api/models/features.model.mongodb.js.html +80 -80
  153. package/coverage/lcov-report/map/api/models/index.html +69 -54
  154. package/coverage/lcov-report/map/api/models/projects.model.mongodb.js.html +26 -26
  155. package/coverage/lcov-report/map/api/models/styles.model.mongodb.js.html +112 -0
  156. package/coverage/lcov-report/map/api/services/alerts/alerts.hooks.js.html +136 -136
  157. package/coverage/lcov-report/map/api/services/alerts/alerts.service.js.html +343 -343
  158. package/coverage/lcov-report/map/api/services/alerts/index.html +32 -32
  159. package/coverage/lcov-report/map/api/services/catalog/catalog.hooks.js.html +177 -162
  160. package/coverage/lcov-report/map/api/services/catalog/index.html +21 -21
  161. package/coverage/lcov-report/map/api/services/daptiles/daptiles.service.js.html +1 -1
  162. package/coverage/lcov-report/map/api/services/daptiles/index.html +1 -1
  163. package/coverage/lcov-report/map/api/services/features/features.hooks.js.html +160 -160
  164. package/coverage/lcov-report/map/api/services/features/features.service.js.html +117 -117
  165. package/coverage/lcov-report/map/api/services/features/index.html +31 -31
  166. package/coverage/lcov-report/map/api/services/index.html +21 -21
  167. package/coverage/lcov-report/map/api/services/index.js.html +404 -296
  168. package/coverage/lcov-report/map/api/services/projects/index.html +21 -21
  169. package/coverage/lcov-report/map/api/services/projects/projects.hooks.js.html +237 -237
  170. package/coverage/lcov-report/map/api/services/styles/index.html +116 -0
  171. package/coverage/lcov-report/map/api/services/styles/styles.hooks.js.html +196 -0
  172. package/coverage/lcov-report/map/common/dynamic-grid-source.js.html +68 -68
  173. package/coverage/lcov-report/map/common/errors.js.html +16 -16
  174. package/coverage/lcov-report/map/common/geotiff-grid-source.js.html +267 -267
  175. package/coverage/lcov-report/map/common/grid.js.html +554 -554
  176. package/coverage/lcov-report/map/common/index.html +158 -158
  177. package/coverage/lcov-report/map/common/index.js.html +68 -68
  178. package/coverage/lcov-report/map/common/meteo-model-grid-source.js.html +73 -73
  179. package/coverage/lcov-report/map/common/moment-utils.js.html +18 -18
  180. package/coverage/lcov-report/map/common/opendap-grid-source.js.html +484 -484
  181. package/coverage/lcov-report/map/common/opendap-utils.js.html +353 -353
  182. package/coverage/lcov-report/map/common/permissions.js.html +42 -36
  183. package/coverage/lcov-report/map/common/time-based-grid-source.js.html +59 -59
  184. package/coverage/lcov-report/map/common/tms-utils.js.html +6 -6
  185. package/coverage/lcov-report/map/common/wcs-grid-source.js.html +190 -190
  186. package/coverage/lcov-report/map/common/wcs-utils.js.html +339 -339
  187. package/coverage/lcov-report/map/common/weacast-grid-source.js.html +345 -345
  188. package/coverage/lcov-report/map/common/wfs-utils.js.html +11 -11
  189. package/coverage/lcov-report/map/common/wms-utils.js.html +8 -8
  190. package/coverage/lcov-report/map/common/wmts-utils.js.html +7 -7
  191. package/coverage/lcov.info +7022 -5894
  192. package/coverage/map/api/hooks/hooks.catalog.js.html +348 -258
  193. package/coverage/map/api/hooks/hooks.features.js.html +218 -218
  194. package/coverage/map/api/hooks/hooks.query.js.html +795 -810
  195. package/coverage/map/api/hooks/index.html +54 -54
  196. package/coverage/map/api/hooks/index.js.html +16 -16
  197. package/coverage/map/api/index.html +32 -32
  198. package/coverage/map/api/index.js.html +46 -46
  199. package/coverage/map/api/marshall.js.html +72 -72
  200. package/coverage/map/api/models/alerts.model.mongodb.js.html +24 -24
  201. package/coverage/map/api/models/catalog.model.mongodb.js.html +69 -27
  202. package/coverage/map/api/models/features.model.mongodb.js.html +80 -80
  203. package/coverage/map/api/models/index.html +69 -54
  204. package/coverage/map/api/models/projects.model.mongodb.js.html +26 -26
  205. package/coverage/map/api/models/styles.model.mongodb.js.html +112 -0
  206. package/coverage/map/api/services/alerts/alerts.hooks.js.html +136 -136
  207. package/coverage/map/api/services/alerts/alerts.service.js.html +343 -343
  208. package/coverage/map/api/services/alerts/index.html +32 -32
  209. package/coverage/map/api/services/catalog/catalog.hooks.js.html +177 -162
  210. package/coverage/map/api/services/catalog/index.html +21 -21
  211. package/coverage/map/api/services/daptiles/daptiles.service.js.html +1 -1
  212. package/coverage/map/api/services/daptiles/index.html +1 -1
  213. package/coverage/map/api/services/features/features.hooks.js.html +160 -160
  214. package/coverage/map/api/services/features/features.service.js.html +117 -117
  215. package/coverage/map/api/services/features/index.html +31 -31
  216. package/coverage/map/api/services/index.html +21 -21
  217. package/coverage/map/api/services/index.js.html +404 -296
  218. package/coverage/map/api/services/projects/index.html +21 -21
  219. package/coverage/map/api/services/projects/projects.hooks.js.html +237 -237
  220. package/coverage/map/api/services/styles/index.html +116 -0
  221. package/coverage/map/api/services/styles/styles.hooks.js.html +196 -0
  222. package/coverage/map/common/dynamic-grid-source.js.html +68 -68
  223. package/coverage/map/common/errors.js.html +16 -16
  224. package/coverage/map/common/geotiff-grid-source.js.html +267 -267
  225. package/coverage/map/common/grid.js.html +554 -554
  226. package/coverage/map/common/index.html +158 -158
  227. package/coverage/map/common/index.js.html +68 -68
  228. package/coverage/map/common/meteo-model-grid-source.js.html +73 -73
  229. package/coverage/map/common/moment-utils.js.html +18 -18
  230. package/coverage/map/common/opendap-grid-source.js.html +484 -484
  231. package/coverage/map/common/opendap-utils.js.html +353 -353
  232. package/coverage/map/common/permissions.js.html +42 -36
  233. package/coverage/map/common/time-based-grid-source.js.html +59 -59
  234. package/coverage/map/common/tms-utils.js.html +6 -6
  235. package/coverage/map/common/wcs-grid-source.js.html +190 -190
  236. package/coverage/map/common/wcs-utils.js.html +339 -339
  237. package/coverage/map/common/weacast-grid-source.js.html +345 -345
  238. package/coverage/map/common/wfs-utils.js.html +11 -11
  239. package/coverage/map/common/wms-utils.js.html +8 -8
  240. package/coverage/map/common/wmts-utils.js.html +7 -7
  241. package/coverage/tmp/coverage-151198-1753351220086-0.json +1 -0
  242. package/coverage/tmp/coverage-151210-1753351220070-0.json +1 -0
  243. package/coverage/tmp/coverage-151221-1753351129816-0.json +1 -0
  244. package/coverage/tmp/coverage-151233-1753351129803-0.json +1 -0
  245. package/coverage/tmp/coverage-151240-1753351129770-0.json +1 -0
  246. package/coverage/tmp/coverage-151307-1753351220058-0.json +1 -0
  247. package/coverage/tmp/coverage-151319-1753351220044-0.json +1 -0
  248. package/coverage/tmp/coverage-151326-1753351220010-0.json +1 -0
  249. package/map/api/services/styles/styles.hooks.js +1 -1
  250. package/map/client/components/KLayerEditor.vue +4 -0
  251. package/map/client/components/catalog/KLayerCategories.vue +2 -0
  252. package/map/client/components/stickies/KLevelSlider.vue +10 -8
  253. package/map/client/components/styles/KStyleEditor.vue +1 -1
  254. package/map/client/components/styles/KStyleManager.vue +7 -1
  255. package/map/client/composables/highlight.js +5 -1
  256. package/map/client/i18n/map_en.json +4 -1
  257. package/map/client/i18n/map_fr.json +4 -1
  258. package/map/client/mixins/globe/mixin.geojson-layers.js +11 -5
  259. package/map/client/mixins/mixin.activity.js +9 -0
  260. package/map/client/utils/utils.layers.js +0 -2
  261. package/package.json +1 -1
  262. package/test/api/core/push.test.js +1 -1
  263. package/test/api/core/test-log-2025-02-05.log +23 -0
  264. package/test/api/core/test-log-2025-05-21.log +15 -0
  265. package/test/api/core/test-log-2025-06-25.log +9 -0
  266. package/test/api/core/test-log-2025-07-24.log +44 -0
  267. package/test/api/map/test-log-2025-05-27.log +13 -0
  268. package/test/api/map/test-log-2025-06-23.log +7 -0
  269. package/test/api/map/{test-log-2025-05-26.log → test-log-2025-07-24.log} +3 -4
  270. package/coverage/tmp/coverage-122123-1739872365211-0.json +0 -1
  271. package/coverage/tmp/coverage-122135-1739872365196-0.json +0 -1
  272. package/coverage/tmp/coverage-122146-1739872365184-0.json +0 -1
  273. package/coverage/tmp/coverage-122158-1739872365169-0.json +0 -1
  274. package/coverage/tmp/coverage-122165-1739872365141-0.json +0 -1
  275. package/test/api/core/test-log-2025-05-26.log +0 -22
@@ -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/13</span>
28
+ <span class='fraction'>15/15</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'>2/2</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/1</span>
42
+ <span class='fraction'>1/1</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/13</span>
49
+ <span class='fraction'>15/15</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>
@@ -76,32 +76,38 @@
76
76
  <a name='L11'></a><a href='#L11'>11</a>
77
77
  <a name='L12'></a><a href='#L12'>12</a>
78
78
  <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
80
- <span class="cline-any cline-no">&nbsp;</span>
81
- <span class="cline-any cline-no">&nbsp;</span>
82
- <span class="cline-any cline-no">&nbsp;</span>
83
- <span class="cline-any cline-no">&nbsp;</span>
84
- <span class="cline-any cline-no">&nbsp;</span>
85
- <span class="cline-any cline-no">&nbsp;</span>
86
- <span class="cline-any cline-no">&nbsp;</span>
87
- <span class="cline-any cline-no">&nbsp;</span>
88
- <span class="cline-any cline-no">&nbsp;</span>
89
- <span class="cline-any cline-no">&nbsp;</span>
90
- <span class="cline-any cline-no">&nbsp;</span>
91
- <span class="cline-any cline-no">&nbsp;</span>
92
- <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" >// Hook computing map abilities for a given user</span></span></span>
93
- <span class="cstat-no" title="statement not covered" >export function defineUserAbilities (subject, can, cannot) {</span>
94
- <span class="cstat-no" title="statement not covered" > can('service', 'geocoder')</span>
95
- <span class="cstat-no" title="statement not covered" > can('create', 'geocoder')</span>
96
- <span class="cstat-no" title="statement not covered" > can('service', 'catalog')</span>
97
- <span class="cstat-no" title="statement not covered" > can('read', 'catalog')</span>
98
- <span class="cstat-no" title="statement not covered" > can('service', 'projects')</span>
99
- <span class="cstat-no" title="statement not covered" > can('read', 'projects')</span>
100
- <span class="cstat-no" title="statement not covered" > can('service', 'alerts')</span>
101
- <span class="cstat-no" title="statement not covered" > can('read', 'alerts')</span>
102
- <span class="cstat-no" title="statement not covered" > // can('service', 'daptiles')</span>
103
- <span class="cstat-no" title="statement not covered" > // can('get', 'daptiles')</span>
104
- <span class="cstat-no" title="statement not covered" >}</span>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
82
+ <span class="cline-any cline-yes">1x</span>
83
+ <span class="cline-any cline-yes">8x</span>
84
+ <span class="cline-any cline-yes">8x</span>
85
+ <span class="cline-any cline-yes">8x</span>
86
+ <span class="cline-any cline-yes">8x</span>
87
+ <span class="cline-any cline-yes">8x</span>
88
+ <span class="cline-any cline-yes">8x</span>
89
+ <span class="cline-any cline-yes">8x</span>
90
+ <span class="cline-any cline-yes">8x</span>
91
+ <span class="cline-any cline-yes">8x</span>
92
+ <span class="cline-any cline-yes">8x</span>
93
+ <span class="cline-any cline-yes">8x</span>
94
+ <span class="cline-any cline-yes">8x</span>
95
+ <span class="cline-any cline-yes">8x</span>
96
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">// Hook computing map abilities for a given user
97
+ export function defineUserAbilities (subject, can, cannot) {
98
+ can('service', 'geocoder')
99
+ can('create', 'geocoder')
100
+ can('service', 'catalog')
101
+ can('read', 'catalog')
102
+ can('service', 'projects')
103
+ can('read', 'projects')
104
+ can('service', 'alerts')
105
+ can('read', 'alerts')
106
+ can('service', 'styles')
107
+ can('read', 'styles')
108
+ // can('service', 'daptiles')
109
+ // can('get', 'daptiles')
110
+ }
105
111
  &nbsp;</pre></td></tr></table></pre>
106
112
 
107
113
  <div class='push'></div><!-- for sticky footer -->
@@ -109,7 +115,7 @@
109
115
  <div class='footer quiet pad2 space-top1 center small'>
110
116
  Code coverage generated by
111
117
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
112
- at 2025-02-18T09:52:45.637Z
118
+ at 2025-07-24T10:00:20.508Z
113
119
  </div>
114
120
  <script src="../../prettify.js"></script>
115
121
  <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">22.52% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>0/111</span>
28
+ <span class='fraction'>25/111</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'>2/2</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">12.5% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>0/1</span>
42
+ <span class='fraction'>1/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">22.52% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>0/111</span>
49
+ <span class='fraction'>25/111</span>
50
50
  </div>
51
51
 
52
52
 
@@ -174,15 +174,30 @@
174
174
  <a name='L109'></a><a href='#L109'>109</a>
175
175
  <a name='L110'></a><a href='#L110'>110</a>
176
176
  <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
177
+ <a name='L112'></a><a href='#L112'>112</a></td><td class="line-coverage quiet"><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>
178
189
  <span class="cline-any cline-no">&nbsp;</span>
179
190
  <span class="cline-any cline-no">&nbsp;</span>
180
191
  <span class="cline-any cline-no">&nbsp;</span>
181
192
  <span class="cline-any cline-no">&nbsp;</span>
193
+ <span class="cline-any cline-yes">1x</span>
194
+ <span class="cline-any cline-yes">1x</span>
182
195
  <span class="cline-any cline-no">&nbsp;</span>
183
196
  <span class="cline-any cline-no">&nbsp;</span>
184
197
  <span class="cline-any cline-no">&nbsp;</span>
185
198
  <span class="cline-any cline-no">&nbsp;</span>
199
+ <span class="cline-any cline-yes">1x</span>
200
+ <span class="cline-any cline-yes">1x</span>
186
201
  <span class="cline-any cline-no">&nbsp;</span>
187
202
  <span class="cline-any cline-no">&nbsp;</span>
188
203
  <span class="cline-any cline-no">&nbsp;</span>
@@ -212,6 +227,8 @@
212
227
  <span class="cline-any cline-no">&nbsp;</span>
213
228
  <span class="cline-any cline-no">&nbsp;</span>
214
229
  <span class="cline-any cline-no">&nbsp;</span>
230
+ <span class="cline-any cline-yes">1x</span>
231
+ <span class="cline-any cline-yes">1x</span>
215
232
  <span class="cline-any cline-no">&nbsp;</span>
216
233
  <span class="cline-any cline-no">&nbsp;</span>
217
234
  <span class="cline-any cline-no">&nbsp;</span>
@@ -225,10 +242,14 @@
225
242
  <span class="cline-any cline-no">&nbsp;</span>
226
243
  <span class="cline-any cline-no">&nbsp;</span>
227
244
  <span class="cline-any cline-no">&nbsp;</span>
245
+ <span class="cline-any cline-yes">1x</span>
246
+ <span class="cline-any cline-yes">1x</span>
228
247
  <span class="cline-any cline-no">&nbsp;</span>
229
248
  <span class="cline-any cline-no">&nbsp;</span>
230
249
  <span class="cline-any cline-no">&nbsp;</span>
231
250
  <span class="cline-any cline-no">&nbsp;</span>
251
+ <span class="cline-any cline-yes">1x</span>
252
+ <span class="cline-any cline-yes">1x</span>
232
253
  <span class="cline-any cline-no">&nbsp;</span>
233
254
  <span class="cline-any cline-no">&nbsp;</span>
234
255
  <span class="cline-any cline-no">&nbsp;</span>
@@ -241,6 +262,8 @@
241
262
  <span class="cline-any cline-no">&nbsp;</span>
242
263
  <span class="cline-any cline-no">&nbsp;</span>
243
264
  <span class="cline-any cline-no">&nbsp;</span>
265
+ <span class="cline-any cline-yes">1x</span>
266
+ <span class="cline-any cline-yes">1x</span>
244
267
  <span class="cline-any cline-no">&nbsp;</span>
245
268
  <span class="cline-any cline-no">&nbsp;</span>
246
269
  <span class="cline-any cline-no">&nbsp;</span>
@@ -261,54 +284,31 @@
261
284
  <span class="cline-any cline-no">&nbsp;</span>
262
285
  <span class="cline-any cline-no">&nbsp;</span>
263
286
  <span class="cline-any cline-no">&nbsp;</span>
264
- <span class="cline-any cline-no">&nbsp;</span>
265
- <span class="cline-any cline-no">&nbsp;</span>
266
- <span class="cline-any cline-no">&nbsp;</span>
267
- <span class="cline-any cline-no">&nbsp;</span>
268
- <span class="cline-any cline-no">&nbsp;</span>
269
- <span class="cline-any cline-no">&nbsp;</span>
270
- <span class="cline-any cline-no">&nbsp;</span>
271
- <span class="cline-any cline-no">&nbsp;</span>
272
- <span class="cline-any cline-no">&nbsp;</span>
273
- <span class="cline-any cline-no">&nbsp;</span>
274
- <span class="cline-any cline-no">&nbsp;</span>
275
- <span class="cline-any cline-no">&nbsp;</span>
276
- <span class="cline-any cline-no">&nbsp;</span>
277
- <span class="cline-any cline-no">&nbsp;</span>
278
- <span class="cline-any cline-no">&nbsp;</span>
279
- <span class="cline-any cline-no">&nbsp;</span>
280
- <span class="cline-any cline-no">&nbsp;</span>
281
- <span class="cline-any cline-no">&nbsp;</span>
282
- <span class="cline-any cline-no">&nbsp;</span>
283
- <span class="cline-any cline-no">&nbsp;</span>
284
- <span class="cline-any cline-no">&nbsp;</span>
285
- <span class="cline-any cline-no">&nbsp;</span>
286
- <span class="cline-any cline-no">&nbsp;</span>
287
- <span class="cline-any cline-no">&nbsp;</span>
288
- <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>
289
- <span class="cstat-no" title="statement not covered" >import moment from 'moment'</span>
290
- <span class="cstat-no" title="statement not covered" >import { makeGridSource, extractGridSourceConfig } from './grid.js'</span>
291
- <span class="cstat-no" title="statement not covered" >import { DynamicGridSource } from './dynamic-grid-source.js'</span>
292
- <span class="cstat-no" title="statement not covered" >import { readAsTimeOrDuration, makeTime } from './moment-utils.js'</span>
293
- <span class="cstat-no" title="statement not covered" ></span>
294
- <span class="cstat-no" title="statement not covered" >export class TimeBasedGridSource extends DynamicGridSource {</span>
295
- <span class="cstat-no" title="statement not covered" > static getKey () {</span>
296
- <span class="cstat-no" title="statement not covered" > return 'time_based'</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" > constructor (options) {</span>
287
+ <span class="cline-any cline-yes">1x</span>
288
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import _ from 'lodash'
289
+ import moment from 'moment'
290
+ import { makeGridSource, extractGridSourceConfig } from './grid.js'
291
+ import { DynamicGridSource } from './dynamic-grid-source.js'
292
+ import { readAsTimeOrDuration, makeTime } from './moment-utils.js'
293
+ &nbsp;
294
+ export class TimeBasedGridSource extends DynamicGridSource {
295
+ static getKey () {
296
+ return 'time_based'
297
+ }
298
+ &nbsp;
299
+ <span class="fstat-no" title="function not covered" > constructor (options) {</span>
300
300
  <span class="cstat-no" title="statement not covered" > super(options)</span>
301
301
  <span class="cstat-no" title="statement not covered" ></span>
302
302
  <span class="cstat-no" title="statement not covered" > this.options = options</span>
303
303
  <span class="cstat-no" title="statement not covered" > }</span>
304
- <span class="cstat-no" title="statement not covered" ></span>
305
- <span class="cstat-no" title="statement not covered" > setTime (time) {</span>
304
+ &nbsp;
305
+ <span class="fstat-no" title="function not covered" > setTime (time) {</span>
306
306
  <span class="cstat-no" title="statement not covered" > this.updateCtx.time = time.clone()</span>
307
307
  <span class="cstat-no" title="statement not covered" > this.updateCtx.time.utc()</span>
308
308
  <span class="cstat-no" title="statement not covered" > this.queueUpdate()</span>
309
309
  <span class="cstat-no" title="statement not covered" > }</span>
310
- <span class="cstat-no" title="statement not covered" ></span>
311
- <span class="cstat-no" title="statement not covered" > async setup (config) {</span>
310
+ &nbsp;
311
+ <span class="fstat-no" title="function not covered" > async setup (config) {</span>
312
312
  <span class="cstat-no" title="statement not covered" > this.candidates = []</span>
313
313
  <span class="cstat-no" title="statement not covered" ></span>
314
314
  <span class="cstat-no" title="statement not covered" > for (const source of config.sources) {</span>
@@ -338,8 +338,8 @@
338
338
  <span class="cstat-no" title="statement not covered" > this.candidates.push(candidate)</span>
339
339
  <span class="cstat-no" title="statement not covered" > }</span>
340
340
  <span class="cstat-no" title="statement not covered" > }</span>
341
- <span class="cstat-no" title="statement not covered" ></span>
342
- <span class="cstat-no" title="statement not covered" > makeBuildContext (updateCtx) {</span>
341
+ &nbsp;
342
+ <span class="fstat-no" title="function not covered" > makeBuildContext (updateCtx) {</span>
343
343
  <span class="cstat-no" title="statement not covered" > const ctx = Object.assign({}, updateCtx)</span>
344
344
  <span class="cstat-no" title="statement not covered" ></span>
345
345
  <span class="cstat-no" title="statement not covered" > ctx.candidate = this.selectCandidate(ctx.time)</span>
@@ -353,14 +353,14 @@
353
353
  <span class="cstat-no" title="statement not covered" ></span>
354
354
  <span class="cstat-no" title="statement not covered" > return ctx</span>
355
355
  <span class="cstat-no" title="statement not covered" > }</span>
356
- <span class="cstat-no" title="statement not covered" ></span>
357
- <span class="cstat-no" title="statement not covered" > shouldSkipUpdate (newContext, oldContext) {</span>
356
+ &nbsp;
357
+ <span class="fstat-no" title="function not covered" > shouldSkipUpdate (newContext, oldContext) {</span>
358
358
  <span class="cstat-no" title="statement not covered" > if (oldContext.candidate !== newContext.candidate) return false</span>
359
359
  <span class="cstat-no" title="statement not covered" > if (oldContext.stepTime &amp;&amp; newContext.stepTime &amp;&amp; !oldContext.stepTime.isSame(newContext.stepTime)) return false</span>
360
360
  <span class="cstat-no" title="statement not covered" > return true</span>
361
361
  <span class="cstat-no" title="statement not covered" > }</span>
362
- <span class="cstat-no" title="statement not covered" ></span>
363
- <span class="cstat-no" title="statement not covered" > buildSourceAndConfig (ctx) {</span>
362
+ &nbsp;
363
+ <span class="fstat-no" title="function not covered" > buildSourceAndConfig (ctx) {</span>
364
364
  <span class="cstat-no" title="statement not covered" > let source = null</span>
365
365
  <span class="cstat-no" title="statement not covered" > let config = null</span>
366
366
  <span class="cstat-no" title="statement not covered" ></span>
@@ -373,8 +373,8 @@
373
373
  <span class="cstat-no" title="statement not covered" ></span>
374
374
  <span class="cstat-no" title="statement not covered" > return [source, config]</span>
375
375
  <span class="cstat-no" title="statement not covered" > }</span>
376
- <span class="cstat-no" title="statement not covered" ></span>
377
- <span class="cstat-no" title="statement not covered" > selectCandidate (time) {</span>
376
+ &nbsp;
377
+ <span class="fstat-no" title="function not covered" > selectCandidate (time) {</span>
378
378
  <span class="cstat-no" title="statement not covered" > const now = moment()</span>
379
379
  <span class="cstat-no" title="statement not covered" ></span>
380
380
  <span class="cstat-no" title="statement not covered" > let candidate = null</span>
@@ -395,7 +395,7 @@
395
395
  <span class="cstat-no" title="statement not covered" ></span>
396
396
  <span class="cstat-no" title="statement not covered" > return candidate</span>
397
397
  <span class="cstat-no" title="statement not covered" > }</span>
398
- <span class="cstat-no" title="statement not covered" >}</span>
398
+ }
399
399
  &nbsp;</pre></td></tr></table></pre>
400
400
 
401
401
  <div class='push'></div><!-- for sticky footer -->
@@ -403,7 +403,7 @@
403
403
  <div class='footer quiet pad2 space-top1 center small'>
404
404
  Code coverage generated by
405
405
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
406
- at 2025-02-18T09:52:45.637Z
406
+ at 2025-07-24T10:00:20.508Z
407
407
  </div>
408
408
  <script src="../../prettify.js"></script>
409
409
  <script>
@@ -194,16 +194,16 @@
194
194
  <span class="cstat-no" title="statement not covered" >import xml2js from 'xml2js'</span>
195
195
  <span class="cstat-no" title="statement not covered" >import { buildUrl } from '../../core/common/index.js'</span>
196
196
  <span class="cstat-no" title="statement not covered" ></span>
197
- <span class="cstat-no" title="statement not covered" >function fetchAsJson (query) {</span>
198
- <span class="cstat-no" title="statement not covered" > return fetch(query, { redirect: 'follow' })</span>
197
+ <span class="cstat-no" title="statement not covered" >function fetchAsJson (query, headers = {}) {</span>
198
+ <span class="cstat-no" title="statement not covered" > return fetch(query, { redirect: 'follow', headers })</span>
199
199
  <span class="cstat-no" title="statement not covered" > .then(response =&gt; response.text())</span>
200
200
  <span class="cstat-no" title="statement not covered" > .then(txt =&gt; xml2js.parseStringPromise(txt, { tagNameProcessors: [xml2js.processors.stripPrefix] }))</span>
201
201
  <span class="cstat-no" title="statement not covered" >}</span>
202
202
  <span class="cstat-no" title="statement not covered" ></span>
203
- <span class="cstat-no" title="statement not covered" >export async function discover (tmsUrl, searchParams = {}, caps = null) {</span>
203
+ <span class="cstat-no" title="statement not covered" >export async function discover (tmsUrl, searchParams = {}, headers = {}, caps = null) {</span>
204
204
  <span class="cstat-no" title="statement not covered" > // fetch root caps if not provided</span>
205
205
  <span class="cstat-no" title="statement not covered" > if (!caps) {</span>
206
- <span class="cstat-no" title="statement not covered" > caps = await fetchAsJson(buildUrl(tmsUrl, searchParams))</span>
206
+ <span class="cstat-no" title="statement not covered" > caps = await fetchAsJson(buildUrl(tmsUrl, searchParams), headers)</span>
207
207
  <span class="cstat-no" title="statement not covered" > }</span>
208
208
  <span class="cstat-no" title="statement not covered" ></span>
209
209
  <span class="cstat-no" title="statement not covered" > // decode from caps</span>
@@ -216,7 +216,7 @@
216
216
  <span class="cstat-no" title="statement not covered" > const allPromises = []</span>
217
217
  <span class="cstat-no" title="statement not covered" > for (const layer of layerRoot) {</span>
218
218
  <span class="cstat-no" title="statement not covered" > // fetch detailed layer informations</span>
219
- <span class="cstat-no" title="statement not covered" > const p = fetchAsJson(buildUrl(layer.$.href, searchParams)).then(json =&gt; {</span>
219
+ <span class="cstat-no" title="statement not covered" > const p = fetchAsJson(buildUrl(layer.$.href, searchParams), headers).then(json =&gt; {</span>
220
220
  <span class="cstat-no" title="statement not covered" > const obj = {</span>
221
221
  <span class="cstat-no" title="statement not covered" > id: _.get(json, 'TileMap.Title[0]'),</span>
222
222
  <span class="cstat-no" title="statement not covered" > display: _.get(json, 'TileMap.Title[0]'),</span>
@@ -259,7 +259,7 @@
259
259
  <div class='footer quiet pad2 space-top1 center small'>
260
260
  Code coverage generated by
261
261
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
262
- at 2025-02-18T09:52:45.637Z
262
+ at 2025-07-24T10:00:20.508Z
263
263
  </div>
264
264
  <script src="../../prettify.js"></script>
265
265
  <script>