@kalisio/kdk 2.6.3 → 2.7.0

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 (419) hide show
  1. package/core/api/application.js +2 -4
  2. package/core/api/authentication.js +2 -3
  3. package/core/api/db.js +10 -2
  4. package/core/api/hooks/hooks.authorisations.js +4 -2
  5. package/core/api/hooks/hooks.push.js +6 -2
  6. package/core/api/hooks/hooks.query.js +29 -12
  7. package/core/api/hooks/hooks.users.js +30 -17
  8. package/core/api/models/configurations.model.mongodb.js +4 -0
  9. package/core/api/services/authorisations/authorisations.service.js +1 -1
  10. package/core/api/services/configurations/configurations.hooks.js +33 -0
  11. package/core/api/services/index.js +41 -7
  12. package/core/api/services/messages/messages.hooks.js +9 -3
  13. package/core/client/api.js +14 -1
  14. package/core/client/capabilities.js +1 -6
  15. package/core/client/components/KAvatar.vue +24 -20
  16. package/core/client/components/account/KProfile.vue +10 -71
  17. package/core/client/components/account/index.js +0 -2
  18. package/core/client/components/app/KSettings.vue +1 -0
  19. package/core/client/components/collection/KBoard.vue +4 -3
  20. package/core/client/components/collection/KCardSection.vue +1 -0
  21. package/core/client/components/collection/KGrid.vue +2 -0
  22. package/core/client/components/collection/KTable.vue +5 -1
  23. package/core/client/components/collection/KTimeLine.vue +9 -1
  24. package/core/client/components/collection/index.js +0 -2
  25. package/core/client/components/form/KChipsField.vue +2 -1
  26. package/core/client/components/form/KEmailField.vue +1 -0
  27. package/core/client/components/form/KFileField.vue +22 -1
  28. package/core/client/components/form/KForm.vue +2 -0
  29. package/core/client/components/form/KItemField.vue +1 -0
  30. package/core/client/components/form/KNumberField.vue +1 -0
  31. package/core/client/components/form/KPasswordField.vue +1 -0
  32. package/core/client/components/form/KPhoneField.vue +1 -0
  33. package/core/client/components/form/KPropertyItemField.vue +1 -0
  34. package/core/client/components/form/KResolutionField.vue +1 -0
  35. package/core/client/components/form/KSelectField.vue +31 -0
  36. package/core/client/components/form/KTagField.vue +1 -0
  37. package/core/client/components/form/KTextField.vue +1 -0
  38. package/core/client/components/form/KTokenField.vue +1 -0
  39. package/core/client/components/form/KUnitField.vue +1 -0
  40. package/core/client/components/form/KUrlField.vue +1 -0
  41. package/core/client/components/graphics/KIcon.vue +3 -4
  42. package/core/client/components/layout/KPage.vue +1 -0
  43. package/core/client/components/layout/KWindow.vue +6 -3
  44. package/core/client/components/messages/KMessageComposer.vue +2 -1
  45. package/core/client/components/messages/KMessagesTimeLine.vue +1 -1
  46. package/core/client/components/time/KDate.vue +1 -2
  47. package/core/client/components/time/KDateTime.vue +11 -11
  48. package/core/client/components/time/KTime.vue +1 -1
  49. package/core/client/composables/collection.js +33 -8
  50. package/core/client/composables/errors.js +1 -1
  51. package/core/client/composables/layout.js +9 -9
  52. package/core/client/configurations.js +50 -0
  53. package/core/client/exporter.js +1 -1
  54. package/core/client/i18n/core_en.json +6 -39
  55. package/core/client/i18n/core_fr.json +6 -39
  56. package/core/client/index.js +2 -0
  57. package/core/client/layout.js +8 -8
  58. package/core/client/mixins/mixin.base-activity.js +5 -2
  59. package/core/client/mixins/mixin.base-field.js +3 -3
  60. package/core/client/search.js +2 -1
  61. package/core/client/utils/utils.collection.js +8 -8
  62. package/core/client/utils/utils.items.js +4 -0
  63. package/core/client/utils/utils.push.js +3 -3
  64. package/core/client/utils/utils.session.js +7 -5
  65. package/core/client/utils/utils.shapes.js +38 -7
  66. package/core/client/utils/utils.time.js +21 -22
  67. package/core/common/schemas/users.update-profile.json +3 -2
  68. package/coverage/core/api/application.js.html +1 -1
  69. package/coverage/core/api/authentication.js.html +1 -1
  70. package/coverage/core/api/db.js.html +1 -1
  71. package/coverage/core/api/hooks/hooks.authentication.js.html +1 -1
  72. package/coverage/core/api/hooks/hooks.authorisations.js.html +1 -1
  73. package/coverage/core/api/hooks/hooks.logger.js.html +1 -1
  74. package/coverage/core/api/hooks/hooks.model.js.html +1 -1
  75. package/coverage/core/api/hooks/hooks.push.js.html +22 -10
  76. package/coverage/core/api/hooks/hooks.query.js.html +33 -6
  77. package/coverage/core/api/hooks/hooks.schemas.js.html +1 -1
  78. package/coverage/core/api/hooks/hooks.service.js.html +1 -1
  79. package/coverage/core/api/hooks/hooks.storage.js.html +1 -1
  80. package/coverage/core/api/hooks/hooks.tags.js.html +1 -1
  81. package/coverage/core/api/hooks/hooks.users.js.html +4 -4
  82. package/coverage/core/api/hooks/index.html +23 -23
  83. package/coverage/core/api/hooks/index.js.html +1 -1
  84. package/coverage/core/api/index.html +1 -1
  85. package/coverage/core/api/index.js.html +1 -1
  86. package/coverage/core/api/marshall.js.html +1 -1
  87. package/coverage/core/api/models/configurations.model.mongodb.js.html +1 -1
  88. package/coverage/core/api/models/index.html +1 -1
  89. package/coverage/core/api/models/messages.model.mongodb.js.html +1 -1
  90. package/coverage/core/api/models/tags.model.mongodb.js.html +1 -1
  91. package/coverage/core/api/models/users.model.mongodb.js.html +1 -1
  92. package/coverage/core/api/services/account/account.hooks.js.html +1 -1
  93. package/coverage/core/api/services/account/account.service.js.html +1 -1
  94. package/coverage/core/api/services/account/index.html +1 -1
  95. package/coverage/core/api/services/authorisations/authorisations.hooks.js.html +1 -1
  96. package/coverage/core/api/services/authorisations/authorisations.service.js.html +1 -1
  97. package/coverage/core/api/services/authorisations/index.html +1 -1
  98. package/coverage/core/api/services/configurations/configurations.hooks.js.html +1 -1
  99. package/coverage/core/api/services/configurations/index.html +1 -1
  100. package/coverage/core/api/services/databases/databases.hooks.js.html +1 -1
  101. package/coverage/core/api/services/databases/databases.service.js.html +1 -1
  102. package/coverage/core/api/services/databases/index.html +1 -1
  103. package/coverage/core/api/services/import-export/import-export.hooks.js.html +1 -1
  104. package/coverage/core/api/services/import-export/import-export.service.js.html +1 -1
  105. package/coverage/core/api/services/import-export/index.html +1 -1
  106. package/coverage/core/api/services/index.html +1 -1
  107. package/coverage/core/api/services/index.js.html +1 -1
  108. package/coverage/core/api/services/mailer/index.html +1 -1
  109. package/coverage/core/api/services/mailer/mailer.hooks.js.html +1 -1
  110. package/coverage/core/api/services/mailer/mailer.service.js.html +1 -1
  111. package/coverage/core/api/services/messages/index.html +1 -1
  112. package/coverage/core/api/services/messages/messages.hooks.js.html +1 -1
  113. package/coverage/core/api/services/push/index.html +1 -1
  114. package/coverage/core/api/services/push/push.hooks.js.html +1 -1
  115. package/coverage/core/api/services/push/push.service.js.html +1 -1
  116. package/coverage/core/api/services/storage/index.html +1 -1
  117. package/coverage/core/api/services/storage/storage.hooks.js.html +1 -1
  118. package/coverage/core/api/services/storage/storage.service.js.html +1 -1
  119. package/coverage/core/api/services/tags/index.html +1 -1
  120. package/coverage/core/api/services/tags/tags.hooks.js.html +1 -1
  121. package/coverage/core/api/services/users/index.html +1 -1
  122. package/coverage/core/api/services/users/users.hooks.js.html +1 -1
  123. package/coverage/core/api/services/users/users.service.js.html +1 -1
  124. package/coverage/core/common/errors.js.html +1 -1
  125. package/coverage/core/common/index.html +1 -1
  126. package/coverage/core/common/index.js.html +1 -1
  127. package/coverage/core/common/permissions.js.html +1 -1
  128. package/coverage/core/common/schema.js.html +1 -1
  129. package/coverage/core/common/utils.js.html +1 -1
  130. package/coverage/core/common/utils.offline.js.html +1 -1
  131. package/coverage/index.html +17 -17
  132. package/coverage/lcov-report/core/api/application.js.html +1 -1
  133. package/coverage/lcov-report/core/api/authentication.js.html +1 -1
  134. package/coverage/lcov-report/core/api/db.js.html +1 -1
  135. package/coverage/lcov-report/core/api/hooks/hooks.authentication.js.html +1 -1
  136. package/coverage/lcov-report/core/api/hooks/hooks.authorisations.js.html +1 -1
  137. package/coverage/lcov-report/core/api/hooks/hooks.logger.js.html +1 -1
  138. package/coverage/lcov-report/core/api/hooks/hooks.model.js.html +1 -1
  139. package/coverage/lcov-report/core/api/hooks/hooks.push.js.html +22 -10
  140. package/coverage/lcov-report/core/api/hooks/hooks.query.js.html +33 -6
  141. package/coverage/lcov-report/core/api/hooks/hooks.schemas.js.html +1 -1
  142. package/coverage/lcov-report/core/api/hooks/hooks.service.js.html +1 -1
  143. package/coverage/lcov-report/core/api/hooks/hooks.storage.js.html +1 -1
  144. package/coverage/lcov-report/core/api/hooks/hooks.tags.js.html +1 -1
  145. package/coverage/lcov-report/core/api/hooks/hooks.users.js.html +4 -4
  146. package/coverage/lcov-report/core/api/hooks/index.html +23 -23
  147. package/coverage/lcov-report/core/api/hooks/index.js.html +1 -1
  148. package/coverage/lcov-report/core/api/index.html +1 -1
  149. package/coverage/lcov-report/core/api/index.js.html +1 -1
  150. package/coverage/lcov-report/core/api/marshall.js.html +1 -1
  151. package/coverage/lcov-report/core/api/models/configurations.model.mongodb.js.html +1 -1
  152. package/coverage/lcov-report/core/api/models/index.html +1 -1
  153. package/coverage/lcov-report/core/api/models/messages.model.mongodb.js.html +1 -1
  154. package/coverage/lcov-report/core/api/models/tags.model.mongodb.js.html +1 -1
  155. package/coverage/lcov-report/core/api/models/users.model.mongodb.js.html +1 -1
  156. package/coverage/lcov-report/core/api/services/account/account.hooks.js.html +1 -1
  157. package/coverage/lcov-report/core/api/services/account/account.service.js.html +1 -1
  158. package/coverage/lcov-report/core/api/services/account/index.html +1 -1
  159. package/coverage/lcov-report/core/api/services/authorisations/authorisations.hooks.js.html +1 -1
  160. package/coverage/lcov-report/core/api/services/authorisations/authorisations.service.js.html +1 -1
  161. package/coverage/lcov-report/core/api/services/authorisations/index.html +1 -1
  162. package/coverage/lcov-report/core/api/services/configurations/configurations.hooks.js.html +1 -1
  163. package/coverage/lcov-report/core/api/services/configurations/index.html +1 -1
  164. package/coverage/lcov-report/core/api/services/databases/databases.hooks.js.html +1 -1
  165. package/coverage/lcov-report/core/api/services/databases/databases.service.js.html +1 -1
  166. package/coverage/lcov-report/core/api/services/databases/index.html +1 -1
  167. package/coverage/lcov-report/core/api/services/import-export/import-export.hooks.js.html +1 -1
  168. package/coverage/lcov-report/core/api/services/import-export/import-export.service.js.html +1 -1
  169. package/coverage/lcov-report/core/api/services/import-export/index.html +1 -1
  170. package/coverage/lcov-report/core/api/services/index.html +1 -1
  171. package/coverage/lcov-report/core/api/services/index.js.html +1 -1
  172. package/coverage/lcov-report/core/api/services/mailer/index.html +1 -1
  173. package/coverage/lcov-report/core/api/services/mailer/mailer.hooks.js.html +1 -1
  174. package/coverage/lcov-report/core/api/services/mailer/mailer.service.js.html +1 -1
  175. package/coverage/lcov-report/core/api/services/messages/index.html +1 -1
  176. package/coverage/lcov-report/core/api/services/messages/messages.hooks.js.html +1 -1
  177. package/coverage/lcov-report/core/api/services/push/index.html +1 -1
  178. package/coverage/lcov-report/core/api/services/push/push.hooks.js.html +1 -1
  179. package/coverage/lcov-report/core/api/services/push/push.service.js.html +1 -1
  180. package/coverage/lcov-report/core/api/services/storage/index.html +1 -1
  181. package/coverage/lcov-report/core/api/services/storage/storage.hooks.js.html +1 -1
  182. package/coverage/lcov-report/core/api/services/storage/storage.service.js.html +1 -1
  183. package/coverage/lcov-report/core/api/services/tags/index.html +1 -1
  184. package/coverage/lcov-report/core/api/services/tags/tags.hooks.js.html +1 -1
  185. package/coverage/lcov-report/core/api/services/users/index.html +1 -1
  186. package/coverage/lcov-report/core/api/services/users/users.hooks.js.html +1 -1
  187. package/coverage/lcov-report/core/api/services/users/users.service.js.html +1 -1
  188. package/coverage/lcov-report/core/common/errors.js.html +1 -1
  189. package/coverage/lcov-report/core/common/index.html +1 -1
  190. package/coverage/lcov-report/core/common/index.js.html +1 -1
  191. package/coverage/lcov-report/core/common/permissions.js.html +1 -1
  192. package/coverage/lcov-report/core/common/schema.js.html +1 -1
  193. package/coverage/lcov-report/core/common/utils.js.html +1 -1
  194. package/coverage/lcov-report/core/common/utils.offline.js.html +1 -1
  195. package/coverage/lcov-report/index.html +17 -17
  196. package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +1 -1
  197. package/coverage/lcov-report/map/api/hooks/hooks.features.js.html +1 -1
  198. package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +184 -4
  199. package/coverage/lcov-report/map/api/hooks/index.html +5 -5
  200. package/coverage/lcov-report/map/api/hooks/index.js.html +1 -1
  201. package/coverage/lcov-report/map/api/index.html +1 -1
  202. package/coverage/lcov-report/map/api/index.js.html +1 -1
  203. package/coverage/lcov-report/map/api/marshall.js.html +1 -1
  204. package/coverage/lcov-report/map/api/models/alerts.model.mongodb.js.html +1 -1
  205. package/coverage/lcov-report/map/api/models/catalog.model.mongodb.js.html +1 -1
  206. package/coverage/lcov-report/map/api/models/features.model.mongodb.js.html +1 -1
  207. package/coverage/lcov-report/map/api/models/index.html +1 -1
  208. package/coverage/lcov-report/map/api/models/projects.model.mongodb.js.html +1 -1
  209. package/coverage/lcov-report/map/api/models/styles.model.mongodb.js.html +1 -1
  210. package/coverage/lcov-report/map/api/services/alerts/alerts.hooks.js.html +1 -1
  211. package/coverage/lcov-report/map/api/services/alerts/alerts.service.js.html +1 -1
  212. package/coverage/lcov-report/map/api/services/alerts/index.html +1 -1
  213. package/coverage/lcov-report/map/api/services/catalog/catalog.hooks.js.html +1 -1
  214. package/coverage/lcov-report/map/api/services/catalog/index.html +1 -1
  215. package/coverage/lcov-report/map/api/services/daptiles/daptiles.service.js.html +1 -1
  216. package/coverage/lcov-report/map/api/services/daptiles/index.html +1 -1
  217. package/coverage/lcov-report/map/api/services/features/features.hooks.js.html +1 -1
  218. package/coverage/lcov-report/map/api/services/features/features.service.js.html +1 -1
  219. package/coverage/lcov-report/map/api/services/features/index.html +1 -1
  220. package/coverage/lcov-report/map/api/services/index.html +1 -1
  221. package/coverage/lcov-report/map/api/services/index.js.html +1 -1
  222. package/coverage/lcov-report/map/api/services/projects/index.html +1 -1
  223. package/coverage/lcov-report/map/api/services/projects/projects.hooks.js.html +1 -1
  224. package/coverage/lcov-report/map/api/services/styles/index.html +1 -1
  225. package/coverage/lcov-report/map/api/services/styles/styles.hooks.js.html +1 -1
  226. package/coverage/lcov-report/map/common/dynamic-grid-source.js.html +1 -1
  227. package/coverage/lcov-report/map/common/errors.js.html +1 -1
  228. package/coverage/lcov-report/map/common/geotiff-grid-source.js.html +1 -1
  229. package/coverage/lcov-report/map/common/grid.js.html +1 -1
  230. package/coverage/lcov-report/map/common/index.html +1 -1
  231. package/coverage/lcov-report/map/common/index.js.html +1 -1
  232. package/coverage/lcov-report/map/common/meteo-model-grid-source.js.html +1 -1
  233. package/coverage/lcov-report/map/common/moment-utils.js.html +1 -1
  234. package/coverage/lcov-report/map/common/opendap-grid-source.js.html +1 -1
  235. package/coverage/lcov-report/map/common/opendap-utils.js.html +1 -1
  236. package/coverage/lcov-report/map/common/permissions.js.html +1 -1
  237. package/coverage/lcov-report/map/common/time-based-grid-source.js.html +1 -1
  238. package/coverage/lcov-report/map/common/tms-utils.js.html +1 -1
  239. package/coverage/lcov-report/map/common/wcs-grid-source.js.html +1 -1
  240. package/coverage/lcov-report/map/common/wcs-utils.js.html +1 -1
  241. package/coverage/lcov-report/map/common/weacast-grid-source.js.html +1 -1
  242. package/coverage/lcov-report/map/common/wfs-utils.js.html +1 -1
  243. package/coverage/lcov-report/map/common/wms-utils.js.html +1 -1
  244. package/coverage/lcov-report/map/common/wmts-utils.js.html +1 -1
  245. package/coverage/lcov.info +358 -280
  246. package/coverage/map/api/hooks/hooks.catalog.js.html +1 -1
  247. package/coverage/map/api/hooks/hooks.features.js.html +1 -1
  248. package/coverage/map/api/hooks/hooks.query.js.html +184 -4
  249. package/coverage/map/api/hooks/index.html +5 -5
  250. package/coverage/map/api/hooks/index.js.html +1 -1
  251. package/coverage/map/api/index.html +1 -1
  252. package/coverage/map/api/index.js.html +1 -1
  253. package/coverage/map/api/marshall.js.html +1 -1
  254. package/coverage/map/api/models/alerts.model.mongodb.js.html +1 -1
  255. package/coverage/map/api/models/catalog.model.mongodb.js.html +1 -1
  256. package/coverage/map/api/models/features.model.mongodb.js.html +1 -1
  257. package/coverage/map/api/models/index.html +1 -1
  258. package/coverage/map/api/models/projects.model.mongodb.js.html +1 -1
  259. package/coverage/map/api/models/styles.model.mongodb.js.html +1 -1
  260. package/coverage/map/api/services/alerts/alerts.hooks.js.html +1 -1
  261. package/coverage/map/api/services/alerts/alerts.service.js.html +1 -1
  262. package/coverage/map/api/services/alerts/index.html +1 -1
  263. package/coverage/map/api/services/catalog/catalog.hooks.js.html +1 -1
  264. package/coverage/map/api/services/catalog/index.html +1 -1
  265. package/coverage/map/api/services/daptiles/daptiles.service.js.html +1 -1
  266. package/coverage/map/api/services/daptiles/index.html +1 -1
  267. package/coverage/map/api/services/features/features.hooks.js.html +1 -1
  268. package/coverage/map/api/services/features/features.service.js.html +1 -1
  269. package/coverage/map/api/services/features/index.html +1 -1
  270. package/coverage/map/api/services/index.html +1 -1
  271. package/coverage/map/api/services/index.js.html +1 -1
  272. package/coverage/map/api/services/projects/index.html +1 -1
  273. package/coverage/map/api/services/projects/projects.hooks.js.html +1 -1
  274. package/coverage/map/api/services/styles/index.html +1 -1
  275. package/coverage/map/api/services/styles/styles.hooks.js.html +1 -1
  276. package/coverage/map/common/dynamic-grid-source.js.html +1 -1
  277. package/coverage/map/common/errors.js.html +1 -1
  278. package/coverage/map/common/geotiff-grid-source.js.html +1 -1
  279. package/coverage/map/common/grid.js.html +1 -1
  280. package/coverage/map/common/index.html +1 -1
  281. package/coverage/map/common/index.js.html +1 -1
  282. package/coverage/map/common/meteo-model-grid-source.js.html +1 -1
  283. package/coverage/map/common/moment-utils.js.html +1 -1
  284. package/coverage/map/common/opendap-grid-source.js.html +1 -1
  285. package/coverage/map/common/opendap-utils.js.html +1 -1
  286. package/coverage/map/common/permissions.js.html +1 -1
  287. package/coverage/map/common/time-based-grid-source.js.html +1 -1
  288. package/coverage/map/common/tms-utils.js.html +1 -1
  289. package/coverage/map/common/wcs-grid-source.js.html +1 -1
  290. package/coverage/map/common/wcs-utils.js.html +1 -1
  291. package/coverage/map/common/weacast-grid-source.js.html +1 -1
  292. package/coverage/map/common/wfs-utils.js.html +1 -1
  293. package/coverage/map/common/wms-utils.js.html +1 -1
  294. package/coverage/map/common/wmts-utils.js.html +1 -1
  295. package/coverage/tmp/coverage-1028514-1773134124472-0.json +1 -0
  296. package/coverage/tmp/coverage-1028526-1773134124448-0.json +1 -0
  297. package/coverage/tmp/coverage-1028537-1773134124431-0.json +1 -0
  298. package/coverage/tmp/coverage-1028549-1773134124401-0.json +1 -0
  299. package/coverage/tmp/{coverage-222566-1765963609278-0.json → coverage-1028556-1773134124353-0.json} +1 -1
  300. package/extras/configs/widgets.top.js +3 -3
  301. package/extras/tests/core/collection.mjs +2 -9
  302. package/map/api/hooks/hooks.catalog.js +18 -4
  303. package/map/api/services/catalog/catalog.hooks.js +3 -0
  304. package/map/api/services/features/features.hooks.js +3 -1
  305. package/map/api/services/index.js +2 -6
  306. package/map/api/services/styles/styles.hooks.js +6 -1
  307. package/map/client/components/KFeatureActionButton.vue +9 -3
  308. package/map/client/components/KFeaturesFilterManager.vue +5 -5
  309. package/map/client/components/KFilterCondition.vue +17 -10
  310. package/map/client/components/KLayerEditor.vue +49 -39
  311. package/map/client/components/KMeasureTool.vue +7 -1
  312. package/map/client/components/KTimezoneMap.vue +29 -9
  313. package/map/client/components/catalog/KLayersPanel.vue +26 -16
  314. package/map/client/components/catalog/KLayersSelector.vue +13 -2
  315. package/map/client/components/catalog/KViewsPanel.vue +5 -4
  316. package/map/client/components/form/KSelectLayersField.vue +28 -17
  317. package/map/client/components/form/KSelectViewsField.vue +18 -9
  318. package/map/client/components/form/KTimezoneField.vue +1 -2
  319. package/map/client/components/legend/KVariablesLegend.vue +10 -1
  320. package/map/client/components/location/KLocationCardSection.vue +7 -2
  321. package/map/client/components/location/KLocationMap.vue +31 -7
  322. package/map/client/components/selection/KSelectedLayerFeatures.vue +2 -2
  323. package/map/client/components/stickies/KZoomControl.vue +1 -1
  324. package/map/client/components/styles/KStyleManager.vue +4 -1
  325. package/map/client/components/widget/KTimeSeries.vue +174 -497
  326. package/map/client/components/widget/KTimeSeriesSelector.vue +72 -0
  327. package/map/client/components/widget/KTimeSeriesToolbar.vue +83 -0
  328. package/map/client/composables/catalog.js +6 -10
  329. package/map/client/composables/highlight.js +12 -9
  330. package/map/client/composables/project.js +1 -1
  331. package/map/client/composables/selection.js +8 -7
  332. package/map/client/composables/weather.js +9 -2
  333. package/map/client/geolocation.js +8 -5
  334. package/map/client/i18n/map_en.json +10 -8
  335. package/map/client/i18n/map_fr.json +9 -7
  336. package/map/client/leaflet/TiledFeatureLayer.js +85 -82
  337. package/map/client/leaflet/utils/utils.geojson.js +3 -3
  338. package/map/client/mixins/globe/mixin.base-globe.js +15 -6
  339. package/map/client/mixins/globe/mixin.geojson-layers.js +27 -18
  340. package/map/client/mixins/map/mixin.edit-layers.js +9 -1
  341. package/map/client/mixins/map/mixin.pmtiles-layers.js +118 -29
  342. package/map/client/mixins/map/mixin.tiled-mesh-layers.js +12 -5
  343. package/map/client/mixins/map/mixin.tiled-wind-layers.js +19 -10
  344. package/map/client/mixins/mixin.activity.js +23 -30
  345. package/map/client/mixins/mixin.feature-selection.js +41 -5
  346. package/map/client/planets.js +1 -1
  347. package/map/client/readers/reader.kml.js +2 -3
  348. package/map/client/utils/utils.catalog.js +36 -10
  349. package/map/client/utils/utils.layers.js +39 -8
  350. package/map/client/utils/utils.project.js +4 -0
  351. package/map/client/utils/utils.style.js +37 -7
  352. package/map/client/utils/utils.time-series.js +215 -6
  353. package/map/common/schemas/catalog.update.json +1 -1
  354. package/map/common/weacast-grid-source.js +1 -1
  355. package/package.json +3 -3
  356. package/scripts/kash/CHANGELOG.md +0 -4
  357. package/scripts/kash/README.md +0 -9
  358. package/scripts/kash/kash.sh +45 -40
  359. package/scripts/kash/scripts/run_tests.sh +1 -4
  360. package/test/api/core/authentication.test.js +9 -4
  361. package/test/api/core/config/default.cjs +1 -0
  362. package/test/api/core/hooks.test.js +6 -0
  363. package/test/api/core/index.test.js +43 -18
  364. package/test/api/core/push.test.js +8 -8
  365. package/test/api/core/test-log-2026-03-10.log +60 -0
  366. package/test/api/core/users.test.js +384 -0
  367. package/test/api/map/grid-sources.test.js +1 -1
  368. package/test/api/map/test-log-2026-03-10.log +56 -0
  369. package/vite/package.json +11 -2
  370. package/vite/test/core/composables.test.js +77 -0
  371. package/vite/vitest.config.js +13 -0
  372. package/vite/yarn.lock +1096 -18
  373. package/client/css/core.variables.scss +0 -72
  374. package/client/i18n/core_en.json +0 -744
  375. package/client/i18n/core_fr.json +0 -744
  376. package/client/i18n/map_en.json +0 -800
  377. package/client/i18n/map_fr.json +0 -800
  378. package/client/kdk.client.css +0 -47
  379. package/client/kdk.client.js +0 -41097
  380. package/client/kdk.client.map.css +0 -47
  381. package/client/kdk.client.map.js +0 -38182
  382. package/client/kdk.client.map.min.css +0 -1
  383. package/client/kdk.client.map.min.js +0 -27032
  384. package/client/kdk.client.min.css +0 -1
  385. package/client/kdk.client.min.js +0 -29074
  386. package/client/schemas/capture.create.json +0 -132
  387. package/client/schemas/catalog.update.json +0 -44
  388. package/client/schemas/messages.update.json +0 -16
  389. package/client/schemas/projects.create.json +0 -52
  390. package/client/schemas/projects.update.json +0 -52
  391. package/client/schemas/settings.update.json +0 -286
  392. package/client/schemas/tags.update.json +0 -35
  393. package/client/schemas/users.update-profile.json +0 -34
  394. package/core/client/components/account/KAccount.vue +0 -68
  395. package/core/client/components/account/KDeleteAccountManager.vue +0 -62
  396. package/core/client/components/account/KEmailManager.vue +0 -128
  397. package/core/client/components/account/KPasswordManager.vue +0 -90
  398. package/core/client/components/account/KVerifyEmailManager.vue +0 -105
  399. package/core/client/components/collection/KColumn.vue +0 -227
  400. package/core/client/components/collection/KHistory.vue +0 -113
  401. package/core/client/components/collection/KHistoryEntry.vue +0 -109
  402. package/coverage/tmp/coverage-222524-1765963609350-0.json +0 -1
  403. package/coverage/tmp/coverage-222536-1765963609335-0.json +0 -1
  404. package/coverage/tmp/coverage-222547-1765963609324-0.json +0 -1
  405. package/coverage/tmp/coverage-222559-1765963609309-0.json +0 -1
  406. package/scripts/kash/LICENSE +0 -21
  407. package/test/api/core/test-log-2025-07-31.log +0 -15
  408. package/test/api/core/test-log-2025-10-03.log +0 -18
  409. package/test/api/core/test-log-2025-11-10.log +0 -0
  410. package/test/api/core/test-log-2025-11-12.log +0 -117
  411. package/test/api/core/test-log-2025-11-27.log +0 -0
  412. package/test/api/core/test-log-2025-11-28.log +0 -17
  413. package/test/api/core/test-log-2025-12-09.log +0 -148
  414. package/test/api/core/test-log-2025-12-17.log +0 -58
  415. package/test/api/core/test-log-2026-01-29.log +0 -17
  416. package/test/api/map/test-log-2025-07-23.log +0 -1
  417. package/test/api/map/test-log-2025-11-28.log +0 -33
  418. package/test/api/map/test-log-2025-12-10.log +0 -2
  419. package/test/api/map/test-log-2026-01-06.log +0 -26
