@kalisio/kdk 1.3.5 → 1.4.2

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 (535) hide show
  1. package/.nyc_output/2c5b7c8e-81db-4d2c-a7a4-02dc640d301f.json +1 -0
  2. package/.nyc_output/{0b8aa700-8daa-49ce-85e7-a8f8965d55f0.json → 2e74ca23-8cf0-4161-9536-f71c2a1a74bb.json} +0 -0
  3. package/.nyc_output/{20df4355-911a-4b16-a8ab-d3392e9f0a7f.json → 81d21e46-766a-46bc-b1b7-143ca577347a.json} +0 -0
  4. package/.nyc_output/a762cb58-70dc-4d39-ab69-928635affa98.json +1 -0
  5. package/.nyc_output/{257af0bb-96c3-465a-b5ef-a1df60078d5f.json → aaf3ebbb-f895-4d7b-9255-bc5dee832570.json} +0 -0
  6. package/.nyc_output/{284aebfa-23fd-425f-9d72-e4b8904dc224.json → dbeb2602-0ac2-4e66-978b-0d29548359ca.json} +0 -0
  7. package/.nyc_output/{5cbee06e-be6e-468a-bd78-4793ee785fe4.json → e47d1e4c-2fff-4dcb-908f-d3081162547c.json} +0 -0
  8. package/.nyc_output/processinfo/{2bece194-92f7-4971-a688-10604044a7fa.json → 2c5b7c8e-81db-4d2c-a7a4-02dc640d301f.json} +1 -1
  9. package/.nyc_output/processinfo/2e74ca23-8cf0-4161-9536-f71c2a1a74bb.json +1 -0
  10. package/.nyc_output/processinfo/81d21e46-766a-46bc-b1b7-143ca577347a.json +1 -0
  11. package/.nyc_output/processinfo/a762cb58-70dc-4d39-ab69-928635affa98.json +1 -0
  12. package/.nyc_output/processinfo/aaf3ebbb-f895-4d7b-9255-bc5dee832570.json +1 -0
  13. package/.nyc_output/processinfo/dbeb2602-0ac2-4e66-978b-0d29548359ca.json +1 -0
  14. package/.nyc_output/processinfo/e47d1e4c-2fff-4dcb-908f-d3081162547c.json +1 -0
  15. package/.nyc_output/processinfo/index.json +1 -1
  16. package/CHANGELOG.md +189 -67
  17. package/README.md +1 -1
  18. package/coverage/core/api/application.js.html +145 -145
  19. package/coverage/core/api/authentication.js.html +37 -37
  20. package/coverage/core/api/db.js.html +74 -74
  21. package/coverage/core/api/hooks/hooks.account.js.html +15 -15
  22. package/coverage/core/api/hooks/hooks.authentication.js.html +16 -16
  23. package/coverage/core/api/hooks/hooks.authorisations.js.html +112 -121
  24. package/coverage/core/api/hooks/hooks.devices.js.html +5 -5
  25. package/coverage/core/api/hooks/hooks.groups.js.html +3 -3
  26. package/coverage/core/api/hooks/hooks.logger.js.html +7 -7
  27. package/coverage/core/api/hooks/hooks.model.js.html +149 -149
  28. package/coverage/core/api/hooks/hooks.organisations.js.html +13 -61
  29. package/coverage/core/api/hooks/hooks.pusher.js.html +7 -7
  30. package/coverage/core/api/hooks/hooks.query.js.html +68 -32
  31. package/coverage/core/api/hooks/hooks.service.js.html +15 -15
  32. package/coverage/core/api/hooks/hooks.storage.js.html +5 -5
  33. package/coverage/core/api/hooks/hooks.tags.js.html +7 -7
  34. package/coverage/core/api/hooks/hooks.users.js.html +111 -63
  35. package/coverage/core/api/hooks/index.html +72 -72
  36. package/coverage/core/api/hooks/index.js.html +15 -15
  37. package/coverage/core/api/index.html +35 -35
  38. package/coverage/core/api/index.js.html +13 -13
  39. package/coverage/core/api/marshall.js.html +81 -81
  40. package/coverage/core/api/models/groups.model.mongodb.js.html +1 -1
  41. package/coverage/core/api/models/index.html +1 -1
  42. package/coverage/core/api/models/organisations.model.mongodb.js.html +1 -1
  43. package/coverage/core/api/models/tags.model.mongodb.js.html +1 -1
  44. package/coverage/core/api/models/users.model.mongodb.js.html +7 -7
  45. package/coverage/core/api/oauth2-handler.js.html +3 -3
  46. package/coverage/core/api/oauth2-verifier.js.html +5 -5
  47. package/coverage/core/api/services/account/account.hooks.js.html +1 -1
  48. package/coverage/core/api/services/account/account.service.js.html +34 -34
  49. package/coverage/core/api/services/account/index.html +17 -17
  50. package/coverage/core/api/services/authorisations/authorisations.hooks.js.html +3 -3
  51. package/coverage/core/api/services/authorisations/authorisations.service.js.html +40 -37
  52. package/coverage/core/api/services/authorisations/index.html +17 -17
  53. package/coverage/core/api/services/databases/databases.hooks.js.html +1 -1
  54. package/coverage/core/api/services/databases/databases.service.js.html +1 -1
  55. package/coverage/core/api/services/databases/index.html +1 -1
  56. package/coverage/core/api/services/devices/devices.hooks.js.html +1 -1
  57. package/coverage/core/api/services/devices/devices.service.js.html +1 -1
  58. package/coverage/core/api/services/devices/index.html +1 -1
  59. package/coverage/core/api/services/groups/groups.hooks.js.html +1 -1
  60. package/coverage/core/api/services/groups/index.html +1 -1
  61. package/coverage/core/api/services/index.html +5 -5
  62. package/coverage/core/api/services/index.js.html +40 -40
  63. package/coverage/core/api/services/mailer/index.html +1 -1
  64. package/coverage/core/api/services/mailer/mailer.hooks.js.html +1 -1
  65. package/coverage/core/api/services/mailer/mailer.service.js.html +1 -1
  66. package/coverage/core/api/services/organisations/index.html +1 -1
  67. package/coverage/core/api/services/organisations/organisations.hooks.js.html +1 -1
  68. package/coverage/core/api/services/organisations/organisations.service.js.html +1 -1
  69. package/coverage/core/api/services/pusher/index.html +1 -1
  70. package/coverage/core/api/services/pusher/pusher.channels.js.html +1 -1
  71. package/coverage/core/api/services/pusher/pusher.hooks.js.html +1 -1
  72. package/coverage/core/api/services/pusher/pusher.service.js.html +1 -1
  73. package/coverage/core/api/services/storage/index.html +1 -1
  74. package/coverage/core/api/services/storage/storage.hooks.js.html +4 -4
  75. package/coverage/core/api/services/tags/index.html +1 -1
  76. package/coverage/core/api/services/tags/tags.hooks.js.html +1 -1
  77. package/coverage/core/api/services/users/index.html +1 -1
  78. package/coverage/core/api/services/users/users.hooks.js.html +12 -12
  79. package/coverage/core/common/index.html +32 -32
  80. package/coverage/core/common/index.js.html +27 -27
  81. package/coverage/core/common/permissions.js.html +135 -75
  82. package/coverage/index.html +157 -157
  83. package/coverage/lcov-report/core/api/application.js.html +145 -145
  84. package/coverage/lcov-report/core/api/authentication.js.html +37 -37
  85. package/coverage/lcov-report/core/api/db.js.html +74 -74
  86. package/coverage/lcov-report/core/api/hooks/hooks.account.js.html +15 -15
  87. package/coverage/lcov-report/core/api/hooks/hooks.authentication.js.html +16 -16
  88. package/coverage/lcov-report/core/api/hooks/hooks.authorisations.js.html +112 -121
  89. package/coverage/lcov-report/core/api/hooks/hooks.devices.js.html +5 -5
  90. package/coverage/lcov-report/core/api/hooks/hooks.groups.js.html +3 -3
  91. package/coverage/lcov-report/core/api/hooks/hooks.logger.js.html +7 -7
  92. package/coverage/lcov-report/core/api/hooks/hooks.model.js.html +149 -149
  93. package/coverage/lcov-report/core/api/hooks/hooks.organisations.js.html +13 -61
  94. package/coverage/lcov-report/core/api/hooks/hooks.pusher.js.html +7 -7
  95. package/coverage/lcov-report/core/api/hooks/hooks.query.js.html +68 -32
  96. package/coverage/lcov-report/core/api/hooks/hooks.service.js.html +15 -15
  97. package/coverage/lcov-report/core/api/hooks/hooks.storage.js.html +5 -5
  98. package/coverage/lcov-report/core/api/hooks/hooks.tags.js.html +7 -7
  99. package/coverage/lcov-report/core/api/hooks/hooks.users.js.html +111 -63
  100. package/coverage/lcov-report/core/api/hooks/index.html +72 -72
  101. package/coverage/lcov-report/core/api/hooks/index.js.html +15 -15
  102. package/coverage/lcov-report/core/api/index.html +35 -35
  103. package/coverage/lcov-report/core/api/index.js.html +13 -13
  104. package/coverage/lcov-report/core/api/marshall.js.html +81 -81
  105. package/coverage/lcov-report/core/api/models/groups.model.mongodb.js.html +1 -1
  106. package/coverage/lcov-report/core/api/models/index.html +1 -1
  107. package/coverage/lcov-report/core/api/models/organisations.model.mongodb.js.html +1 -1
  108. package/coverage/lcov-report/core/api/models/tags.model.mongodb.js.html +1 -1
  109. package/coverage/lcov-report/core/api/models/users.model.mongodb.js.html +7 -7
  110. package/coverage/lcov-report/core/api/oauth2-handler.js.html +3 -3
  111. package/coverage/lcov-report/core/api/oauth2-verifier.js.html +5 -5
  112. package/coverage/lcov-report/core/api/services/account/account.hooks.js.html +1 -1
  113. package/coverage/lcov-report/core/api/services/account/account.service.js.html +34 -34
  114. package/coverage/lcov-report/core/api/services/account/index.html +17 -17
  115. package/coverage/lcov-report/core/api/services/authorisations/authorisations.hooks.js.html +3 -3
  116. package/coverage/lcov-report/core/api/services/authorisations/authorisations.service.js.html +40 -37
  117. package/coverage/lcov-report/core/api/services/authorisations/index.html +17 -17
  118. package/coverage/lcov-report/core/api/services/databases/databases.hooks.js.html +1 -1
  119. package/coverage/lcov-report/core/api/services/databases/databases.service.js.html +1 -1
  120. package/coverage/lcov-report/core/api/services/databases/index.html +1 -1
  121. package/coverage/lcov-report/core/api/services/devices/devices.hooks.js.html +1 -1
  122. package/coverage/lcov-report/core/api/services/devices/devices.service.js.html +1 -1
  123. package/coverage/lcov-report/core/api/services/devices/index.html +1 -1
  124. package/coverage/lcov-report/core/api/services/groups/groups.hooks.js.html +1 -1
  125. package/coverage/lcov-report/core/api/services/groups/index.html +1 -1
  126. package/coverage/lcov-report/core/api/services/index.html +5 -5
  127. package/coverage/lcov-report/core/api/services/index.js.html +40 -40
  128. package/coverage/lcov-report/core/api/services/mailer/index.html +1 -1
  129. package/coverage/lcov-report/core/api/services/mailer/mailer.hooks.js.html +1 -1
  130. package/coverage/lcov-report/core/api/services/mailer/mailer.service.js.html +1 -1
  131. package/coverage/lcov-report/core/api/services/organisations/index.html +1 -1
  132. package/coverage/lcov-report/core/api/services/organisations/organisations.hooks.js.html +1 -1
  133. package/coverage/lcov-report/core/api/services/organisations/organisations.service.js.html +1 -1
  134. package/coverage/lcov-report/core/api/services/pusher/index.html +1 -1
  135. package/coverage/lcov-report/core/api/services/pusher/pusher.channels.js.html +1 -1
  136. package/coverage/lcov-report/core/api/services/pusher/pusher.hooks.js.html +1 -1
  137. package/coverage/lcov-report/core/api/services/pusher/pusher.service.js.html +1 -1
  138. package/coverage/lcov-report/core/api/services/storage/index.html +1 -1
  139. package/coverage/lcov-report/core/api/services/storage/storage.hooks.js.html +4 -4
  140. package/coverage/lcov-report/core/api/services/tags/index.html +1 -1
  141. package/coverage/lcov-report/core/api/services/tags/tags.hooks.js.html +1 -1
  142. package/coverage/lcov-report/core/api/services/users/index.html +1 -1
  143. package/coverage/lcov-report/core/api/services/users/users.hooks.js.html +12 -12
  144. package/coverage/lcov-report/core/common/index.html +32 -32
  145. package/coverage/lcov-report/core/common/index.js.html +27 -27
  146. package/coverage/lcov-report/core/common/permissions.js.html +135 -75
  147. package/coverage/lcov-report/index.html +157 -157
  148. package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +55 -55
  149. package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +337 -274
  150. package/coverage/lcov-report/map/api/hooks/index.html +43 -43
  151. package/coverage/lcov-report/map/api/hooks/index.js.html +12 -12
  152. package/coverage/lcov-report/map/api/index.html +31 -31
  153. package/coverage/lcov-report/map/api/index.js.html +24 -24
  154. package/coverage/lcov-report/map/api/marshall.js.html +39 -39
  155. package/coverage/lcov-report/map/api/models/alerts.model.mongodb.js.html +20 -20
  156. package/coverage/lcov-report/map/api/models/catalog.model.mongodb.js.html +22 -22
  157. package/coverage/lcov-report/map/api/models/features.model.mongodb.js.html +24 -24
  158. package/coverage/lcov-report/map/api/models/index.html +43 -43
  159. package/coverage/lcov-report/map/api/services/alerts/alerts.hooks.js.html +21 -21
  160. package/coverage/lcov-report/map/api/services/alerts/alerts.service.js.html +156 -156
  161. package/coverage/lcov-report/map/api/services/alerts/index.html +30 -30
  162. package/coverage/lcov-report/map/api/services/catalog/catalog.hooks.js.html +19 -19
  163. package/coverage/lcov-report/map/api/services/catalog/index.html +17 -17
  164. package/coverage/lcov-report/map/api/services/daptiles/daptiles.service.js.html +1 -1
  165. package/coverage/lcov-report/map/api/services/daptiles/index.html +1 -1
  166. package/coverage/lcov-report/map/api/services/features/features.hooks.js.html +20 -20
  167. package/coverage/lcov-report/map/api/services/features/index.html +21 -21
  168. package/coverage/lcov-report/map/api/services/geocoder/geocoder.hooks.js.html +8 -8
  169. package/coverage/lcov-report/map/api/services/geocoder/geocoder.service.js.html +99 -99
  170. package/coverage/lcov-report/map/api/services/geocoder/index.html +28 -28
  171. package/coverage/lcov-report/map/api/services/index.html +21 -21
  172. package/coverage/lcov-report/map/api/services/index.js.html +71 -71
  173. package/coverage/lcov-report/map/common/dynamic-grid-source.js.html +68 -68
  174. package/coverage/lcov-report/map/common/errors.js.html +9 -9
  175. package/coverage/lcov-report/map/common/geotiff-grid-source.js.html +120 -120
  176. package/coverage/lcov-report/map/common/grid.js.html +268 -268
  177. package/coverage/lcov-report/map/common/index.html +149 -149
  178. package/coverage/lcov-report/map/common/index.js.html +31 -31
  179. package/coverage/lcov-report/map/common/meteo-model-grid-source.js.html +71 -71
  180. package/coverage/lcov-report/map/common/moment-utils.js.html +14 -14
  181. package/coverage/lcov-report/map/common/opendap-grid-source.js.html +280 -280
  182. package/coverage/lcov-report/map/common/opendap-utils.js.html +220 -220
  183. package/coverage/lcov-report/map/common/permissions.js.html +21 -21
  184. package/coverage/lcov-report/map/common/time-based-grid-source.js.html +51 -51
  185. package/coverage/lcov-report/map/common/tms-utils.js.html +1 -1
  186. package/coverage/lcov-report/map/common/wcs-grid-source.js.html +99 -99
  187. package/coverage/lcov-report/map/common/wcs-utils.js.html +66 -66
  188. package/coverage/lcov-report/map/common/weacast-grid-source.js.html +196 -196
  189. package/coverage/lcov-report/map/common/wfs-utils.js.html +8 -5
  190. package/coverage/lcov-report/map/common/wms-utils.js.html +1 -1
  191. package/coverage/lcov-report/map/common/wmts-utils.js.html +71 -11
  192. package/coverage/lcov.info +3588 -3659
  193. package/coverage/map/api/hooks/hooks.catalog.js.html +55 -55
  194. package/coverage/map/api/hooks/hooks.query.js.html +337 -274
  195. package/coverage/map/api/hooks/index.html +43 -43
  196. package/coverage/map/api/hooks/index.js.html +12 -12
  197. package/coverage/map/api/index.html +31 -31
  198. package/coverage/map/api/index.js.html +24 -24
  199. package/coverage/map/api/marshall.js.html +39 -39
  200. package/coverage/map/api/models/alerts.model.mongodb.js.html +20 -20
  201. package/coverage/map/api/models/catalog.model.mongodb.js.html +22 -22
  202. package/coverage/map/api/models/features.model.mongodb.js.html +24 -24
  203. package/coverage/map/api/models/index.html +43 -43
  204. package/coverage/map/api/services/alerts/alerts.hooks.js.html +21 -21
  205. package/coverage/map/api/services/alerts/alerts.service.js.html +156 -156
  206. package/coverage/map/api/services/alerts/index.html +30 -30
  207. package/coverage/map/api/services/catalog/catalog.hooks.js.html +19 -19
  208. package/coverage/map/api/services/catalog/index.html +17 -17
  209. package/coverage/map/api/services/daptiles/daptiles.service.js.html +1 -1
  210. package/coverage/map/api/services/daptiles/index.html +1 -1
  211. package/coverage/map/api/services/features/features.hooks.js.html +20 -20
  212. package/coverage/map/api/services/features/index.html +21 -21
  213. package/coverage/map/api/services/geocoder/geocoder.hooks.js.html +8 -8
  214. package/coverage/map/api/services/geocoder/geocoder.service.js.html +99 -99
  215. package/coverage/map/api/services/geocoder/index.html +28 -28
  216. package/coverage/map/api/services/index.html +21 -21
  217. package/coverage/map/api/services/index.js.html +71 -71
  218. package/coverage/map/common/dynamic-grid-source.js.html +68 -68
  219. package/coverage/map/common/errors.js.html +9 -9
  220. package/coverage/map/common/geotiff-grid-source.js.html +120 -120
  221. package/coverage/map/common/grid.js.html +268 -268
  222. package/coverage/map/common/index.html +149 -149
  223. package/coverage/map/common/index.js.html +31 -31
  224. package/coverage/map/common/meteo-model-grid-source.js.html +71 -71
  225. package/coverage/map/common/moment-utils.js.html +14 -14
  226. package/coverage/map/common/opendap-grid-source.js.html +280 -280
  227. package/coverage/map/common/opendap-utils.js.html +220 -220
  228. package/coverage/map/common/permissions.js.html +21 -21
  229. package/coverage/map/common/time-based-grid-source.js.html +51 -51
  230. package/coverage/map/common/tms-utils.js.html +1 -1
  231. package/coverage/map/common/wcs-grid-source.js.html +99 -99
  232. package/coverage/map/common/wcs-utils.js.html +66 -66
  233. package/coverage/map/common/weacast-grid-source.js.html +196 -196
  234. package/coverage/map/common/wfs-utils.js.html +8 -5
  235. package/coverage/map/common/wms-utils.js.html +1 -1
  236. package/coverage/map/common/wmts-utils.js.html +71 -11
  237. package/extras/icons/kanban.png +0 -0
  238. package/extras/testcafe/page-models/map/catalog.js +2 -2
  239. package/extras/tours/core/add-member.js +10 -1
  240. package/extras/tours/core/{tag-member.js → edit-member-tags.js} +4 -3
  241. package/extras/tours/core/groups.js +8 -2
  242. package/extras/tours/core/members.js +11 -21
  243. package/extras/tours/core/tags.js +7 -1
  244. package/extras/tours/map/catalog-categories.js +4 -4
  245. package/extras/tours/map/catalog-panel.js +16 -16
  246. package/extras/tours/map/favorite-views.js +3 -3
  247. package/lib/core/api/hooks/hooks.authorisations.js +149 -140
  248. package/lib/core/api/hooks/hooks.authorisations.js.map +1 -1
  249. package/lib/core/api/hooks/hooks.organisations.js +1 -23
  250. package/lib/core/api/hooks/hooks.organisations.js.map +1 -1
  251. package/lib/core/api/hooks/hooks.query.js +22 -0
  252. package/lib/core/api/hooks/hooks.query.js.map +1 -1
  253. package/lib/core/api/hooks/hooks.users.js +34 -18
  254. package/lib/core/api/hooks/hooks.users.js.map +1 -1
  255. package/lib/core/api/services/authorisations/authorisations.service.js +34 -25
  256. package/lib/core/api/services/authorisations/authorisations.service.js.map +1 -1
  257. package/lib/core/client/api.js +1 -0
  258. package/lib/core/client/api.js.map +1 -1
  259. package/lib/core/client/components/account/KAccountDZ.vue +3 -4
  260. package/lib/core/client/components/account/KAccountDevices.vue +5 -6
  261. package/lib/core/client/components/account/KDeviceCard.vue +2 -1
  262. package/lib/core/client/components/account/KIdentityPanel.vue +1 -7
  263. package/lib/core/client/components/collection/KBoard.vue +26 -155
  264. package/lib/core/client/components/collection/KCard.vue +144 -42
  265. package/lib/core/client/components/collection/KCardSection.vue +52 -0
  266. package/lib/core/client/components/collection/KColumn.vue +181 -0
  267. package/lib/core/client/components/collection/KGrid.vue +13 -18
  268. package/lib/core/client/components/collection/KHistory.vue +61 -89
  269. package/lib/core/client/components/collection/KHistoryEntry.vue +90 -66
  270. package/lib/core/client/components/collection/KItem.vue +21 -2
  271. package/lib/core/client/components/collection/KList.vue +9 -12
  272. package/lib/core/client/components/collection/KTable.vue +33 -39
  273. package/lib/core/client/components/collection/index.js +6 -1
  274. package/lib/core/client/components/collection/index.js.map +1 -1
  275. package/lib/core/client/components/editor/KEditor.vue +0 -6
  276. package/lib/core/client/components/editor/KModalEditor.vue +4 -4
  277. package/lib/core/client/components/editor/KSettingsEditor.vue +49 -0
  278. package/lib/core/client/components/form/KAttachmentField.vue +10 -10
  279. package/lib/core/client/components/form/KChipsField.vue +28 -23
  280. package/lib/core/client/components/form/KColorField.vue +30 -25
  281. package/lib/core/client/components/form/KForm.vue +0 -12
  282. package/lib/core/client/components/form/KIconField.vue +1 -0
  283. package/lib/core/client/components/form/KItemField.vue +8 -4
  284. package/lib/core/client/components/form/KRoleField.vue +56 -0
  285. package/lib/core/client/components/form/KSelectField.vue +16 -1
  286. package/lib/core/client/components/form/KView.vue +5 -14
  287. package/lib/core/client/components/frame/KAction.vue +18 -12
  288. package/lib/core/client/components/frame/KAvatar.vue +3 -3
  289. package/lib/core/client/components/frame/KChart.vue +60 -0
  290. package/lib/core/client/components/frame/KChipsPane.vue +80 -0
  291. package/lib/core/client/components/frame/KContent.vue +1 -1
  292. package/lib/core/client/components/frame/KModal.vue +30 -44
  293. package/lib/core/client/components/frame/KPanel.vue +1 -1
  294. package/lib/core/client/components/frame/{KMenu.vue → KPopupAction.vue} +6 -7
  295. package/lib/core/client/components/frame/KSpot.vue +31 -0
  296. package/lib/core/client/components/frame/KStamp.vue +62 -0
  297. package/lib/core/client/components/frame/index.js +56 -1
  298. package/lib/core/client/components/frame/index.js.map +1 -1
  299. package/lib/core/client/components/input/KColorChooser.vue +16 -8
  300. package/lib/core/client/components/input/KIconChooser.vue +2 -1
  301. package/lib/core/client/components/input/KUploader.vue +14 -5
  302. package/lib/core/client/components/layout/KAbout.vue +9 -3
  303. package/lib/core/client/components/layout/KFab.vue +1 -1
  304. package/lib/core/client/components/layout/KPage.vue +44 -19
  305. package/lib/core/client/components/layout/KTour.vue +2 -2
  306. package/lib/core/client/components/layout/KWelcome.vue +13 -12
  307. package/lib/core/client/components/layout/KWindow.vue +1 -1
  308. package/lib/core/client/components/media/KImageViewer.vue +9 -7
  309. package/lib/core/client/components/media/KMediaBrowser.vue +12 -8
  310. package/lib/core/client/components/menu/KMenu.vue +103 -0
  311. package/lib/core/client/components/team/KAddMember.vue +17 -9
  312. package/lib/core/client/components/team/KChangeRole.vue +5 -7
  313. package/lib/core/client/components/team/KGroupCard.vue +34 -51
  314. package/lib/core/client/components/team/KGroupsActivity.vue +9 -2
  315. package/lib/core/client/components/team/KJoinGroup.vue +5 -7
  316. package/lib/core/client/components/team/KMemberCard.vue +104 -63
  317. package/lib/core/client/components/team/KMembersActivity.vue +9 -2
  318. package/lib/core/client/components/team/KOrganisationsActivity.vue +8 -1
  319. package/lib/core/client/components/team/KTagCard.vue +26 -26
  320. package/lib/core/client/components/team/KTagsActivity.vue +9 -2
  321. package/lib/core/client/components/time/KTimeRange.vue +144 -0
  322. package/lib/core/client/components/viewer/KModalViewer.vue +6 -0
  323. package/lib/core/client/components/viewer/KViewer.vue +0 -6
  324. package/lib/core/client/i18n/core_en.json +133 -93
  325. package/lib/core/client/i18n/core_fr.json +56 -16
  326. package/lib/core/client/index.js +28 -14
  327. package/lib/core/client/index.js.map +1 -1
  328. package/lib/core/client/mixins/mixin.authorisation.js +28 -18
  329. package/lib/core/client/mixins/mixin.authorisation.js.map +1 -1
  330. package/lib/core/client/mixins/mixin.base-collection.js +57 -9
  331. package/lib/core/client/mixins/mixin.base-collection.js.map +1 -1
  332. package/lib/core/client/mixins/mixin.base-context.js +1 -1
  333. package/lib/core/client/mixins/mixin.base-context.js.map +1 -1
  334. package/lib/core/client/mixins/mixin.base-editor.js +26 -16
  335. package/lib/core/client/mixins/mixin.base-editor.js.map +1 -1
  336. package/lib/core/client/mixins/mixin.base-field.js +0 -4
  337. package/lib/core/client/mixins/mixin.base-field.js.map +1 -1
  338. package/lib/core/client/mixins/mixin.base-item.js +29 -14
  339. package/lib/core/client/mixins/mixin.base-item.js.map +1 -1
  340. package/lib/core/client/mixins/mixin.base-viewer.js +0 -2
  341. package/lib/core/client/mixins/mixin.base-viewer.js.map +1 -1
  342. package/lib/core/client/mixins/mixin.object-proxy.js +17 -3
  343. package/lib/core/client/mixins/mixin.object-proxy.js.map +1 -1
  344. package/lib/core/client/mixins/mixin.schema-proxy.js +31 -0
  345. package/lib/core/client/mixins/mixin.schema-proxy.js.map +1 -1
  346. package/lib/core/client/mixins/mixin.service.js +5 -33
  347. package/lib/core/client/mixins/mixin.service.js.map +1 -1
  348. package/lib/core/client/services/index.js +23 -0
  349. package/lib/core/client/services/index.js.map +1 -1
  350. package/lib/core/client/services/local-settings.service.js +4 -0
  351. package/lib/core/client/services/local-settings.service.js.map +1 -1
  352. package/lib/core/client/time.js +131 -0
  353. package/lib/core/client/time.js.map +1 -0
  354. package/lib/core/common/permissions.js +65 -23
  355. package/lib/core/common/permissions.js.map +1 -1
  356. package/lib/core/common/schemas/groups.create.json +1 -1
  357. package/lib/core/common/schemas/groups.update.json +1 -1
  358. package/lib/core/common/schemas/organisations.create.json +1 -1
  359. package/lib/core/common/schemas/organisations.update.json +2 -2
  360. package/lib/core/common/schemas/settings.update.json +139 -0
  361. package/lib/core/common/schemas/tags.update.json +9 -1
  362. package/lib/map/api/hooks/hooks.query.js +48 -27
  363. package/lib/map/api/hooks/hooks.query.js.map +1 -1
  364. package/lib/map/api/services/features/features.hooks.js +1 -1
  365. package/lib/map/api/services/features/features.hooks.js.map +1 -1
  366. package/lib/map/client/components/KColorLegend.vue +25 -23
  367. package/lib/map/client/components/KFavoriteViews.vue +71 -35
  368. package/lib/map/client/components/KFeaturesChart.vue +11 -9
  369. package/lib/map/client/components/KFeaturesFilter.vue +15 -7
  370. package/lib/map/client/components/KFeaturesTable.vue +27 -2
  371. package/lib/map/client/components/KLayerEditionToolbar.vue +43 -0
  372. package/lib/map/client/components/KLayerStyleEditor.vue +10 -4
  373. package/lib/map/client/components/KLayerStyleForm.vue +14 -11
  374. package/lib/map/client/components/KLocationInput.vue +126 -65
  375. package/lib/map/client/components/KLocationMap.vue +199 -84
  376. package/lib/map/client/components/KPositionIndicator.vue +1 -0
  377. package/lib/map/client/components/KTimeline.vue +41 -36
  378. package/lib/map/client/components/KUrlLegend.vue +21 -19
  379. package/lib/map/client/components/catalog/KBaseLayersSelector.vue +105 -0
  380. package/lib/map/client/components/catalog/KCatalog.vue +14 -2
  381. package/lib/map/client/components/catalog/KConnectLayer.vue +31 -11
  382. package/lib/map/client/components/catalog/KCreateLayer.vue +37 -14
  383. package/lib/map/client/components/catalog/KImportLayer.vue +28 -8
  384. package/lib/map/client/components/catalog/KLayerCategories.vue +86 -62
  385. package/lib/map/client/components/catalog/KLayersSelector.vue +42 -42
  386. package/lib/map/client/components/catalog/KWeatherLayersSelector.vue +3 -3
  387. package/lib/map/client/components/form/KLocationField.vue +1 -1
  388. package/lib/map/client/components/form/KOwsLayerField.vue +21 -2
  389. package/lib/map/client/components/form/KOwsServiceField.vue +1 -0
  390. package/lib/map/client/components/widget/KInformationBox.vue +10 -16
  391. package/lib/map/client/components/widget/KMapillaryViewer.vue +59 -49
  392. package/lib/map/client/components/widget/KTimeSeries.vue +39 -29
  393. package/lib/map/client/i18n/map_en.json +65 -17
  394. package/lib/map/client/i18n/map_fr.json +67 -20
  395. package/lib/map/client/init.js +18 -6
  396. package/lib/map/client/init.js.map +1 -1
  397. package/lib/map/client/leaflet/GSMaPLayer.js +4 -9
  398. package/lib/map/client/leaflet/GSMaPLayer.js.map +1 -1
  399. package/lib/map/client/leaflet/GradientPath.js.map +1 -1
  400. package/lib/map/client/leaflet/MaskLayer.js +64 -0
  401. package/lib/map/client/leaflet/MaskLayer.js.map +1 -0
  402. package/lib/map/client/mixins/globe/mixin.base-globe.js +4 -1
  403. package/lib/map/client/mixins/globe/mixin.base-globe.js.map +1 -1
  404. package/lib/map/client/mixins/globe/mixin.geojson-layers.js +7 -9
  405. package/lib/map/client/mixins/globe/mixin.geojson-layers.js.map +1 -1
  406. package/lib/map/client/mixins/index.js +8 -13
  407. package/lib/map/client/mixins/index.js.map +1 -1
  408. package/lib/map/client/mixins/map/mixin.base-map.js +30 -6
  409. package/lib/map/client/mixins/map/mixin.base-map.js.map +1 -1
  410. package/lib/map/client/mixins/map/mixin.canvas-layers.js +274 -51
  411. package/lib/map/client/mixins/map/mixin.canvas-layers.js.map +1 -1
  412. package/lib/map/client/mixins/map/mixin.edit-layers.js +218 -121
  413. package/lib/map/client/mixins/map/mixin.edit-layers.js.map +1 -1
  414. package/lib/map/client/mixins/map/mixin.file-layers.js +25 -18
  415. package/lib/map/client/mixins/map/mixin.file-layers.js.map +1 -1
  416. package/lib/map/client/mixins/map/mixin.geojson-layers.js +18 -10
  417. package/lib/map/client/mixins/map/mixin.geojson-layers.js.map +1 -1
  418. package/lib/map/client/mixins/map/mixin.georaster-layers.js +7 -4
  419. package/lib/map/client/mixins/map/mixin.georaster-layers.js.map +1 -1
  420. package/lib/map/client/mixins/map/mixin.gsmap-layers.js +3 -3
  421. package/lib/map/client/mixins/map/mixin.gsmap-layers.js.map +1 -1
  422. package/lib/map/client/mixins/map/mixin.heatmap-layers.js +8 -10
  423. package/lib/map/client/mixins/map/mixin.heatmap-layers.js.map +1 -1
  424. package/lib/map/client/mixins/map/mixin.mapillary-layers.js +25 -40
  425. package/lib/map/client/mixins/map/mixin.mapillary-layers.js.map +1 -1
  426. package/lib/map/client/mixins/map/mixin.tiled-mesh-layers.js +5 -3
  427. package/lib/map/client/mixins/map/mixin.tiled-mesh-layers.js.map +1 -1
  428. package/lib/map/client/mixins/map/mixin.tiled-wind-layers.js +5 -3
  429. package/lib/map/client/mixins/map/mixin.tiled-wind-layers.js.map +1 -1
  430. package/lib/map/client/mixins/mixin.activity.js +60 -68
  431. package/lib/map/client/mixins/mixin.activity.js.map +1 -1
  432. package/lib/map/client/mixins/mixin.feature-selection.js +8 -10
  433. package/lib/map/client/mixins/mixin.feature-selection.js.map +1 -1
  434. package/lib/map/client/mixins/mixin.feature-service.js +7 -5
  435. package/lib/map/client/mixins/mixin.feature-service.js.map +1 -1
  436. package/lib/map/client/mixins/mixin.weacast.js +6 -4
  437. package/lib/map/client/mixins/mixin.weacast.js.map +1 -1
  438. package/lib/map/client/pixi-utils.js +9 -0
  439. package/lib/map/client/pixi-utils.js.map +1 -1
  440. package/lib/map/client/utils.js +50 -0
  441. package/lib/map/client/utils.js.map +1 -1
  442. package/lib/map/common/wfs-utils.js +1 -1
  443. package/lib/map/common/wfs-utils.js.map +1 -1
  444. package/lib/map/common/wmts-utils.js +31 -7
  445. package/lib/map/common/wmts-utils.js.map +1 -1
  446. package/lib/test/client/core/account.js +100 -0
  447. package/lib/test/client/core/account.js.map +1 -0
  448. package/lib/test/client/core/api.js +400 -0
  449. package/lib/test/client/core/api.js.map +1 -0
  450. package/lib/test/client/core/collection.js +109 -0
  451. package/lib/test/client/core/collection.js.map +1 -0
  452. package/lib/test/client/core/index.js +90 -0
  453. package/lib/test/client/core/index.js.map +1 -0
  454. package/lib/test/client/core/layout.js +221 -0
  455. package/lib/test/client/core/layout.js.map +1 -0
  456. package/lib/test/client/core/runner.js +204 -0
  457. package/lib/test/client/core/runner.js.map +1 -0
  458. package/lib/test/client/core/screens.js +68 -0
  459. package/lib/test/client/core/screens.js.map +1 -0
  460. package/lib/test/client/core/utils.js +304 -0
  461. package/lib/test/client/core/utils.js.map +1 -0
  462. package/lib/test/client/index.js +20 -0
  463. package/lib/test/client/index.js.map +1 -0
  464. package/lib/test/client/map/catalog.js +191 -0
  465. package/lib/test/client/map/catalog.js.map +1 -0
  466. package/lib/test/client/map/controls.js +54 -0
  467. package/lib/test/client/map/controls.js.map +1 -0
  468. package/lib/test/client/map/index.js +30 -0
  469. package/lib/test/client/map/index.js.map +1 -0
  470. package/package.json +17 -9
  471. package/test.client.js +1 -0
  472. package/tests/core/test-log-2021-07-15.log +71 -0
  473. package/tests/core/test-log-2021-09-02.log +47 -0
  474. package/tests/map/test-log-%DATE%.logYYYY-07-DD +12 -0
  475. package/tests/map/test-log-%DATE%.logYYYY-09-DD +6 -0
  476. package/tests/map/test-log-2021-07-12.log +12 -0
  477. package/tests/map/test-log-2021-07-15.log +5 -0
  478. package/tests/map/test-log-2021-09-02.log +3 -0
  479. package/.nyc_output/11cd93d8-69cb-405c-98a3-d249ea35b6da.json +0 -1
  480. package/.nyc_output/2bece194-92f7-4971-a688-10604044a7fa.json +0 -1
  481. package/.nyc_output/5ddee33e-b658-4c8e-a247-54f575ac67e8.json +0 -1
  482. package/.nyc_output/78760ae4-555f-4d9c-a6a1-acf5e2f0fe45.json +0 -1
  483. package/.nyc_output/d0bb2559-084e-4c92-b9e6-29a9abd41f7c.json +0 -1
  484. package/.nyc_output/processinfo/0b8aa700-8daa-49ce-85e7-a8f8965d55f0.json +0 -1
  485. package/.nyc_output/processinfo/11cd93d8-69cb-405c-98a3-d249ea35b6da.json +0 -1
  486. package/.nyc_output/processinfo/20df4355-911a-4b16-a8ab-d3392e9f0a7f.json +0 -1
  487. package/.nyc_output/processinfo/257af0bb-96c3-465a-b5ef-a1df60078d5f.json +0 -1
  488. package/.nyc_output/processinfo/284aebfa-23fd-425f-9d72-e4b8904dc224.json +0 -1
  489. package/.nyc_output/processinfo/5cbee06e-be6e-468a-bd78-4793ee785fe4.json +0 -1
  490. package/.nyc_output/processinfo/5ddee33e-b658-4c8e-a247-54f575ac67e8.json +0 -1
  491. package/.nyc_output/processinfo/78760ae4-555f-4d9c-a6a1-acf5e2f0fe45.json +0 -1
  492. package/.nyc_output/processinfo/d0bb2559-084e-4c92-b9e6-29a9abd41f7c.json +0 -1
  493. package/lib/core/client/components/frame/KLabel.vue +0 -56
  494. package/lib/core/client/components/team/KTagsPane.vue +0 -35
  495. package/lib/map/client/leaflet/TiledMapillaryLayer.js +0 -137
  496. package/lib/map/client/leaflet/TiledMapillaryLayer.js.map +0 -1
  497. package/lib/map/client/mixins/mixin.time.js +0 -73
  498. package/lib/map/client/mixins/mixin.time.js.map +0 -1
  499. package/tests/core/account.test.js +0 -415
  500. package/tests/core/client.test.js.skip +0 -37
  501. package/tests/core/config/default.js +0 -97
  502. package/tests/core/config/email-templates/confirmInvitation/html.ejs +0 -18
  503. package/tests/core/config/email-templates/identityChange/html.ejs +0 -12
  504. package/tests/core/config/email-templates/newDevice/html.ejs +0 -7
  505. package/tests/core/config/email-templates/passwordChange/html.ejs +0 -5
  506. package/tests/core/config/email-templates/resendVerifySignup/html.ejs +0 -10
  507. package/tests/core/config/email-templates/resetPwd/html.ejs +0 -5
  508. package/tests/core/config/email-templates/sendResetPwd/html.ejs +0 -8
  509. package/tests/core/config/email-templates/verifySignup/html.ejs +0 -3
  510. package/tests/core/data/10k_most_common_passwords.txt +0 -10000
  511. package/tests/core/data/logo.png +0 -0
  512. package/tests/core/hooks.test.js +0 -175
  513. package/tests/core/index.test.js +0 -418
  514. package/tests/core/notifications.test.js +0 -465
  515. package/tests/core/storage.test.js +0 -134
  516. package/tests/core/team.test.js +0 -610
  517. package/tests/core/utils.js +0 -59
  518. package/tests/map/alerts.test.js +0 -554
  519. package/tests/map/config/default.js +0 -112
  520. package/tests/map/config/layers.json +0 -37
  521. package/tests/map/daptiles.test.js +0 -41
  522. package/tests/map/data/DescribeCoverage.xml +0 -55
  523. package/tests/map/data/GetCoverage.tif +0 -0
  524. package/tests/map/data/adsb.observations.json +0 -132
  525. package/tests/map/data/dataset.grb.das +0 -55
  526. package/tests/map/data/dataset.grb.dds +0 -17
  527. package/tests/map/data/dataset.grb.dods +0 -0
  528. package/tests/map/data/lat_lon_bounds.grb.dods +0 -0
  529. package/tests/map/data/subdataset.grb.dods +0 -0
  530. package/tests/map/data/vigicrues.observations.json +0 -47042
  531. package/tests/map/data/vigicrues.stations.json +0 -15422
  532. package/tests/map/data/zones.json +0 -1228
  533. package/tests/map/grid-sources.test.js +0 -304
  534. package/tests/map/hooks.test.js +0 -96
  535. package/tests/map/index.test.js +0 -333
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">83.25% </span>
26
+ <span class="strong">83% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>164/197</span>
28
+ <span class='fraction'>166/200</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">77.3% </span>
33
+ <span class="strong">76.92% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>109/141</span>
35
+ <span class='fraction'>110/143</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">85.71% </span>
40
+ <span class="strong">84.62% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>24/28</span>
42
+ <span class='fraction'>22/26</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">83.51% </span>
47
+ <span class="strong">83.68% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>157/188</span>
49
+ <span class='fraction'>159/190</span>
50
50
  </div>