@@ -1,800 +0,0 @@
1
- {
2
- "LAYERS_LABEL": "My data",
3
- "VIEWS_LABEL": "My views",
4
- "PROJECTS_LABEL": "My projects",
5
- "CATALOG_LABEL": "Catalog",
6
- "PROJECT_LAYERS_LABEL": "Data",
7
- "PROJECT_VIEWS_LABEL": "Views",
8
- "layout": {
9
- "SHOW_USER_LOCATION": "Show my location",
10
- "HIDE_USER_LOCATION": "Hide my location",
11
- "SEARCH_LOCATION": "Search a location",
12
- "LEGEND": "Legend",
13
- "SELECTION_MANAGER": "Selection manager",
14
- "STYLES_MANAGER": "Styles manager",
15
- "TAGS_MANAGER": "Tags manager",
16
- "TIME_SERIES": "Time series",
17
- "POSITION": "Geographical coordinates",
18
- "ZOOM_CONTROL": "Zoom control",
19
- "NORTH_ARROW": "North arrow",
20
- "MEASURE_TOOL": "Measure tool",
21
- "PRINT_TOOL": "Print tool",
22
- "PRINT": "Print"
23
- },
24
- "errors": {
25
- "GEOLOCATION_NOT_SUPPORTED": "Geolocation does not seem to be supported on your device or browser.",
26
- "GEOLOCATION_ERROR": "We are not able to locate your position, this might affect some features of the application.",
27
- "GEOLOCATION_PERMISSION_DENIED": "@:errors.GEOLOCATION_ERROR It seems you did not give permission to locate you.",
28
- "GEOLOCATION_POSITION_UNAVAILABLE": "@:errors.GEOLOCATION_ERROR It seems the internal source of position returned an internal error.",
29
- "GEOLOCATION_POSITION_TIMEOUT": "@:errors.GEOLOCATION_ERROR It seems the time allowed to acquire it was reached before the information was obtained.",
30
- "CANNOT_PROCESS_SCHEMA_DATA": "Invalid or incomplete data scheme",
31
- "ALERTS_LIMIT": "Too much alerts to display all of them",
32
- "FILE_IMPORT_ERROR": "File import has failed",
33
- "CANNOT_CHECK_ALERT_MISSING_SERVICE": "Last check failed due to unavailable service",
34
- "CANNOT_CHECK_ALERT_MISSING_DATA": "Last check failed due to unavailable data",
35
- "INVALID_GEOJSON_FILE": "{file} is not a valid GeoJSON file",
36
- "INVALID_GEOJSON_CRS": "{file} has an unsupported Coordinates Reference System (CRS)",
37
- "INVALID_GPX_FILE": "{file} is not a valid GPX file",
38
- "INVALID_KML_FILE": "{file} is not a valid KML file",
39
- "GEOMETRY_ERROR": "<b>{total}</b> topology validation errors",
40
- "GEOMETRY_REPEATED_POINT": "<b>{total}</b> errors of <b>repeated points</b>",
41
- "GEOMETRY_HOLE_OUTSIDE_SHELL": "<b>{total}</b> errors of <b>holes outside shell</b>",
42
- "GEOMETRY_NESTED_HOLES": "<b>{total}</b> errors of <b>nested holes</b>",
43
- "GEOMETRY_DISCONNECTED_INTERIOR": "<b>{total}</b> errors of <b>disconnected interiors</b>",
44
- "GEOMETRY_SELF_INTERSECTION": "<b>{total}</b> errors of <b>self-intersection</b>",
45
- "GEOMETRY_RING_SELF_INTERSECTION": "<b>{total}</b> errors of <b>ring self-intersection</b>",
46
- "GEOMETRY_NESTED_SHELLS": "<b>{total}</b> errors of <b>nested shells</b>",
47
- "GEOMETRY_DUPLICATE_RINGS": "<b>{total}</b> errors of <b>duplicate rings</b>",
48
- "GEOMETRY_TOO_FEW_POINTS": "<b>{total}</b> errors of <b>too few distinct points in geometry component</b>",
49
- "GEOMETRY_INVALID_COORDINATES": "<b>{total}</b> errors of <b>invalid coordinates</b>",
50
- "GEOMETRY_RING_NOT_CLOSED": "<b>{total}</b> errors of <b>ring not closed</b>"
51
- },
52
- "utils": {
53
- "layers": {
54
- "INVALID_FEATURES_DIALOG_TITLE": "Invalid elements",
55
- "INVALID_FEATURES_DIALOG_MESSAGE": "Your layer contains {total} elements with invalid geometry. As a consequence they will be removed prior to saving.",
56
- "INVALID_FEATURES_LIST_ERRORS": "<div class='text-subtitle2 q-mt-xs'>Liste des erreurs : </div><ul class='q-ma-none q-pl-lg'>{errors}</ul>",
57
- "INVALID_FEATURES_LIST_FEATURES": " sur les éléments: ",
58
- "SAVING_LABEL": "Please wait while saving layer data,</br>processed {processed} over {total} features",
59
- "SAVE_DIALOG_TITLE": "Tiling layer {layer}",
60
- "SAVE_DIALOG_MESSAGE": "Your layer contains too much elements and has been optimized to be smoothly displayed.</br>As a consequence, it will only be visible at a local scale from a given zoom level.",
61
- "REMOVING_LABEL": "Please wait while removing layer data",
62
- "REMOVE_DIALOG_TITLE": "Remove {layer} ?",
63
- "REMOVE_DIALOG_MESSAGE": "Are you sure you want to remove <b>{layer}</b> from your workspace ?"
64
- },
65
- "capture": {
66
- "CAPTURE_PDF_FILE": "capture_{time}.pdf",
67
- "CAPTURE_IMAGE_FILE": "capture_{time}.png"
68
- }
69
- },
70
- "mixins": {
71
- "fileLayers": {
72
- "IMPORTED_DATA_NAME": "My data"
73
- },
74
- "legend": {
75
- "CONVERT_UNITS": "Click to change unit"
76
- },
77
- "activity": {
78
- "ADD_LAYER": "Add a layer",
79
- "EDIT_LABEL": "Edit properties",
80
- "EDIT_LAYER_STYLE_LABEL": "Edit style",
81
- "RESET_LAYER_STYLE_LABEL": "Reset style",
82
- "FILTER_DATA_LABEL": "Filter data",
83
- "VIEW_DATA_LABEL": "View data",
84
- "CHART_DATA_LABEL": "Chart data",
85
- "START_EDIT_DATA_LABEL": "Start data edit",
86
- "STOP_EDIT_DATA_LABEL": "Stop data edit",
87
- "EDIT_POINTS_DATA_LABEL": "Edit points",
88
- "EDIT_LINES_DATA_LABEL": "Edit lines",
89
- "EDIT_POLYGONS_DATA_LABEL": "Edit polygons",
90
- "EDIT_PROPERTIES_LABEL": "Edit properties",
91
- "EDIT_GEOMETRIES_LABEL": "Edit geometries",
92
- "EDITING_DATA_MESSAGE": "Editing",
93
- "ZOOM_TO_LABEL": "Zoom to",
94
- "ZOOM_IN": "Zoom in",
95
- "ZOOM_OUT": "Zoom out",
96
- "BRING_TO_FRONT_LABEL": "Display on top",
97
- "BRING_TO_BACK_LABEL": "Display at bottom",
98
- "TOGGLE_CATALOG": "Catalog",
99
- "TOGGLE_MAP": "View in 2D",
100
- "TOGGLE_GLOBE": "View in 3D",
101
- "ENTER_VR": "Enter VR mode",
102
- "EXIT_VR": "Exit VR mod",
103
- "PROBE": "Probe",
104
- "SEARCH_LOCATION": "Search a location",
105
- "ADD_VIEW": "Add view",
106
- "CREATE_VIEW": "Create view",
107
- "CREATE_PROJECT": "Create project",
108
- "MANAGE_PROJECT": "Manage project",
109
- "SYNCHRONIZE_TIMELINE_LABEL": "Synchronize with timeline",
110
- "TOOLS": "Tools",
111
- "SAVE_LAYER_EDITION_CHANGES": "Save edition changes",
112
- "DISCARD_LAYER_EDITION_CHANGES": "Discard edition changes",
113
- "SAVE_LABEL": "Save layer",
114
- "PRINT_VIEW": "Print view",
115
- "REMOVE_LABEL": "Remove"
116
- },
117
- "gesture": {
118
- "TOUCH": "Use two fingers to move the map",
119
- "SCROLL": "Use Ctrl + scroll to zoom the map",
120
- "SCROLL_MAC": "Use ⌘ + scroll to zoom the map",
121
- "CTRL": "Use Ctrl + scroll to zoom the map"
122
- },
123
- "timeseries": {
124
- "FORECAST_PROBE": "Forecast"
125
- },
126
- "editLayers": {
127
- "draw": {
128
- "toolbar": {
129
- "actions": {
130
- "title": "Cancel drawing",
131
- "text": "Cancel"
132
- },
133
- "finish": {
134
- "title": "Finish drawing",
135
- "text": "Finish"
136
- },
137
- "undo": {
138
- "title": "Delete last point drawn",
139
- "text": "Delete last point"
140
- },
141
- "buttons": {
142
- "polyline": "Draw a polyline",
143
- "polygon": "Draw a polygon",
144
- "rectangle": "Draw a rectangle",
145
- "circle": "Draw a circle",
146
- "marker": "Draw a marker",
147
- "circlemarker": "Draw a circlemarker"
148
- }
149
- },
150
- "handlers": {
151
- "circle": {
152
- "tooltip": {
153
- "start": "Click and drag to draw circle."
154
- },
155
- "radius": "Radius"
156
- },
157
- "circlemarker": {
158
- "tooltip": {
159
- "start": "Click map to place circle marker."
160
- }
161
- },
162
- "marker": {
163
- "tooltip": {
164
- "start": "Click map to place marker."
165
- }
166
- },
167
- "polygon": {
168
- "tooltip": {
169
- "start": "Click to start drawing shape.",
170
- "cont": "Click to continue drawing shape.",
171
- "end": "Click first point to close this shape."
172
- }
173
- },
174
- "polyline": {
175
- "error": "<strong>Error:</strong> shape edges cannot cross!",
176
- "tooltip": {
177
- "start": "Click to start drawing line.",
178
- "cont": "Click to continue drawing line.",
179
- "end": "Click last point to finish line."
180
- }
181
- },
182
- "rectangle": {
183
- "tooltip": {
184
- "start": "Click and drag to draw rectangle."
185
- }
186
- },
187
- "simpleshape": {
188
- "tooltip": {
189
- "end": "Release mouse to finish drawing."
190
- }
191
- }
192
- }
193
- },
194
- "edit": {
195
- "toolbar": {
196
- "actions": {
197
- "save": {
198
- "title": "Save changes",
199
- "text": "Save"
200
- },
201
- "cancel": {
202
- "title": "Cancel editing, discards all changes",
203
- "text": "Cancel"
204
- },
205
- "clearAll": {
206
- "title": "Clear all layers",
207
- "text": "Clear All"
208
- }
209
- },
210
- "buttons": {
211
- "edit": "Edit layers",
212
- "editDisabled": "No layers to edit",
213
- "remove": "Delete layers",
214
- "removeDisabled": "No layers to delete"
215
- }
216
- },
217
- "handlers": {
218
- "edit": {
219
- "tooltip": {
220
- "text": "Drag handles or markers to edit features.",
221
- "subtext": "Click cancel to undo changes."
222
- }
223
- },
224
- "remove": {
225
- "tooltip": {
226
- "text": "Click on a feature to remove."
227
- }
228
- }
229
- }
230
- }
231
- }
232
- },
233
- "geolocation": {
234
- "TITLE": "My position",
235
- "METERS": "meters",
236
- "FEET": "feet",
237
- "POPUP": "You are within {'{distance}'} {'{unit}'} from this point",
238
- "OUTSIDE_MAP_BOUNDS": "You seem located outside the boundaries of the map"
239
- },
240
- "schemas": {
241
- "CATALOG_CREATE_TITLE": "Create a new data layer",
242
- "CATALOG_NAME_FIELD_LABEL": "Enter the name of the new layer",
243
- "CATALOG_DESCRIPTION_FIELD_LABEL": "Enter the description of the new layer",
244
- "CATALOG_FEATURE_ID_FIELD_LABEL": "Enter a unique feature ID property name",
245
- "CATALOG_FEATURE_LABEL_FIELD_LABEL": "Enter the feature label property name",
246
- "CATALOG_SCHEMA_FIELD_LABEL": "Select a data scheme",
247
- "LAYER_CATEGORY_CREATE_TITLE": "Create a new category?",
248
- "LAYER_CATEGORY_NAME_FIELD_LABEL": "Enter the name of this category",
249
- "LAYER_CATEGORY_ICON_FIELD_LABEL": "Select an icon for this category",
250
- "LAYER_CATEGORY_LAYERS_FIELD_LABEL": "Select the layers in this category",
251
- "LAYER_CATEGORY_EXCLUSIVE_FIELD_LABEL": "Make selection exclusive within this category",
252
- "PROJECT_CREATE_TITLE": "Create a new project?",
253
- "PROJECT_NAME_FIELD_LABEL": "Enter the name of this project",
254
- "PROJECT_DESCRIPTION_FIELD_LABEL": "Enter the description of this project",
255
- "PROJECT_LAYERS_FIELD_LABEL": "Select the layers in this project",
256
- "PROJECT_VIEWS_FIELD_LABEL": "Select the views in this project",
257
- "PROJECT_INDENTIFIER_FIELD_LABEL": "Enter the identifier of this project for third-party applications",
258
- "MAP_SETTINGS": "Map parameters",
259
- "RESTORE_VIEW_FIELD_LABEL": "Save current extent",
260
- "RESTORE_LAYERS_FIELD_LABEL": "Save active layers",
261
- "LOCATION_FORMAT_LABEL": "Location format",
262
- "TIMELINE_SETTINGS": "Timeline parameters",
263
- "TIMELINE_STEP": "Timeline step (in minutes)",
264
- "TIMELINE_INTERVAL": "Real-time data refresh update interval",
265
- "TIMESERIES_SETTINGS": "Timeseries parameters",
266
- "TIMESERIES_SPAN": "Timeseries span (in hours)",
267
- "TIMESERIES_GROUP_BY": "Timeseries grouping",
268
- "TIMESERIES_GROUP_BY_VARIABLE": "Broup by variable",
269
- "TIMESERIES_GROUP_BY_FEATURE": "Group by geographical feature",
270
- "CAPTURE_RESOLUTION_FIELD_LABEL": "Resolution setting",
271
- "CAPTURE_HEADER_FIELD_LABEL": "Title setting",
272
- "CAPTURE_FOOTER_FIELD_LABEL": "Footer setting",
273
- "CAPTURE_NOT_DISPLAYED_FIELD_LABEL": "Do not display",
274
- "CAPTURE_LEGEND_POSITION_FIELD_LABEL": "Set legend position",
275
- "CAPTURE_LEFT_POSITION_FIELD_LABEL": " Display left",
276
- "CAPTURE_RIGHT_POSITION_FIELD_LABEL": " Display right",
277
- "CAPTURE_COMPASS_POSITION_FIELD_LABEL": "Set compass position",
278
- "CAPTURE_TOP_LEFT_POSITION_FIELD_LABEL": "Display top left",
279
- "CAPTURE_TOP_RIGHT_POSITION_FIELD_LABEL": "Display top right",
280
- "CAPTURE_BOTTOM_RIGHT_POSITION_FIELD_LABEL": "Display bottom right",
281
- "CAPTURE_BOTTOM_LEFT_POSITION_FIELD_LABEL": "Display bottom left",
282
- "CAPTURE_ADVANCED_SETTINGS": "Advanced setting",
283
- "CAPTURE_DATETIME_RANGE_FIELD_LABEL": "Set time interval",
284
- "CAPTURE_FORMAT_FIELD_LABEL": "Select file format",
285
- "CAPTURE_PDF_FORMAT_FIELD_LABEL": "PDF",
286
- "CAPTURE_PNG_FORMAT_FIELD_LABEL": "PNG"
287
- },
288
- "tours": {
289
- "navigation-bar": {
290
- "NAVIGATION_BAR_LABEL": "This bar allows to quickly execute recurring actions on the map.",
291
- "ZOOM_LABEL": "Zoom in/out using these buttons.",
292
- "TOGGLE_MAP_LABEL": "Switch to 2D map view using this button.",
293
- "TOGGLE_GLOBE_LABEL": "Switch to 3D map view using this button.",
294
- "GEOLOCATE_LABEL": "Recenter the map on your location and display it using this button.",
295
- "SEARCH_LOCATION_LABEL": "Seek for an address using this button.",
296
- "LOCATION_SEARCHING_LABEL": "Type part of your address and select among the proposed locations to center the map on.",
297
- "LOCATION_BACK_LABEL": "Close the coordinates widget by clicking this button.",
298
- "SEARCH_BACK_LABEL": "Then stop searching by going back to the actions.",
299
- "TOOLS_LABEL": "Select among available tools using this button.",
300
- "TRACK_LOCATION_LABEL": "Display the coordinates of a location using this button.",
301
- "COPY_LOCATION_LABEL": "Copy the coordinates in your clipboard using this button.",
302
- "LOCATION_TRACKING_LABEL": "Drag the screen to display the coordinates of its center and release to keep track of it.",
303
- "TRACK_BACK_LABEL": "Then stop tracking by going back to the actions.",
304
- "MEASURE_LABEL": "Activate measure tools using this button.",
305
- "MEASURE_DISTANCE_LABEL": "Measure a distance using this button.",
306
- "MEASURE_DISTANCE_DETAILS_LABEL": "Draw the line segment(s) you'd like to measure on the map and hover any elements to get measure information.",
307
- "MEASURE_AREA_LABEL": "Measure an area using this button.",
308
- "MEASURE_AREA_DETAILS_LABEL": "Draw the polygons(s) you'd like to measure on the map and hover any elements to get measure information.",
309
- "MEASURE_CIRCLE_LABEL": "Measure an isodistance using this button.",
310
- "MEASURE_CIRCLE_DETAILS_LABEL": "Draw the circle(s) you'd like to measure on the map and hover any elements to get measure information.",
311
- "MEASURE_FEATURE_LABEL": "Measure a geographical feature using this button.",
312
- "MEASURE_FEATURE_DETAILS_LABEL": "Select the feature you'd like to measure on the map to get measure information.",
313
- "PRINT_MAP_LABEL": "Print the view using this button.",
314
- "CAPTURE_BUTTON_LABEL": "Capture and download the view using this button.",
315
- "CAPTURE_BACK_LABEL": "Then stop capturing by going back to the actions.",
316
- "CLEAR_MEASURE_LABEL": "Clear your current measurements using this button.",
317
- "MEASURE_BACK_LABEL": "Then stop measuring by going back to the actions.",
318
- "TOGGLE_VR_LABEL": "Switch to Virtual Reality (VR) mode with this button.",
319
- "TOGGLE_FULLSCREEN_LABEL": "Switch to fullscreen mode with this button.",
320
- "TOGGLE_CATALOG_LABEL": "Open the catalog with this button.",
321
- "NORTH_ARROW_LABEL": "Display or hide the north arrow using this button."
322
- },
323
- "catalog-panel": {
324
- "CATALOG_LABEL": "The <b>catalog</b> allows to manage data displayed on your map.<br/>The catalogd is divided into 3 different tabs.",
325
- "USER_LAYERS_LABEL": "Your data space. You can import data files, connect to a map server or create a new dataset.",
326
- "CATEGORIES_LABEL": "The data are organised into different categories.",
327
- "USER_VIEWS_LABEL": "Your favorite views.</br>The views allow you to position yourself at defined places while activating some data layers.",
328
- "USER_VIEWS_CREATE_LABEL": "How to create a view.",
329
- "USER_VIEWS_FILTER_LABEL": "Filter the views",
330
- "USER_VIEWS_SORTER_LABEL": "Sort the views",
331
- "USER_VIEWS_VIEW_LABEL": "Click on the view to update the map.",
332
- "USER_VIEWS_SET_HOME_LABEL": "Set this view as the default view",
333
- "USER_VIEWS_REMOVE_LABEL": "Remove the view",
334
- "CATEGORY_LABEL": "Select a category to list all available data layers.",
335
- "SHOW_LAYER_LABEL": "Select a layer to show it on the map, it will then be highlighted in the list.",
336
- "MIN_LEVEL_LABEL": "When a layer is not visible according to your scale it will be disabled, you must zoom in to make it show on the map.",
337
- "HIDE_LAYER_LABEL": "A new selection will hide it.",
338
- "METEO_MODEL_LABEL": "Regarding meteorological data you can also switch the prediction model if multiple are available.",
339
- "METEO_LAYERS_LABEL": "Each layer will then target data of a specific meteorological element from this model.",
340
- "MANAGE_LAYER_CATEGORIES_LABEL": "You can manage the categories of your own data layers.",
341
- "MANAGE_LAYER_CATEGORIES_LINK_LABEL": "How to manage the categories",
342
- "CATEGORIES_LIST_LABEL": "When you have defined some categories they are listed here, otherwise you can directly create your first one.",
343
- "CATEGORIES_LIST_ACTIONS_LABEL": "Sort your categories by name or update time and seek for a target one.",
344
- "CATEGORY_ACTIONS_LABEL": "Update or remove a category by using these buttons.",
345
- "ADD_CATEGORY_LABEL": "Add a new category using this button.",
346
- "LAYER_CATEGORY_NAME_LABEL": "Enter the name of your new category.",
347
- "LAYER_CATEGORY_ICON_LABEL": "Enter the icon of your new category.",
348
- "LAYER_CATEGORY_LAYERS_LABEL": "Select the layers to be part of this category.",
349
- "LAYER_CATEGORY_EXCLUSIVE_LABEL": "Set if only one layer should be visible at a time in this category.",
350
- "CREATE_NEW_LAYER_CATEGORY_LABEL": "Confirm the creation of your new category in the catalog."
351
- },
352
- "timeline": {
353
- "TIMELINE_LABEL": "The timeline allows to quickly execute actions related to the time of displayed data.",
354
- "DATE_LABEL": "Jump to any given date by using this button.",
355
- "PICK_DAY_LABEL": "Pick a given day.",
356
- "PICK_TIMES_LABEL": "Or pick time.",
357
- "NOW_LABEL": "Activate to real-time using this button.",
358
- "STEP_LABEL": "Update step using this button.",
359
- "NEXT_STEP_LABEL": "Go forward in time to the next step as configured.",
360
- "PREVIOUS_STEP_LABEL": "Go backward in time to the previous step as configured.",
361
- "NEXT_HOUR_LABEL": "Go forward in time to the next hour.",
362
- "PREVIOUS_HOUR_LABEL": "Go backward in time to the previous hour.",
363
- "NEXT_DAY_LABEL": "Go forward in time to the next day.",
364
- "PREVIOUS_DAY_LABEL": "Go backward in time to the previous day."
365
- },
366
- "fab": {
367
- "PROBE_LABEL": "Probe weather forecast data at a specific location.",
368
- "PROBE_CURSOR_LABEL": "After selecting this option click on a target location on the map to display related forecast data.",
369
- "ADD_LAYER_LABEL": "Add a new data layer.",
370
- "ADD_LAYER_LINK_LABEL": "How to add a new data layer",
371
- "CREATE_VIEW_LABEL": "Add a new views using this button.",
372
- "CREATE_VIEW_LINK_LABEL": "How to create a new view"
373
- },
374
- "add-layer": {
375
- "ADD_LAYER_LINK_LABEL": "How to add others types of data layers",
376
- "FILE_LABEL": "Select your data file in GeoJSON format.",
377
- "SERVICE_LABEL": "Enter the URL of the GetCapabilities request for the target OGC service.",
378
- "SERVICE_LAYER_LABEL": "Select the target OGC service layer to connect to.",
379
- "LAYER_NAME_LABEL": "Enter the name of your new data layer.",
380
- "LAYER_DESCRIPTION_LABEL": "Then provide a description for your new data layer.",
381
- "LAYER_FEATURE_ID_LABEL": "Last, choose an identifier to uniquely identify the features of your layer.",
382
- "LAYER_STYLE_LABEL": "Select the style to be used for your layer.",
383
- "LAYER_SCHEMA_LABEL": "Select the data schema of your features (JSON schema file).",
384
- "IMPORT_LAYER_LABEL": "Import existing data as a new data layer.",
385
- "IMPORT_LAYER_LINK_LABEL": "How to import map data",
386
- "IMPORT_NEW_LAYER_LABEL": "Confirm the creation of your new layer and the map will be centered on your new layer.",
387
- "CONNECT_LAYER_LABEL": "Connect your layer to a remote OGC service (WMS, WFS, WMTS, TMS).",
388
- "CONNECT_LAYER_LINK_LABEL": "How to connect a layer",
389
- "CONNECT_NEW_LAYER_LABEL": "Confirm the creation of your new layer.",
390
- "CREATE_LAYER_LABEL": "Create a new blank data layer based on a data schema.",
391
- "CREATE_LAYER_LINK_LABEL": "How to create a new data layer",
392
- "CREATE_NEW_LAYER_LABEL": "Confirm the creation of your new layer and start editing the data on the map."
393
- },
394
- "create-view": {
395
- "NAME_FIELD_LABEL": "Saisissez un nom pour votre nouvelle vue",
396
- "DESCRIPTION_FIELD_LABEL": "Enter the name of your new view.",
397
- "LAYERS_FIELD_LABEL": "Select whether the currently active layers will be restaured with this view or not.",
398
- "APPLY_BUTTON_LABEL": "Confirm the creation of your new favorite view."
399
- },
400
- "side-nav": {
401
- "HELP_LABEL": "Access our online help anytime",
402
- "CONTEXT_HELP_LABEL": "To get contextual help whenever your are lost simply click on the following icon",
403
- "ABOUT_LABEL": "Display detailed system information and send us bug reports.",
404
- "BUG_LABEL": "Send us a bug report with a preformatted email containing required information.",
405
- "SETTINGS_LABEL": "Update general settings of the system on your device.",
406
- "LOGOUT_LABEL": "Logout in order to close your work session.",
407
- "SESSION_LABEL": "Otherwise the session will remain active on your device for <b>24H</b>, you will not have to login again in this time frame."
408
- }
409
- },
410
- "KOwsServiceField": {
411
- "INVALID_URL": "Invalid URL",
412
- "CANNOT_FETCH_URL": "Failed fetching resource.",
413
- "WFS_MISSING_GEOJSON_SUPPORT": "The WFS service has no support for GeoJSON, which is required.",
414
- "HEADER_KEY": "Token header key",
415
- "HEADER_VALUE": "Token value",
416
- "UNAUTHORIZED_MESSAGE": "You do not seem to be authorized to access this service, you might need to add an API key in the request header."
417
- },
418
- "KOwsLayerField": {
419
- "UNABLE_TO_DESCRIBE_FEATURE_TYPE": "Failed fetching layer's description.",
420
- "UNSUPPORTED_LAYER_CRS": "The projection used by this layer is not supported.",
421
- "UNSUPPORTED_LAYER_FORMAT": "The data format used by this layer is not supported."
422
- },
423
- "KSelectViewsField": {
424
- "EMPTY": "None available"
425
- },
426
- "KLocationSearch": {
427
- "SEARCH": "@:SEARCH",
428
- "NO_RESULT": "No result found",
429
- "ENABLE_VIEWBOX": "Activate search limitation to the current view",
430
- "DISABLE_VIEWBOX": "Deactivate search limitation to the current view",
431
- "FILTER_GEOCODERS": "Filter search sources"
432
- },
433
- "KLocationField": {
434
- "SEARCH": "@:SEARCH",
435
- "NO_RESULT": "No result found",
436
- "FILTER": "Filter search services",
437
- "GEOLOCATE": "Locate me",
438
- "DRAW": "Draw on a map",
439
- "VIEWBOX": "Restrict search to defined area"
440
- },
441
- "KLocationMap": {
442
- "RECENTER_MAP": "Recenter map",
443
- "LOCATE_ME": "Locate me",
444
- "DRAW_POINT": "Designate a point",
445
- "DRAW_LINE": "Draw a path",
446
- "DRAW_RECTANGLE": "Draw a rectangle",
447
- "DRAW_POLYGON": "Draw a polygon",
448
- "ZONE": "Zone",
449
- "PATH": "Path"
450
- },
451
- "KLocationCardSection": {
452
- "TITLE": "Location",
453
- "NO_LOCATION": "Undefined location"
454
- },
455
- "KTimezoneField": {
456
- "TIMEZONE_MAP_TOOLTIP": "Select timezone on a map",
457
- "TIMEZONE_MAP_TITLE": "Select the target timezone"
458
- },
459
- "KPositionIndicator": {
460
- "PLACEHOLDER": "Navigate the see the coordinates",
461
- "COPY": "Copy the coordinates",
462
- "CLEAR": "Clear",
463
- "POSITION_COPIED": "Position copied to clipboard",
464
- "CANNOT_COPY_POSITION": "Unable to copy the position to clipboard. Your browser does not support this functionality",
465
- "OUTSIDE_MAP": "Indeterminated position"
466
- },
467
- "KTimeSeries": {
468
- "LABEL": "Time series",
469
- "CHART_SERIE_TOOLTIP": "View graph",
470
- "TABLE_SERIE_TOOLTIP": "View table",
471
- "LOGARITHMIC_SERIE_TOOLTIP": "Logarithmic scale",
472
- "LINEAR_SERIE_TOOLTIP": "Linear scale",
473
- "PIN_SERIE_TOOLTIP": "Pin graph",
474
- "UNPIN_SERIE_TOOLTIP": "Unpin graph",
475
- "EXPORT_SERIE_TOOLTIP": "Export data",
476
- "RESTORE_ZOOM": "Restore previous view",
477
- "RUN": "Forecast run",
478
- "CENTER_ON": "Center the view on the probed location"
479
- },
480
- "KStackableTimeSeries": {
481
- "NO_DATA_AVAILABLE": "No data available"
482
- },
483
- "KViewsPanel": {
484
- "SORT_VIEWS": "Sort views",
485
- "REMOVE_VIEW": "@:REMOVE",
486
- "CACHE_VIEW": "Add to offline cache",
487
- "UNCACHE_VIEW": "Remove from offline cache",
488
- "CACHING_VIEW": "Downloading view in progress",
489
- "UNCACHING_VIEW": "Data removal for view in progress",
490
- "CACHE_VIEW_DIALOG_TITLE": "Add to offline cache",
491
- "CACHE_VIEW_DIALOG_MESSAGE": "Configure data download",
492
- "SET_HOME_VIEW": "Set as default view",
493
- "REMOVE_DIALOG_TITLE": "Remove {view} ?",
494
- "REMOVE_DIALOG_MESSAGE": "Are you sure you want to remove <b>{view}</b> from your workspace ?"
495
- },
496
- "KCreateOfflineView": {
497
- "MIN_ZOOM_FIELD_LABEL": "Zoom level from which data will be downloaded, increase will reduce data size",
498
- "MAX_ZOOM_FIELD_LABEL": "Zoom level until which data will be downloaded, increase will increase data size",
499
- "NB_CONCURRENT_REQUESTS_FIELD_LABEL": "Number of concurrent requests issued to download, increase will speed up download but load the device and the server",
500
- "NUMBER_OF_TILES": "Estimated number of tiles to download per layer: "
501
- },
502
- "KProjectsPanel": {
503
- "SORT_PROJECTS": "Sort projects",
504
- "REMOVE_DIALOG_TITLE": "Remove {project} ?",
505
- "REMOVE_DIALOG_MESSAGE": "Are you sure you want to remove <b>{project}</b> from your workspace ?"
506
- },
507
- "KProjectSelector": {
508
- "EDIT_PROJECT": "@:EDIT",
509
- "REMOVE_PROJECT": "@:REMOVE"
510
- },
511
- "KProjectEditor": {
512
- "BACKGROUND_LAYER_REQUIRED": "A project at least requires a background layer."
513
- },
514
- "KFeaturesFilterManager": {
515
- "TITLE": "Data filter for layer",
516
- "CREATE": "Add a new filter",
517
- "BACK": "Back to filters list",
518
- "EDIT": "Edit a filter",
519
- "REMOVE": "Delete a filter",
520
- "NO_FILTERS": "No filter",
521
- "NAME_LABEL": "Enter the name of the filter",
522
- "STYLE_LABEL": "Select a style for this filter",
523
- "NONE": "None",
524
- "NEW": "New style",
525
- "ADD_CONDITION": "Add a condition"
526
- },
527
- "KFilterCondition": {
528
- "FILTER_WHEN": "Filter data when",
529
- "BOOLEAN_OPERATOR": "Operator",
530
- "AND": "and",
531
- "OR": "or",
532
- "PROPERTY": "the property",
533
- "PROPERTY_NAME": "Property",
534
- "IS": "is",
535
- "COMPARISON_OPERATOR": "Operator",
536
- "IN": "in the list",
537
- "NOT_IN": "out of the list",
538
- "EQUAL": "=",
539
- "NOT_EQUAL": "≠",
540
- "GREATER": ">",
541
- "GREATER_OR_EQUAL": "≥",
542
- "LESS": "<",
543
- "LESS_OR_EQUAL": "≤",
544
- "VALUE": "Value",
545
- "REMOVE": "Delete this condition",
546
- "CANNOT_BE_EMPTY": "Must be filled in"
547
- },
548
- "KFeaturesTable": {
549
- "TITLE": "Data for layer"
550
- },
551
- "KFeaturesChart": {
552
- "SELECT_PROPERTY_LABEL": "Select a target property to start",
553
- "TITLE": "Graphs for layer",
554
- "PROPERTY_LABEL": "Target property",
555
- "CHART_LABEL": "Chart type",
556
- "PAGINATION_LABEL": "Number of values",
557
- "CHART_LABEL_PIE": "Pie",
558
- "CHART_LABEL_POLARAREA": "Polar",
559
- "CHART_LABEL_RADAR": "Radar",
560
- "CHART_LABEL_BAR": "Bar",
561
- "NULL_VALUE_LABEL": "None",
562
- "ALL_VALUES": "All",
563
- "RENDER_LABEL": "Display type",
564
- "VALUE_LABEL": "Count",
565
- "PERCENTAGE_LABEL": "Percentage",
566
- "CHARTING_LABEL": "Please wait while computing chart",
567
- "CHART_VALUE_LABEL": "Value",
568
- "CHART_COUNT_LABEL": "Count",
569
- "CHART_SETTINGS_LABEL": "Graph settings",
570
- "CHART_EXPORT_LABEL": "Export data",
571
- "CHART_EXPORT_FILE": "Chart-{layer}.csv"
572
- },
573
- "KFeaturesSelection": {
574
- "LABEL": "Selection",
575
- "NONE_SELECTED": "Nothing selected"
576
- },
577
- "KSelectedLayerFeatures": {
578
- "FEATURE_PROPERTIES_LABEL": "Feature properties",
579
- "ZOOM_TO_FEATURES_LABEL": "Zoom to features",
580
- "EDIT_FEATURES_LABEL": "Edit features",
581
- "RESET_FEATURES_STYLE_LABEL": "Reset features style",
582
- "REMOVE_FEATURES_LABEL": "Remove features",
583
- "ZOOM_TO_FEATURE_LABEL": "Zoom to feature",
584
- "EDIT_FEATURE_LABEL": "Edit feature",
585
- "EDIT_FEATURE_PROPERTIES_LABEL": "Edit feature properties",
586
- "EDIT_FEATURE_STYLE_LABEL": "Edit feature style",
587
- "RESET_FEATURE_STYLE_LABEL": "Reset feature style",
588
- "REMOVE_FEATURE_LABEL": "Remove feature",
589
- "REMOVE_FEATURE_DIALOG_TITLE": "Remove this feature ?",
590
- "REMOVE_FEATURE_DIALOG_MESSAGE": "Are you sure you want to remove this feature from your workspace ?",
591
- "REMOVE_FEATURES_DIALOG_TITLE": "Remove these features ?",
592
- "REMOVE_FEATURES_DIALOG_MESSAGE": "Are you sure you want to remove these features from your workspace ?"
593
- },
594
- "KLayerEditor": {
595
- "BASE": "Base properties",
596
- "DISPLAY": "Propriétés d'affichage",
597
- "DEFAULT_VISIBILITY": "Visible by default",
598
- "ZOOM": "Visible entre les niveaux de zoom",
599
- "POINT_CLUSTERING": "Cluster until level",
600
- "CLUSTERING_PIXEL_RANGE": "Clustering range",
601
- "SELECTABLE": "Selectable",
602
- "OPACITY": "Opacity",
603
- "POPUP": "Popup",
604
- "ADD_POPUP": "Select target properties to use as popup",
605
- "TOOLTIP": "Tooltip",
606
- "ADD_TOOLTIP": "Select a target property to use as tooltip",
607
- "INFOBOX": "Information box",
608
- "ADD_INFOBOX": "Select target properties to use as information box"
609
- },
610
- "KLayersList": {
611
- "NO_LAYER_AVAILABLE": "No layer available",
612
- "LAYER_DISABLED": "Zoom in to visualise this layer"
613
- },
614
- "KLayersSelector": {
615
- "SELECT_LAYERS": "Select layers"
616
- },
617
- "KWeatherLayersSelector": {
618
- "FORECASTS_LABEL": "Forecasts",
619
- "ARCHIVES_LABEL": "Archives",
620
- "NO_MODEL_AVAILABLE": "No model available"
621
- },
622
- "KInformationBox": {
623
- "LABEL": "Information box",
624
- "NO_FEATURE_PROPERTIES": "No information available",
625
- "CENTER_ON": "Center the view on the object",
626
- "COPY_PROPERTIES": "Copy the values to the clipboard",
627
- "PROPERTIES_COPIED": "Values copied to clipboard",
628
- "CANNOT_COPY_PROPERTIES": "Unable to copy the values to clipboard. Your browser does not support this functionality",
629
- "EXPORT_FEATURE": "Export the object",
630
- "FEATURE_EXPORTED": "Object exported to file {file}",
631
- "CANNOT_EXPORT_FEATURE": "Unable to export the object. Your browser does not support this functionality"
632
- },
633
- "KMapillaryViewer": {
634
- "LABEL": "Mapillary Viewer",
635
- "CENTER_ON": "Center the view on the Mapillary marker",
636
- "MOVE_CLOSE_TO": "Move to the closest image",
637
- "NO_IMAGE_FOUND_CLOSE_TO": "No image found close to your location"
638
- },
639
- "KLayerCategories": {
640
- "LAYER_CATEGORIES_LABEL": "Manage my categories",
641
- "ADD_TITLE": "Add a new layer category",
642
- "UPDATE_TITLE": "Update a layer category",
643
- "TITLE": "Manage layer categories",
644
- "SORT": "Sort categories",
645
- "CREATE_CATEGORY": "Create a new category",
646
- "BACK_BUTTON": "Back",
647
- "ADD_BUTTON": "Add",
648
- "EDIT_BUTTON": "Update",
649
- "CATEGORY_LIST": "Back to list",
650
- "EDIT_CATEGORY": "@:EDIT",
651
- "REMOVE_CATEGORY": "@:REMOVE"
652
- },
653
- "KAddLayer": {
654
- "NAME_FIELD_LABEL": "Enter the name of the new layer",
655
- "DESCRIPTION_FIELD_LABEL": "Enter the description of the new layer",
656
- "CATEGORY_FIELD_LABEL": "Select or enter a category",
657
- "FEATURE_ID_FIELD_LABEL": "Enter a unique feature ID"
658
- },
659
- "KSelectLayers": {
660
- "LAYERS_FIELD_LABEL": "Select projet layers",
661
- "SELECT_BUTTON": "Select"
662
- },
663
- "KImportLayer": {
664
- "FILE_FIELD_LABEL": "Select the file to import",
665
- "NAME_FIELD_LABEL": "@:KAddLayer.NAME_FIELD_LABEL",
666
- "DESCRIPTION_FIELD_LABEL": "@:KAddLayer.DESCRIPTION_FIELD_LABEL",
667
- "FEATURE_ID_FIELD_LABEL": "@:KAddLayer.FEATURE_ID_FIELD_LABEL",
668
- "CATEGORY_FIELD_LABEL": "@:KAddLayer.CATEGORY_FIELD_LABEL",
669
- "IMPORT_BUTTON": "Import",
670
- "LAYER_ALREADY_EXISTS": "Layer {layer} already exists !"
671
- },
672
- "KConnectLayer": {
673
- "SERVICE_FIELD_LABEL": "Select or enter a query to get the capabilities of the remote service",
674
- "LAYER_FIELD_LABEL": "Select the layer to access to",
675
- "NAME_FIELD_LABEL": "@:KAddLayer.NAME_FIELD_LABEL",
676
- "DESCRIPTION_FIELD_LABEL": "@:KAddLayer.DESCRIPTION_FIELD_LABEL",
677
- "STYLE_FIELD_LABEL": "Select the style of the new layer",
678
- "FEATURE_ID_FIELD_LABEL": "@:KAddLayer.FEATURE_ID_FIELD_LABEL",
679
- "CATEGORY_FIELD_LABEL": "@:KAddLayer.CATEGORY_FIELD_LABEL",
680
- "CONNECT_BUTTON": "Connect"
681
- },
682
- "KCreateLayer": {
683
- "NAME_FIELD_LABEL": "@:KAddLayer.NAME_FIELD_LABEL",
684
- "DESCRIPTION_FIELD_LABEL": "@:KAddLayer.DESCRIPTION_FIELD_LABEL",
685
- "CATALOG_SCHEMA_FIELD_LABEL": "@:schemas.CATALOG_SCHEMA_FIELD_LABEL",
686
- "FEATURE_ID_FIELD_LABEL": "@:KAddLayer.FEATURE_ID_FIELD_LABEL",
687
- "CATEGORY_FIELD_LABEL": "@:KAddLayer.CATEGORY_FIELD_LABEL",
688
- "CREATE_BUTTON": "Create"
689
- },
690
- "KSelectViews": {
691
- "VIEWS_FIELD_LABEL": "Select projet views",
692
- "SELECT_BUTTON": "Select"
693
- },
694
- "KCreateView": {
695
- "MODAL_TITLE": "Create a new view ?",
696
- "NAME_FIELD_LABEL": "Enter the name of this view",
697
- "DESCRIPTION_FIELD_LABEL": "Enter the description of this view",
698
- "LAYERS_FIELD_LABEL": "Save the active layers"
699
- },
700
- "KCreateProject": {
701
- "MODAL_TITLE": "Create a new project ?",
702
- "NAME_FIELD_LABEL": "Enter the name of this project",
703
- "DESCRIPTION_FIELD_LABEL": "Enter the description of this project"
704
- },
705
- "KLayerEditionToolbar": {
706
- "ADD_POLYGON_FEATURES": "Add polygon features",
707
- "ADD_RECTANGLE_FEATURES": "Add rectangle features",
708
- "ADD_LINE_FEATURES": "Add linear features",
709
- "ADD_POINT_FEATURES": "Add point features",
710
- "EDIT_GEOMETRY": "Edit feature geometry",
711
- "EDIT_PROPERTIES": "Edit feature properties",
712
- "DRAG_FEATURES": "Move features",
713
- "ROTATE_FEATURES": "Rotate features",
714
- "REMOVE_FEATURES": "Remove features"
715
- },
716
- "KCapture": {
717
- "PRINT_ACTION": "Capture view",
718
- "PRINTING_VIEW": "Waiting for capturing view",
719
- "ERROR_MESSAGE": "One capture is already in progress"
720
- },
721
- "KMeasureTool": {
722
- "CLEAR": "Clear all measurements",
723
- "MEASURE_DISTANCE": "Measure a distance",
724
- "MEASURE_AREA": "Measure an area",
725
- "MEASURE_FEATURE": "Measure a feature",
726
- "MEASURE_CIRCLE": "Measure an isodistance",
727
- "DISPLAY_MEASURE_VALUE": "Display measure values",
728
- "CLICK_TO_CHANGE_UNIT": "Click to change unit"
729
- },
730
- "KElevationProfile": {
731
- "LABEL": "Elevation profile",
732
- "NO_DATA_AVAILABLE": "No profile available",
733
- "INVALID_GEOMETRY": "Selected object geometry is invalid",
734
- "COMPUTING_PROFILE": "Profile computation in progress",
735
- "CENTER_ON": "Center the view on the object",
736
- "COPY_PROFILE": "Copy the profile to the clipboard",
737
- "PROFILE_COPIED": "Profile copied to clipboard",
738
- "CANNOT_COPY_PROFILE": "Unable to copy the profile to clipboard. Your browser does not support this functionality",
739
- "EXPORT_PROFILE": "Export the profile",
740
- "PROFILE_EXPORTED": "Profile exported to file {file}",
741
- "CANNOT_EXPORT_PROFILE": "Unable to export the profile. Your browser does not support this functionality",
742
- "CURVILINEAR_AXIS_LEGEND": "Curvilinear abscissa ({unit})",
743
- "HEIGHT_AXIS_LEGEND": "Height ({unit})",
744
- "TERRAIN_CHART_LEGEND": "Terrain elevation",
745
- "PROFILE_CHART_LEGEND": "Profile elevation"
746
- },
747
- "KLegend": {
748
- "LABEL": "Legend"
749
- },
750
- "KCompass": {
751
- "FROM_TO": "From {direction}° to {source}°",
752
- "FROM": "From",
753
- "NORTH": "N",
754
- "EAST": "E",
755
- "SOUTH": "S",
756
- "WEST": "W"
757
- },
758
- "KPosition": {
759
- "COPY": "Copy the coordinates",
760
- "CLOSE": "Close",
761
- "POSITION_COPIED": "Position copied to clipboard",
762
- "CANNOT_COPY_POSITION": "Unable to copy the position to clipboard. Your browser does not support this functionality",
763
- "OUTSIDE_MAP": "Undefined position"
764
- },
765
- "KDirectionField": {
766
- "COMPASS": "Compass"
767
- },
768
- "KStyleManager": {
769
- "TITLE": "Styles",
770
- "APPLY_TO_LAYER": "Apply style to layer",
771
- "APPLY_TO_SELECTION": "Apply style to selection",
772
- "EDIT": "Edit style",
773
- "DELETE": "Delete style",
774
- "SORT": "Sort styles",
775
- "CREATE_STYLE": "Create style"
776
- },
777
- "KStyleEditor": {
778
- "NAME_LABEL": "Enter the name of the style",
779
- "STYLE_ALREADY_EXISTS": "Style {style} already exists !",
780
- "POINT_SECTION": "Point",
781
- "LINE_SECTION": "Line",
782
- "POLYGON_SECTION": "Polygon",
783
- "ALL_SECTIONS_DISABLED": "Unable to apply this style because all types of features are disabled.",
784
- "STROKE_GROUP": "Stroke",
785
- "ICON_GROUP": "Icon",
786
- "COLOR": "Color",
787
- "FILL_COLOR": "Fill color",
788
- "OPACITY": "Opacity",
789
- "FILL_OPACITY": "Fill opacity",
790
- "SIZE": "Size",
791
- "SHAPE": "Shape",
792
- "ICON": "Icon",
793
- "ICON_SIZE": "Icon size",
794
- "ICON_COLOR": "Icon color",
795
- "ICON_OPACITY": "Icon opacity",
796
- "STROKE_COLOR": "Stroke color",
797
- "STROKE_OPACITY": "Stroke opacity",
798
- "STROKE_WIDTH": "Stroke width"
799
- }
800
- }