51
51
 
52
52
 
@@ -410,19 +410,16 @@
410
410
  <a name='L351'></a><a href='#L351'>351</a>
411
411
  <a name='L352'></a><a href='#L352'>352</a>
412
412
  <a name='L353'></a><a href='#L353'>353</a>
413
- <a name='L354'></a><a href='#L354'>354</a>
414
- <a name='L355'></a><a href='#L355'>355</a>
415
- <a name='L356'></a><a href='#L356'>356</a>
416
- <a name='L357'></a><a href='#L357'>357</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
417
- <span class="cline-any cline-yes">2x</span>
418
- <span class="cline-any cline-yes">2x</span>
419
- <span class="cline-any cline-yes">2x</span>
420
- <span class="cline-any cline-yes">2x</span>
421
- <span class="cline-any cline-yes">2x</span>
422
- <span class="cline-any cline-yes">2x</span>
423
- <span class="cline-any cline-yes">2x</span>
413
+ <a name='L354'></a><a href='#L354'>354</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
414
+ <span class="cline-any cline-yes">1x</span>
415
+ <span class="cline-any cline-yes">1x</span>
416
+ <span class="cline-any cline-yes">1x</span>
417
+ <span class="cline-any cline-yes">1x</span>
418
+ <span class="cline-any cline-yes">1x</span>
419
+ <span class="cline-any cline-yes">1x</span>
420
+ <span class="cline-any cline-yes">1x</span>
424
421
  <span class="cline-any cline-neutral">&nbsp;</span>
425
- <span class="cline-any cline-yes">2x</span>
422
+ <span class="cline-any cline-yes">1x</span>
426
423
  <span class="cline-any cline-neutral">&nbsp;</span>
427
424
  <span class="cline-any cline-neutral">&nbsp;</span>
428
425
  <span class="cline-any cline-yes">8x</span>
@@ -556,58 +553,58 @@
556
553
  <span class="cline-any cline-neutral">&nbsp;</span>
557
554
  <span class="cline-any cline-neutral">&nbsp;</span>
558
555
  <span class="cline-any cline-neutral">&nbsp;</span>
559
- <span class="cline-any cline-yes">418x</span>
556
+ <span class="cline-any cline-yes">340x</span>
560
557
  <span class="cline-any cline-no">&nbsp;</span>
561
558
  <span class="cline-any cline-neutral">&nbsp;</span>
562
- <span class="cline-any cline-yes">418x</span>
563
- <span class="cline-any cline-yes">418x</span>
564
- <span class="cline-any cline-yes">418x</span>
565
- <span class="cline-any cline-yes">418x</span>
566
- <span class="cline-any cline-yes">418x</span>
567
- <span class="cline-any cline-yes">418x</span>
559
+ <span class="cline-any cline-yes">340x</span>
560
+ <span class="cline-any cline-yes">340x</span>
561
+ <span class="cline-any cline-yes">340x</span>
562
+ <span class="cline-any cline-yes">340x</span>
563
+ <span class="cline-any cline-yes">340x</span>
564
+ <span class="cline-any cline-yes">340x</span>
568
565
  <span class="cline-any cline-neutral">&nbsp;</span>
569
566
  <span class="cline-any cline-neutral">&nbsp;</span>
570
- <span class="cline-any cline-yes">418x</span>
571
- <span class="cline-any cline-yes">418x</span>
567
+ <span class="cline-any cline-yes">340x</span>
568
+ <span class="cline-any cline-yes">340x</span>
572
569
  <span class="cline-any cline-neutral">&nbsp;</span>
573
- <span class="cline-any cline-yes">418x</span>
570
+ <span class="cline-any cline-yes">340x</span>
574
571
  <span class="cline-any cline-yes">22x</span>
575
572
  <span class="cline-any cline-yes">22x</span>
576
573
  <span class="cline-any cline-neutral">&nbsp;</span>
577
574
  <span class="cline-any cline-neutral">&nbsp;</span>
578
- <span class="cline-any cline-yes">418x</span>
575
+ <span class="cline-any cline-yes">340x</span>
579
576
  <span class="cline-any cline-yes">7x</span>
580
577
  <span class="cline-any cline-yes">7x</span>
581
578
  <span class="cline-any cline-neutral">&nbsp;</span>
582
579
  <span class="cline-any cline-neutral">&nbsp;</span>
583
- <span class="cline-any cline-yes">418x</span>
584
- <span class="cline-any cline-yes">93x</span>
580
+ <span class="cline-any cline-yes">340x</span>
581
+ <span class="cline-any cline-yes">87x</span>
585
582
  <span class="cline-any cline-neutral">&nbsp;</span>
586
- <span class="cline-any cline-yes">93x</span>
587
- <span class="cline-any cline-yes">93x</span>
583
+ <span class="cline-any cline-yes">87x</span>
584
+ <span class="cline-any cline-yes">87x</span>
588
585
  <span class="cline-any cline-neutral">&nbsp;</span>
589
586
  <span class="cline-any cline-neutral">&nbsp;</span>
590
- <span class="cline-any cline-yes">418x</span>
591
- <span class="cline-any cline-yes">418x</span>
587
+ <span class="cline-any cline-yes">340x</span>
588
+ <span class="cline-any cline-yes">340x</span>
592
589
  <span class="cline-any cline-neutral">&nbsp;</span>
593
- <span class="cline-any cline-yes">72x</span>
594
- <span class="cline-any cline-yes">72x</span>
595
- <span class="cline-any cline-yes">72x</span>
596
- <span class="cline-any cline-yes">72x</span>
590
+ <span class="cline-any cline-yes">67x</span>
591
+ <span class="cline-any cline-yes">67x</span>
592
+ <span class="cline-any cline-yes">67x</span>
593
+ <span class="cline-any cline-yes">67x</span>
597
594
  <span class="cline-any cline-neutral">&nbsp;</span>
598
595
  <span class="cline-any cline-neutral">&nbsp;</span>
599
- <span class="cline-any cline-yes">72x</span>
596
+ <span class="cline-any cline-yes">67x</span>
600
597
  <span class="cline-any cline-yes">3x</span>
601
598
  <span class="cline-any cline-yes">3x</span>
602
599
  <span class="cline-any cline-neutral">&nbsp;</span>
603
600
  <span class="cline-any cline-neutral">&nbsp;</span>
604
- <span class="cline-any cline-yes">69x</span>
601
+ <span class="cline-any cline-yes">64x</span>
605
602
  <span class="cline-any cline-neutral">&nbsp;</span>
606
603
  <span class="cline-any cline-neutral">&nbsp;</span>
607
- <span class="cline-any cline-yes">45x</span>
608
- <span class="cline-any cline-yes">20x</span>
609
- <span class="cline-any cline-yes">20x</span>
610
- <span class="cline-any cline-yes">20x</span>
604
+ <span class="cline-any cline-yes">41x</span>
605
+ <span class="cline-any cline-yes">17x</span>
606
+ <span class="cline-any cline-yes">17x</span>
607
+ <span class="cline-any cline-yes">17x</span>
611
608
  <span class="cline-any cline-yes">3x</span>
612
609
  <span class="cline-any cline-yes">3x</span>
613
610
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -615,58 +612,59 @@
615
612
  <span class="cline-any cline-neutral">&nbsp;</span>
616
613
  <span class="cline-any cline-neutral">&nbsp;</span>
617
614
  <span class="cline-any cline-neutral">&nbsp;</span>
618
- <span class="cline-any cline-yes">25x</span>
619
- <span class="cline-any cline-yes">25x</span>
620
615
  <span class="cline-any cline-yes">24x</span>
621
616
  <span class="cline-any cline-yes">24x</span>
617
+ <span class="cline-any cline-yes">23x</span>
618
+ <span class="cline-any cline-yes">22x</span>
619
+ <span class="cline-any cline-yes">22x</span>
622
620
  <span class="cline-any cline-neutral">&nbsp;</span>
623
- <span class="cline-any cline-yes">1x</span>
621
+ <span class="cline-any cline-yes">23x</span>
624
622
  <span class="cline-any cline-neutral">&nbsp;</span>
623
+ <span class="cline-any cline-yes">1x</span>
625
624
  <span class="cline-any cline-neutral">&nbsp;</span>
626
- <span class="cline-any cline-yes">42x</span>
627
625
  <span class="cline-any cline-neutral">&nbsp;</span>
626
+ <span class="cline-any cline-yes">38x</span>
628
627
  <span class="cline-any cline-neutral">&nbsp;</span>
629
- <span class="cline-any cline-yes">24x</span>
630
628
  <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-yes">21x</span>
629
+ <span class="cline-any cline-yes">23x</span>
632
630
  <span class="cline-any cline-neutral">&nbsp;</span>
633
- <span class="cline-any cline-yes">21x</span>
631
+ <span class="cline-any cline-yes">20x</span>
632
+ <span class="cline-any cline-yes">20x</span>
634
633
  <span class="cline-any cline-neutral">&nbsp;</span>
635
- <span class="cline-any cline-yes">21x</span>
634
+ <span class="cline-any cline-yes">20x</span>
636
635
  <span class="cline-any cline-yes">1x</span>
637
636
  <span class="cline-any cline-yes">1x</span>
638
637
  <span class="cline-any cline-neutral">&nbsp;</span>
639
638
  <span class="cline-any cline-neutral">&nbsp;</span>
640
- <span class="cline-any cline-yes">20x</span>
639
+ <span class="cline-any cline-yes">19x</span>
641
640
  <span class="cline-any cline-yes">2x</span>
642
641
  <span class="cline-any cline-neutral">&nbsp;</span>
643
- <span class="cline-any cline-yes">20x</span>
644
- <span class="cline-any cline-yes">20x</span>
645
- <span class="cline-any cline-yes">20x</span>
646
- <span class="cline-any cline-neutral">&nbsp;</span>
642
+ <span class="cline-any cline-yes">19x</span>
643
+ <span class="cline-any cline-yes">19x</span>
644
+ <span class="cline-any cline-yes">19x</span>
647
645
  <span class="cline-any cline-neutral">&nbsp;</span>
648
646
  <span class="cline-any cline-neutral">&nbsp;</span>
649
- <span class="cline-any cline-yes">346x</span>
647
+ <span class="cline-any cline-yes">273x</span>
650
648
  <span class="cline-any cline-neutral">&nbsp;</span>
651
649
  <span class="cline-any cline-neutral">&nbsp;</span>
652
- <span class="cline-any cline-yes">391x</span>
653
- <span class="cline-any cline-yes">391x</span>
650
+ <span class="cline-any cline-yes">314x</span>
651
+ <span class="cline-any cline-yes">314x</span>
654
652
  <span class="cline-any cline-neutral">&nbsp;</span>
655
653
  <span class="cline-any cline-neutral">&nbsp;</span>
656
654
  <span class="cline-any cline-neutral">&nbsp;</span>
657
- <span class="cline-any cline-yes">16x</span>
658
- <span class="cline-any cline-yes">10x</span>
659
- <span class="cline-any cline-yes">10x</span>
660
- <span class="cline-any cline-yes">10x</span>
661
- <span class="cline-any cline-yes">10x</span>
655
+ <span class="cline-any cline-yes">12x</span>
656
+ <span class="cline-any cline-yes">9x</span>
657
+ <span class="cline-any cline-yes">9x</span>
658
+ <span class="cline-any cline-yes">9x</span>
659
+ <span class="cline-any cline-yes">9x</span>
662
660
  <span class="cline-any cline-neutral">&nbsp;</span>
663
661
  <span class="cline-any cline-neutral">&nbsp;</span>
664
- <span class="cline-any cline-yes">10x</span>
662
+ <span class="cline-any cline-yes">9x</span>
665
663
  <span class="cline-any cline-no">&nbsp;</span>
666
664
  <span class="cline-any cline-neutral">&nbsp;</span>
667
- <span class="cline-any cline-yes">10x</span>
668
- <span class="cline-any cline-yes">10x</span>
669
- <span class="cline-any cline-yes">10x</span>
665
+ <span class="cline-any cline-yes">9x</span>
666
+ <span class="cline-any cline-yes">9x</span>
667
+ <span class="cline-any cline-yes">9x</span>
670
668
  <span class="cline-any cline-neutral">&nbsp;</span>
671
669
  <span class="cline-any cline-neutral">&nbsp;</span>
672
670
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -719,7 +717,6 @@
719
717
  <span class="cline-any cline-neutral">&nbsp;</span>
720
718
  <span class="cline-any cline-yes">5x</span>
721
719
  <span class="cline-any cline-yes">5x</span>
722
- <span class="cline-any cline-neutral">&nbsp;</span>
723
720
  <span class="cline-any cline-yes">5x</span>
724
721
  <span class="cline-any cline-neutral">&nbsp;</span>
725
722
  <span class="cline-any cline-yes">1x</span>
@@ -736,14 +733,11 @@
736
733
  <span class="cline-any cline-neutral">&nbsp;</span>
737
734
  <span class="cline-any cline-neutral">&nbsp;</span>
738
735
  <span class="cline-any cline-neutral">&nbsp;</span>
739
- <span class="cline-any cline-neutral">&nbsp;</span>
740
- <span class="cline-any cline-neutral">&nbsp;</span>
741
736
  <span class="cline-any cline-yes">5x</span>
742
737
  <span class="cline-any cline-yes">5x</span>
743
738
  <span class="cline-any cline-neutral">&nbsp;</span>
744
739
  <span class="cline-any cline-neutral">&nbsp;</span>
745
740
  <span class="cline-any cline-neutral">&nbsp;</span>
746
- <span class="cline-any cline-neutral">&nbsp;</span>
747
741
  <span class="cline-any cline-no">&nbsp;</span>
748
742
  <span class="cline-any cline-no">&nbsp;</span>
749
743
  <span class="cline-any cline-no">&nbsp;</span>
@@ -911,7 +905,7 @@ export function preventEscalation (hook) {
911
905
  return hook
912
906
  }
913
907
  &nbsp;
914
- export function authorise (hook) {
908
+ export async function authorise (hook) {
915
909
  <span class="missing-if-branch" title="if path not taken" >I</span>if (hook.type !== 'before') {
916
910
  <span class="cstat-no" title="statement not covered" > throw n</span>ew Error('The \'authorise\' hook should only be used as a \'before\' hook.')
917
911
  }
@@ -947,7 +941,7 @@ export function authorise (hook) {
947
941
  if (checkAuthorisation) {
948
942
  // Build ability for user
949
943
  const authorisationService = hook.app.getService('authorisations')
950
- const abilities = authorisationService.getAbilities(hook.params.user)
944
+ const abilities = await authorisationService.getAbilities(hook.params.user)
951
945
  hook.params.abilities = abilities
952
946
  debug('User abilities are', abilities.rules)
953
947
  &nbsp;
@@ -973,7 +967,10 @@ export function authorise (hook) {
973
967
  // This avoid fetching all first then check it one by one
974
968
  const dbQuery = objectifyIDs(getQueryForAbilities(abilities, operation, resourceType))
975
969
  if (dbQuery) {
976
- debug('Target resource conditions are ', dbQuery)
970
+ hook.params.query = _.transform(hook.params.query, (result, value, key) =&gt; {
971
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (key === '$or') <span class="cstat-no" title="statement not covered" >result.$</span>and = [{ $or: value }]
972
+ else result[key] = value
973
+ }, {})
977
974
  _.merge(hook.params.query, dbQuery)
978
975
  } else {
979
976
  hook.result = { total: 0, skip: 0, data: [] }
@@ -984,29 +981,27 @@ export function authorise (hook) {
984
981
  // this has to be implemented by the service itself
985
982
  } else if (typeof hook.service.get === 'function') {
986
983
  // In this case (single get/update/patch/remove) we need to fetch the item first
987
- return hook.service.get(hook.id, Object.assign({ checkAuthorisation: false }, hook.params))
988
- .then(resource =&gt; {
989
- debug('Target resource is', resource)
990
- // Then check against the object we'd like to manage
991
- if (!hasResourceAbilities(abilities, operation, resourceType, context, resource)) {
992
- debug('Resource access not granted')
993
- throw new Forbidden(`You are not allowed to perform ${operation} operation on ${resourceType}`)
994
- }
995
- // Avoid fetching again the object in this case
996
- if (operation === 'get') {
997
- hook.result = resource
998
- }
999
- hook.params.authorised = true
1000
- debug('Resource access granted')
1001
- return hook
1002
- })
984
+ const resource = await hook.service.get(hook.id, Object.assign({ checkAuthorisation: false }, hook.params))
985
+ debug('Target resource is', resource)
986
+ // Then check against the object we'd like to manage
987
+ if (!hasResourceAbilities(abilities, operation, resourceType, context, resource)) {
988
+ debug('Resource access not granted')
989
+ throw new Forbidden(`You are not allowed to perform ${operation} operation on ${resourceType}`)
990
+ }
991
+ // Avoid fetching again the object in this case
992
+ if (operation === 'get') {
993
+ hook.result = resource
994
+ }
995
+ hook.params.authorised = true
996
+ debug('Resource access granted')
997
+ return hook
1003
998
  }
1004
999
  } else {
1005
1000
  debug('Authorisation check skipped, access granted')
1006
1001
  }
1007
1002
  &nbsp;
1008
1003
  hook.params.authorised = true
1009
- return Promise.resolve(hook)
1004
+ return hook
1010
1005
  }
1011
1006
  &nbsp;
1012
1007
  export function updateAbilities (options = {}) {
@@ -1020,7 +1015,7 @@ export function updateAbilities (options = {}) {
1020
1015
  <span class="missing-if-branch" title="if path not taken" >I</span>if (options.fetchSubject) {
1021
1016
  <span class="cstat-no" title="statement not covered" > subject = a</span>wait hook.service.get(subject._id.toString())
1022
1017
  }
1023
- const abilities = authorisationService.updateAbilities(subject)
1018
+ const abilities = await authorisationService.updateAbilities(subject)
1024
1019
  debug('Abilities updated on subject', subject, abilities.rules)
1025
1020
  return hook
1026
1021
  }
@@ -1067,36 +1062,32 @@ export function preventRemovingLastOwner (resourceScope) {
1067
1062
  }
1068
1063
  }
1069
1064
  &nbsp;
1070
- export function removeOrganisationGroupsAuthorisations (hook) {
1065
+ export async function removeOrganisationGroupsAuthorisations (hook) {
1071
1066
  const app = hook.app
1072
1067
  const authorisationService = app.getService('authorisations')
1073
1068
  const org = hook.params.resource
1074
1069
  const user = hook.params.user
1075
1070
  // Unset membership for the all org groups
1076
1071
  const orgGroupService = app.getService('groups', org)
1077
- return orgGroupService.find({ paginate: false })
1078
- .then(groups =&gt; {
1079
- return Promise.all(groups.map(group =&gt; {
1080
- // Unset membership on group for the all org users
1081
- return authorisationService.remove(group._id.toString(), {
1082
- query: {
1083
- scope: 'groups'
1084
- },
1085
- user,
1086
- force: hook.params.force,
1087
- // Because we already have resource set it as objects to avoid populating
1088
- // Moreover used as an after hook the resource might not already exist anymore
1089
- subjects: hook.params.subjects,
1090
- subjectsService: hook.params.subjectsService,
1091
- resource: group,
1092
- resourcesService: orgGroupService
1093
- })
1094
- }))
1095
- })
1096
- .then(groups =&gt; {
1097
- debug('Authorisations unset on groups for organisation ' + org._id)
1098
- return hook
1072
+ const groups = await orgGroupService.find({ paginate: false })
1073
+ await Promise.all(groups.map(group =&gt; {
1074
+ // Unset membership on group for the all org users
1075
+ return authorisationService.remove(group._id.toString(), {
1076
+ query: {
1077
+ scope: 'groups'
1078
+ },
1079
+ user,
1080
+ force: hook.params.force,
1081
+ // Because we already have resource set it as objects to avoid populating
1082
+ // Moreover used as an after hook the resource might not already exist anymore
1083
+ subjects: hook.params.subjects,
1084
+ subjectsService: hook.params.subjectsService,
1085
+ resource: group,
1086
+ resourcesService: orgGroupService
1099
1087
  })
1088
+ }))
1089
+ debug('Authorisations unset on groups for organisation ' + org._id)
1090
+ return hook
1100
1091
  }
1101
1092
  &nbsp;
1102
1093
  export <span class="fstat-no" title="function not covered" >async function r</span>emoveOrganisationTagsAuthorisations (hook) {
@@ -1132,7 +1123,7 @@ export <span class="fstat-no" title="function not covered" >async function r</sp
1132
1123
  <div class='footer quiet pad2 space-top1 center small'>
1133
1124
  Code coverage generated by
1134
1125
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
1135
- at Tue Jun 08 2021 18:08:53 GMT+0200 (GMT+02:00)
1126
+ at Wed Dec 08 2021 20:41:51 GMT+0100 (GMT+01:00)
1136
1127
  </div>
1137
1128
  </div>
1138
1129
  <script src="../../../prettify.js"></script>
@@ -99,11 +99,11 @@
99
99
  <a name='L40'></a><a href='#L40'>40</a>
100
100
  <a name='L41'></a><a href='#L41'>41</a>
101
101
  <a name='L42'></a><a href='#L42'>42</a>
102
- <a name='L43'></a><a href='#L43'>43</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
103
- <span class="cline-any cline-yes">2x</span>
104
- <span class="cline-any cline-yes">2x</span>
102
+ <a name='L43'></a><a href='#L43'>43</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
103
+ <span class="cline-any cline-yes">1x</span>
104
+ <span class="cline-any cline-yes">1x</span>
105
105
  <span class="cline-any cline-neutral">&nbsp;</span>
106
- <span class="cline-any cline-yes">2x</span>
106
+ <span class="cline-any cline-yes">1x</span>
107
107
  <span class="cline-any cline-neutral">&nbsp;</span>
108
108
  <span class="cline-any cline-neutral">&nbsp;</span>
109
109
  <span class="cline-any cline-yes">3x</span>
@@ -190,7 +190,7 @@ export async function sendNewDeviceEmail (hook) {
190
190
  <div class='footer quiet pad2 space-top1 center small'>
191
191
  Code coverage generated by
192
192
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
193
- at Tue Jun 08 2021 18:08:53 GMT+0200 (GMT+02:00)
193
+ at Wed Dec 08 2021 20:41:51 GMT+0100 (GMT+01:00)
194
194
  </div>
195
195
  </div>
196
196
  <script src="../../../prettify.js"></script>
@@ -105,8 +105,8 @@
105
105
  <a name='L46'></a><a href='#L46'>46</a>
106
106
  <a name='L47'></a><a href='#L47'>47</a>
107
107
  <a name='L48'></a><a href='#L48'>48</a>
108
- <a name='L49'></a><a href='#L49'>49</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">2x</span>
109
- <span class="cline-any cline-yes">2x</span>
108
+ <a name='L49'></a><a href='#L49'>49</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
109
+ <span class="cline-any cline-yes">1x</span>
110
110
  <span class="cline-any cline-neutral">&nbsp;</span>
111
111
  <span class="cline-any cline-neutral">&nbsp;</span>
112
112
  <span class="cline-any cline-yes">2x</span>
@@ -208,7 +208,7 @@ export function removeGroupAuthorisations (hook) {
208
208
  <div class='footer quiet pad2 space-top1 center small'>
209
209
  Code coverage generated by
210
210
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
211
- at Tue Jun 08 2021 18:08:53 GMT+0200 (GMT+02:00)
211
+ at Wed Dec 08 2021 20:41:51 GMT+0100 (GMT+01:00)
212
212
  </div>
213
213
  </div>
214
214
  <script src="../../../prettify.js"></script>
@@ -85,14 +85,14 @@
85
85
  <a name='L26'></a><a href='#L26'>26</a>
86
86
  <a name='L27'></a><a href='#L27'>27</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
87
87
  <span class="cline-any cline-neutral">&nbsp;</span>
88
- <span class="cline-any cline-yes">19x</span>
88
+ <span class="cline-any cline-yes">21x</span>
89
89
  <span class="cline-any cline-neutral">&nbsp;</span>
90
- <span class="cline-any cline-yes">19x</span>
91
- <span class="cline-any cline-yes">19x</span>
90
+ <span class="cline-any cline-yes">21x</span>
91
+ <span class="cline-any cline-yes">21x</span>
92
92
  <span class="cline-any cline-neutral">&nbsp;</span>
93
93
  <span class="cline-any cline-neutral">&nbsp;</span>
94
- <span class="cline-any cline-yes">19x</span>
95
- <span class="cline-any cline-yes">19x</span>
94
+ <span class="cline-any cline-yes">21x</span>
95
+ <span class="cline-any cline-yes">21x</span>
96
96
  <span class="cline-any cline-neutral">&nbsp;</span>
97
97
  <span class="cline-any cline-no">&nbsp;</span>
98
98
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -100,7 +100,7 @@
100
100
  <span class="cline-any cline-neutral">&nbsp;</span>
101
101
  <span class="cline-any cline-neutral">&nbsp;</span>
102
102
  <span class="cline-any cline-neutral">&nbsp;</span>
103
- <span class="cline-any cline-yes">19x</span>
103
+ <span class="cline-any cline-yes">21x</span>
104
104
  <span class="cline-any cline-no">&nbsp;</span>
105
105
  <span class="cline-any cline-no">&nbsp;</span>
106
106
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -142,7 +142,7 @@ export function log (hook) {
142
142
  <div class='footer quiet pad2 space-top1 center small'>
143
143
  Code coverage generated by
144
144
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
145
- at Tue Jun 08 2021 18:08:53 GMT+0200 (GMT+02:00)
145
+ at Wed Dec 08 2021 20:41:51 GMT+0100 (GMT+01:00)
146
146
  </div>
147
147
  </div>
148
148
  <script src="../../../prettify.js"></script>