@kalisio/kdk 1.4.0 → 1.5.1
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.
- package/.nyc_output/{0f1a87aa-d3bb-4c61-8c1e-12294055358d.json → 058fc679-d60a-4501-ac04-71171e5200b8.json} +0 -0
- package/.nyc_output/2226bcce-9d22-4dad-b9fa-46564b5565c7.json +1 -0
- package/.nyc_output/6dc4b140-1a8a-4d69-b91c-89c557883d6e.json +1 -0
- package/.nyc_output/{8be4cd9f-124a-41f9-80f4-f267ced63c86.json → 8b1830fa-932e-4a61-9837-4a5b18f83ea9.json} +0 -0
- package/.nyc_output/{a63b0924-fd09-4e30-974f-cb4be2243b66.json → afd2d144-3570-4858-b94a-b523dbd023dd.json} +0 -0
- package/.nyc_output/processinfo/058fc679-d60a-4501-ac04-71171e5200b8.json +1 -0
- package/.nyc_output/processinfo/{27204015-ebfd-456f-a3bb-6a94f71946b8.json → 2226bcce-9d22-4dad-b9fa-46564b5565c7.json} +1 -1
- package/.nyc_output/processinfo/6dc4b140-1a8a-4d69-b91c-89c557883d6e.json +1 -0
- package/.nyc_output/processinfo/8b1830fa-932e-4a61-9837-4a5b18f83ea9.json +1 -0
- package/.nyc_output/processinfo/afd2d144-3570-4858-b94a-b523dbd023dd.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -1
- package/CHANGELOG.md +219 -68
- package/coverage/core/api/application.js.html +455 -455
- package/coverage/core/api/authentication.js.html +119 -119
- package/coverage/core/api/db.js.html +201 -201
- package/coverage/core/api/hooks/hooks.account.js.html +48 -48
- package/coverage/core/api/hooks/hooks.authentication.js.html +64 -64
- package/coverage/core/api/hooks/hooks.authorisations.js.html +353 -353
- package/coverage/core/api/hooks/hooks.devices.js.html +22 -22
- package/coverage/core/api/hooks/hooks.groups.js.html +37 -37
- package/coverage/core/api/hooks/hooks.logger.js.html +27 -27
- package/coverage/core/api/hooks/hooks.model.js.html +269 -269
- package/coverage/core/api/hooks/hooks.organisations.js.html +183 -231
- package/coverage/core/api/hooks/hooks.pusher.js.html +114 -114
- package/coverage/core/api/hooks/hooks.query.js.html +200 -200
- package/coverage/core/api/hooks/hooks.service.js.html +82 -82
- package/coverage/core/api/hooks/hooks.storage.js.html +121 -121
- package/coverage/core/api/hooks/hooks.tags.js.html +232 -232
- package/coverage/core/api/hooks/hooks.users.js.html +261 -261
- package/coverage/core/api/hooks/index.html +167 -167
- package/coverage/core/api/hooks/index.js.html +24 -24
- package/coverage/core/api/index.html +75 -75
- package/coverage/core/api/index.js.html +26 -26
- package/coverage/core/api/marshall.js.html +57 -57
- package/coverage/core/api/models/groups.model.mongodb.js.html +20 -20
- package/coverage/core/api/models/index.html +50 -50
- package/coverage/core/api/models/organisations.model.mongodb.js.html +12 -12
- package/coverage/core/api/models/tags.model.mongodb.js.html +22 -22
- package/coverage/core/api/models/users.model.mongodb.js.html +20 -20
- package/coverage/core/api/oauth2-handler.js.html +18 -18
- package/coverage/core/api/oauth2-verifier.js.html +38 -38
- package/coverage/core/api/services/account/account.hooks.js.html +16 -16
- package/coverage/core/api/services/account/account.service.js.html +108 -108
- package/coverage/core/api/services/account/index.html +32 -32
- package/coverage/core/api/services/authorisations/authorisations.hooks.js.html +9 -9
- package/coverage/core/api/services/authorisations/authorisations.service.js.html +132 -132
- package/coverage/core/api/services/authorisations/index.html +28 -28
- package/coverage/core/api/services/databases/databases.hooks.js.html +9 -9
- package/coverage/core/api/services/databases/databases.service.js.html +12 -12
- package/coverage/core/api/services/databases/index.html +24 -24
- package/coverage/core/api/services/devices/devices.hooks.js.html +9 -9
- package/coverage/core/api/services/devices/devices.service.js.html +61 -61
- package/coverage/core/api/services/devices/index.html +22 -22
- package/coverage/core/api/services/groups/groups.hooks.js.html +9 -9
- package/coverage/core/api/services/groups/index.html +13 -13
- package/coverage/core/api/services/index.html +21 -21
- package/coverage/core/api/services/index.js.html +137 -137
- package/coverage/core/api/services/mailer/index.html +24 -24
- package/coverage/core/api/services/mailer/mailer.hooks.js.html +9 -9
- package/coverage/core/api/services/mailer/mailer.service.js.html +19 -19
- package/coverage/core/api/services/organisations/index.html +24 -24
- package/coverage/core/api/services/organisations/organisations.hooks.js.html +8 -8
- package/coverage/core/api/services/organisations/organisations.service.js.html +67 -67
- package/coverage/core/api/services/pusher/index.html +32 -32
- package/coverage/core/api/services/pusher/pusher.channels.js.html +8 -8
- package/coverage/core/api/services/pusher/pusher.hooks.js.html +10 -10
- package/coverage/core/api/services/pusher/pusher.service.js.html +336 -336
- package/coverage/core/api/services/storage/index.html +21 -21
- package/coverage/core/api/services/storage/storage.hooks.js.html +35 -35
- package/coverage/core/api/services/tags/index.html +21 -21
- package/coverage/core/api/services/tags/tags.hooks.js.html +25 -25
- package/coverage/core/api/services/users/index.html +21 -21
- package/coverage/core/api/services/users/users.hooks.js.html +33 -33
- package/coverage/core/common/errors.js.html +1 -1
- package/coverage/core/common/index.html +42 -27
- package/coverage/core/common/index.js.html +16 -16
- package/coverage/core/common/permissions.js.html +274 -274
- package/coverage/index.html +174 -174
- package/coverage/lcov-report/core/api/application.js.html +455 -455
- package/coverage/lcov-report/core/api/authentication.js.html +119 -119
- package/coverage/lcov-report/core/api/db.js.html +201 -201
- package/coverage/lcov-report/core/api/hooks/hooks.account.js.html +48 -48
- package/coverage/lcov-report/core/api/hooks/hooks.authentication.js.html +64 -64
- package/coverage/lcov-report/core/api/hooks/hooks.authorisations.js.html +353 -353
- package/coverage/lcov-report/core/api/hooks/hooks.devices.js.html +22 -22
- package/coverage/lcov-report/core/api/hooks/hooks.groups.js.html +37 -37
- package/coverage/lcov-report/core/api/hooks/hooks.logger.js.html +27 -27
- package/coverage/lcov-report/core/api/hooks/hooks.model.js.html +269 -269
- package/coverage/lcov-report/core/api/hooks/hooks.organisations.js.html +183 -231
- package/coverage/lcov-report/core/api/hooks/hooks.pusher.js.html +114 -114
- package/coverage/lcov-report/core/api/hooks/hooks.query.js.html +200 -200
- package/coverage/lcov-report/core/api/hooks/hooks.service.js.html +82 -82
- package/coverage/lcov-report/core/api/hooks/hooks.storage.js.html +121 -121
- package/coverage/lcov-report/core/api/hooks/hooks.tags.js.html +232 -232
- package/coverage/lcov-report/core/api/hooks/hooks.users.js.html +261 -261
- package/coverage/lcov-report/core/api/hooks/index.html +167 -167
- package/coverage/lcov-report/core/api/hooks/index.js.html +24 -24
- package/coverage/lcov-report/core/api/index.html +75 -75
- package/coverage/lcov-report/core/api/index.js.html +26 -26
- package/coverage/lcov-report/core/api/marshall.js.html +57 -57
- package/coverage/lcov-report/core/api/models/groups.model.mongodb.js.html +20 -20
- package/coverage/lcov-report/core/api/models/index.html +50 -50
- package/coverage/lcov-report/core/api/models/organisations.model.mongodb.js.html +12 -12
- package/coverage/lcov-report/core/api/models/tags.model.mongodb.js.html +22 -22
- package/coverage/lcov-report/core/api/models/users.model.mongodb.js.html +20 -20
- package/coverage/lcov-report/core/api/oauth2-handler.js.html +18 -18
- package/coverage/lcov-report/core/api/oauth2-verifier.js.html +38 -38
- package/coverage/lcov-report/core/api/services/account/account.hooks.js.html +16 -16
- package/coverage/lcov-report/core/api/services/account/account.service.js.html +108 -108
- package/coverage/lcov-report/core/api/services/account/index.html +32 -32
- package/coverage/lcov-report/core/api/services/authorisations/authorisations.hooks.js.html +9 -9
- package/coverage/lcov-report/core/api/services/authorisations/authorisations.service.js.html +132 -132
- package/coverage/lcov-report/core/api/services/authorisations/index.html +28 -28
- package/coverage/lcov-report/core/api/services/databases/databases.hooks.js.html +9 -9
- package/coverage/lcov-report/core/api/services/databases/databases.service.js.html +12 -12
- package/coverage/lcov-report/core/api/services/databases/index.html +24 -24
- package/coverage/lcov-report/core/api/services/devices/devices.hooks.js.html +9 -9
- package/coverage/lcov-report/core/api/services/devices/devices.service.js.html +61 -61
- package/coverage/lcov-report/core/api/services/devices/index.html +22 -22
- package/coverage/lcov-report/core/api/services/groups/groups.hooks.js.html +9 -9
- package/coverage/lcov-report/core/api/services/groups/index.html +13 -13
- package/coverage/lcov-report/core/api/services/index.html +21 -21
- package/coverage/lcov-report/core/api/services/index.js.html +137 -137
- package/coverage/lcov-report/core/api/services/mailer/index.html +24 -24
- package/coverage/lcov-report/core/api/services/mailer/mailer.hooks.js.html +9 -9
- package/coverage/lcov-report/core/api/services/mailer/mailer.service.js.html +19 -19
- package/coverage/lcov-report/core/api/services/organisations/index.html +24 -24
- package/coverage/lcov-report/core/api/services/organisations/organisations.hooks.js.html +8 -8
- package/coverage/lcov-report/core/api/services/organisations/organisations.service.js.html +67 -67
- package/coverage/lcov-report/core/api/services/pusher/index.html +32 -32
- package/coverage/lcov-report/core/api/services/pusher/pusher.channels.js.html +8 -8
- package/coverage/lcov-report/core/api/services/pusher/pusher.hooks.js.html +10 -10
- package/coverage/lcov-report/core/api/services/pusher/pusher.service.js.html +336 -336
- package/coverage/lcov-report/core/api/services/storage/index.html +21 -21
- package/coverage/lcov-report/core/api/services/storage/storage.hooks.js.html +35 -35
- package/coverage/lcov-report/core/api/services/tags/index.html +21 -21
- package/coverage/lcov-report/core/api/services/tags/tags.hooks.js.html +25 -25
- package/coverage/lcov-report/core/api/services/users/index.html +21 -21
- package/coverage/lcov-report/core/api/services/users/users.hooks.js.html +33 -33
- package/coverage/lcov-report/core/common/errors.js.html +1 -1
- package/coverage/lcov-report/core/common/index.html +42 -27
- package/coverage/lcov-report/core/common/index.js.html +16 -16
- package/coverage/lcov-report/core/common/permissions.js.html +274 -274
- package/coverage/lcov-report/index.html +174 -174
- package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +1 -1
- package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +72 -18
- package/coverage/lcov-report/map/api/hooks/index.html +7 -7
- package/coverage/lcov-report/map/api/hooks/index.js.html +1 -1
- package/coverage/lcov-report/map/api/index.html +1 -1
- package/coverage/lcov-report/map/api/index.js.html +1 -1
- package/coverage/lcov-report/map/api/marshall.js.html +1 -1
- package/coverage/lcov-report/map/api/models/alerts.model.mongodb.js.html +1 -1
- package/coverage/lcov-report/map/api/models/catalog.model.mongodb.js.html +1 -1
- package/coverage/lcov-report/map/api/models/features.model.mongodb.js.html +1 -1
- package/coverage/lcov-report/map/api/models/index.html +1 -1
- package/coverage/lcov-report/map/api/services/alerts/alerts.hooks.js.html +1 -1
- package/coverage/lcov-report/map/api/services/alerts/alerts.service.js.html +1 -1
- package/coverage/lcov-report/map/api/services/alerts/index.html +1 -1
- package/coverage/lcov-report/map/api/services/catalog/catalog.hooks.js.html +1 -1
- package/coverage/lcov-report/map/api/services/catalog/index.html +1 -1
- package/coverage/lcov-report/map/api/services/daptiles/daptiles.service.js.html +1 -1
- package/coverage/lcov-report/map/api/services/daptiles/index.html +1 -1
- package/coverage/lcov-report/map/api/services/features/features.hooks.js.html +1 -1
- package/coverage/lcov-report/map/api/services/features/index.html +1 -1
- package/coverage/lcov-report/map/api/services/geocoder/geocoder.hooks.js.html +1 -1
- package/coverage/lcov-report/map/api/services/geocoder/geocoder.service.js.html +1 -1
- package/coverage/lcov-report/map/api/services/geocoder/index.html +1 -1
- package/coverage/lcov-report/map/api/services/index.html +1 -1
- package/coverage/lcov-report/map/api/services/index.js.html +1 -1
- package/coverage/lcov-report/map/common/dynamic-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/errors.js.html +1 -1
- package/coverage/lcov-report/map/common/geotiff-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/grid.js.html +1 -1
- package/coverage/lcov-report/map/common/index.html +1 -1
- package/coverage/lcov-report/map/common/index.js.html +1 -1
- package/coverage/lcov-report/map/common/meteo-model-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/moment-utils.js.html +1 -1
- package/coverage/lcov-report/map/common/opendap-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/opendap-utils.js.html +1 -1
- package/coverage/lcov-report/map/common/permissions.js.html +1 -1
- package/coverage/lcov-report/map/common/time-based-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/tms-utils.js.html +1 -1
- package/coverage/lcov-report/map/common/wcs-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/wcs-utils.js.html +1 -1
- package/coverage/lcov-report/map/common/weacast-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/wfs-utils.js.html +1 -1
- package/coverage/lcov-report/map/common/wms-utils.js.html +1 -1
- package/coverage/lcov-report/map/common/wmts-utils.js.html +1 -1
- package/coverage/lcov.info +3289 -3610
- package/coverage/map/api/hooks/hooks.catalog.js.html +1 -1
- package/coverage/map/api/hooks/hooks.query.js.html +72 -18
- package/coverage/map/api/hooks/index.html +7 -7
- package/coverage/map/api/hooks/index.js.html +1 -1
- package/coverage/map/api/index.html +1 -1
- package/coverage/map/api/index.js.html +1 -1
- package/coverage/map/api/marshall.js.html +1 -1
- package/coverage/map/api/models/alerts.model.mongodb.js.html +1 -1
- package/coverage/map/api/models/catalog.model.mongodb.js.html +1 -1
- package/coverage/map/api/models/features.model.mongodb.js.html +1 -1
- package/coverage/map/api/models/index.html +1 -1
- package/coverage/map/api/services/alerts/alerts.hooks.js.html +1 -1
- package/coverage/map/api/services/alerts/alerts.service.js.html +1 -1
- package/coverage/map/api/services/alerts/index.html +1 -1
- package/coverage/map/api/services/catalog/catalog.hooks.js.html +1 -1
- package/coverage/map/api/services/catalog/index.html +1 -1
- package/coverage/map/api/services/daptiles/daptiles.service.js.html +1 -1
- package/coverage/map/api/services/daptiles/index.html +1 -1
- package/coverage/map/api/services/features/features.hooks.js.html +1 -1
- package/coverage/map/api/services/features/index.html +1 -1
- package/coverage/map/api/services/geocoder/geocoder.hooks.js.html +1 -1
- package/coverage/map/api/services/geocoder/geocoder.service.js.html +1 -1
- package/coverage/map/api/services/geocoder/index.html +1 -1
- package/coverage/map/api/services/index.html +1 -1
- package/coverage/map/api/services/index.js.html +1 -1
- package/coverage/map/common/dynamic-grid-source.js.html +1 -1
- package/coverage/map/common/errors.js.html +1 -1
- package/coverage/map/common/geotiff-grid-source.js.html +1 -1
- package/coverage/map/common/grid.js.html +1 -1
- package/coverage/map/common/index.html +1 -1
- package/coverage/map/common/index.js.html +1 -1
- package/coverage/map/common/meteo-model-grid-source.js.html +1 -1
- package/coverage/map/common/moment-utils.js.html +1 -1
- package/coverage/map/common/opendap-grid-source.js.html +1 -1
- package/coverage/map/common/opendap-utils.js.html +1 -1
- package/coverage/map/common/permissions.js.html +1 -1
- package/coverage/map/common/time-based-grid-source.js.html +1 -1
- package/coverage/map/common/tms-utils.js.html +1 -1
- package/coverage/map/common/wcs-grid-source.js.html +1 -1
- package/coverage/map/common/wcs-utils.js.html +1 -1
- package/coverage/map/common/weacast-grid-source.js.html +1 -1
- package/coverage/map/common/wfs-utils.js.html +1 -1
- package/coverage/map/common/wms-utils.js.html +1 -1
- package/coverage/map/common/wmts-utils.js.html +1 -1
- package/lib/core/client/components/collection/KBoard.vue +6 -0
- package/lib/core/client/components/collection/KColumn.vue +2 -2
- package/lib/core/client/components/collection/KHistory.vue +14 -6
- package/lib/core/client/components/collection/KHistoryEntry.vue +7 -3
- package/lib/core/client/components/form/KFileField.vue +11 -40
- package/lib/core/client/components/frame/KChipsPane.vue +2 -2
- package/lib/core/client/components/input/KOptionsChooser.vue +2 -2
- package/lib/core/client/i18n/core_en.json +7 -1
- package/lib/core/client/i18n/core_fr.json +7 -1
- package/lib/core/client/index.js +18 -0
- package/lib/core/client/index.js.map +1 -1
- package/lib/core/client/layout.js +8 -1
- package/lib/core/client/layout.js.map +1 -1
- package/lib/core/client/mixins/mixin.base-collection.js +8 -2
- package/lib/core/client/mixins/mixin.base-collection.js.map +1 -1
- package/lib/core/client/reader.js +54 -0
- package/lib/core/client/reader.js.map +1 -0
- package/lib/core/client/readers/index.js +30 -0
- package/lib/core/client/readers/index.js.map +1 -0
- package/lib/core/client/readers/reader.csv.js +43 -0
- package/lib/core/client/readers/reader.csv.js.map +1 -0
- package/lib/core/client/readers/reader.json.js +38 -0
- package/lib/core/client/readers/reader.json.js.map +1 -0
- package/lib/core/client/services/index.js +1 -3
- package/lib/core/client/services/index.js.map +1 -1
- package/lib/core/client/time.js +4 -1
- package/lib/core/client/time.js.map +1 -1
- package/lib/map/api/hooks/hooks.query.js +30 -13
- package/lib/map/api/hooks/hooks.query.js.map +1 -1
- package/lib/map/client/components/KCaptureToolbar.vue +156 -0
- package/lib/map/client/components/KFeaturesFilter.vue +3 -1
- package/lib/map/client/components/KLayerEditionToolbar.vue +19 -11
- package/lib/map/client/components/KLayerStyleEditor.vue +2 -1
- package/lib/map/client/components/KLayerStyleForm.vue +34 -23
- package/lib/map/client/components/KLocationMap.vue +3 -1
- package/lib/map/client/components/KMeasureTool.vue +340 -0
- package/lib/map/client/components/KPositionIndicator.vue +1 -0
- package/lib/map/client/components/KTimeline.vue +7 -8
- package/lib/map/client/components/catalog/KImportLayer.vue +8 -35
- package/lib/map/client/components/catalog/KLayersSelector.vue +13 -11
- package/lib/map/client/components/form/KOwsLayerField.vue +7 -0
- package/lib/map/client/components/widget/KMapillaryViewer.vue +1 -1
- package/lib/map/client/components/widget/KTimeSeries.vue +81 -3
- package/lib/map/client/i18n/map_en.json +43 -5
- package/lib/map/client/i18n/map_fr.json +43 -5
- package/lib/map/client/init.js +6 -1
- package/lib/map/client/init.js.map +1 -1
- package/lib/map/client/leaflet/MaskLayer.js +12 -3
- package/lib/map/client/leaflet/MaskLayer.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.base-globe.js +3 -5
- package/lib/map/client/mixins/globe/mixin.base-globe.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.geojson-layers.js +0 -4
- package/lib/map/client/mixins/globe/mixin.geojson-layers.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.popup.js +4 -0
- package/lib/map/client/mixins/globe/mixin.popup.js.map +1 -1
- package/lib/map/client/mixins/globe/mixin.tooltip.js +4 -0
- package/lib/map/client/mixins/globe/mixin.tooltip.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.base-map.js +46 -7
- package/lib/map/client/mixins/map/mixin.base-map.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.canvas-layers.js +2 -0
- package/lib/map/client/mixins/map/mixin.canvas-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.file-layers.js +47 -101
- package/lib/map/client/mixins/map/mixin.file-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.geojson-layers.js +9 -5
- package/lib/map/client/mixins/map/mixin.geojson-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.heatmap-layers.js +0 -4
- package/lib/map/client/mixins/map/mixin.heatmap-layers.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.popup.js +4 -0
- package/lib/map/client/mixins/map/mixin.popup.js.map +1 -1
- package/lib/map/client/mixins/map/mixin.tooltip.js +4 -0
- package/lib/map/client/mixins/map/mixin.tooltip.js.map +1 -1
- package/lib/map/client/mixins/mixin.activity.js +2 -0
- package/lib/map/client/mixins/mixin.activity.js.map +1 -1
- package/lib/map/client/mixins/mixin.context.js +26 -3
- package/lib/map/client/mixins/mixin.context.js.map +1 -1
- package/lib/map/client/mixins/mixin.feature-service.js +4 -4
- package/lib/map/client/mixins/mixin.feature-service.js.map +1 -1
- package/lib/map/client/mixins/mixin.infobox.js +4 -0
- package/lib/map/client/mixins/mixin.infobox.js.map +1 -1
- package/lib/map/client/readers/index.js +42 -0
- package/lib/map/client/readers/index.js.map +1 -0
- package/lib/map/client/readers/reader.geojson.js +59 -0
- package/lib/map/client/readers/reader.geojson.js.map +1 -0
- package/lib/map/client/readers/reader.gpx.js +41 -0
- package/lib/map/client/readers/reader.gpx.js.map +1 -0
- package/lib/map/client/readers/reader.kml.js +41 -0
- package/lib/map/client/readers/reader.kml.js.map +1 -0
- package/lib/map/client/utils.js +2 -1
- package/lib/map/client/utils.js.map +1 -1
- package/lib/test/client/core/runner.js +1 -2
- package/lib/test/client/core/runner.js.map +1 -1
- package/lib/test/client/core/utils.js +58 -38
- package/lib/test/client/core/utils.js.map +1 -1
- package/lib/test/client/map/catalog.js +50 -49
- package/lib/test/client/map/catalog.js.map +1 -1
- package/package.json +3 -3
- package/.nyc_output/27204015-ebfd-456f-a3bb-6a94f71946b8.json +0 -1
- package/.nyc_output/d3d1fa81-57ca-4287-8fbe-96466b0e5aa1.json +0 -1
- package/.nyc_output/e921974a-3076-4e89-8dbf-6f37bef10583.json +0 -1
- package/.nyc_output/fb790367-ba9f-474f-84c1-f836caf9f50a.json +0 -1
- package/.nyc_output/processinfo/0f1a87aa-d3bb-4c61-8c1e-12294055358d.json +0 -1
- package/.nyc_output/processinfo/8be4cd9f-124a-41f9-80f4-f267ced63c86.json +0 -1
- package/.nyc_output/processinfo/a63b0924-fd09-4e30-974f-cb4be2243b66.json +0 -1
- package/.nyc_output/processinfo/d3d1fa81-57ca-4287-8fbe-96466b0e5aa1.json +0 -1
- package/.nyc_output/processinfo/e921974a-3076-4e89-8dbf-6f37bef10583.json +0 -1
- package/.nyc_output/processinfo/fb790367-ba9f-474f-84c1-f836caf9f50a.json +0 -1
- package/extras/testcafe/Dockerfile +0 -48
- package/extras/testcafe/docker-entrypoint.sh +0 -27
- package/extras/testcafe/page-models/core/account.js +0 -75
- package/extras/testcafe/page-models/core/base-collection.js +0 -41
- package/extras/testcafe/page-models/core/base-page.js +0 -25
- package/extras/testcafe/page-models/core/groups.js +0 -36
- package/extras/testcafe/page-models/core/index.js +0 -140
- package/extras/testcafe/page-models/core/layout.js +0 -145
- package/extras/testcafe/page-models/core/members.js +0 -98
- package/extras/testcafe/page-models/core/organisations.js +0 -76
- package/extras/testcafe/page-models/core/screens.js +0 -99
- package/extras/testcafe/page-models/core/tags.js +0 -21
- package/extras/testcafe/page-models/map/add-layer.js +0 -51
- package/extras/testcafe/page-models/map/catalog.js +0 -132
- package/extras/testcafe/page-models/map/index.js +0 -36
- package/extras/testcafe/page-models/map/map-activity.js +0 -42
- package/extras/testcafe/page-models/map/timeline.js +0 -67
|
@@ -32,7 +32,9 @@ import centroid from '@turf/centroid'
|
|
|
32
32
|
import chroma from 'chroma-js'
|
|
33
33
|
import Chart from 'chart.js'
|
|
34
34
|
import 'chartjs-plugin-annotation'
|
|
35
|
+
import Papa from 'papaparse'
|
|
35
36
|
import { getTimeInterval } from '../../utils'
|
|
37
|
+
import { downloadAsBlob } from '../../../../core/client/utils'
|
|
36
38
|
import { Time } from '../../../../core/client/time'
|
|
37
39
|
import { baseWidget } from '../../../../core/client/mixins'
|
|
38
40
|
|
|
@@ -101,6 +103,10 @@ export default {
|
|
|
101
103
|
hasVariable (name, properties) {
|
|
102
104
|
return (properties[name] && Array.isArray(properties[name]))
|
|
103
105
|
},
|
|
106
|
+
getSelectedRunTime () {
|
|
107
|
+
// Set default run as latest
|
|
108
|
+
return this.runTime || _.last(this.runTimes)
|
|
109
|
+
},
|
|
104
110
|
setupTimeTicks () {
|
|
105
111
|
if (!this.times || !this.graphWidth) return
|
|
106
112
|
// Choose the right step size to ensure we have almost 100px between hour ticks
|
|
@@ -145,9 +151,27 @@ export default {
|
|
|
145
151
|
this.timeRange = null
|
|
146
152
|
}
|
|
147
153
|
},
|
|
154
|
+
setupAvailableRunTimes () {
|
|
155
|
+
this.runTimes = []
|
|
156
|
+
// FIXME: to be used when all issues are correctly fixed in weacast
|
|
157
|
+
|
|
158
|
+
/*
|
|
159
|
+
const runTime = this.probedLocation.runTime
|
|
160
|
+
|
|
161
|
+
this.probedVariables.forEach(variable => {
|
|
162
|
+
// Check if we are targetting a specific level
|
|
163
|
+
const name = (this.kActivity.selectedLevel ? `${variable.name}-${this.kActivity.selectedLevel}` : variable.name)
|
|
164
|
+
|
|
165
|
+
if (runTime && runTime[name]) this.runTimes.push(runTime[name])
|
|
166
|
+
})
|
|
167
|
+
// Make union of all available run times
|
|
168
|
+
this.runTimes = _.union(...this.runTimes).map(time => moment.utc(time)).sort((a, b) => a - b)
|
|
169
|
+
*/
|
|
170
|
+
},
|
|
148
171
|
setupAvailableDatasets () {
|
|
149
172
|
this.datasets = []
|
|
150
173
|
const time = this.probedLocation.time || this.probedLocation.forecastTime
|
|
174
|
+
const runTime = this.probedLocation.runTime
|
|
151
175
|
const properties = this.probedLocation.properties
|
|
152
176
|
// Generate a color palette in case the variables does not provide it
|
|
153
177
|
const colors = _.shuffle(chroma.scale('Spectral').colors(this.probedVariables.length))
|
|
@@ -158,11 +182,19 @@ export default {
|
|
|
158
182
|
const label = this.$t(variable.label) || variable.label
|
|
159
183
|
// Aggregated variable available for feature ?
|
|
160
184
|
if (this.hasVariable(name, properties)) {
|
|
185
|
+
// Build data structure as expected by visualisation
|
|
186
|
+
let values = properties[name].map((value, index) => ({ x: time[name][index], y: value }))
|
|
187
|
+
// Keep only selected value if multiple are provided for the same time (eg different forecasts)
|
|
188
|
+
if (!_.isEmpty(_.get(runTime, name)) && this.getSelectedRunTime()) {
|
|
189
|
+
values = values.filter((value, index) => (runTime[name][index] === this.getSelectedRunTime().toISOString()))
|
|
190
|
+
} else values = _.uniqBy(values, 'x')
|
|
191
|
+
// Then transform to date object as expected by visualisation
|
|
192
|
+
values = values.map((value) => Object.assign(value, { x: new Date(value.x) })).filter(this.filter)
|
|
161
193
|
this.datasets.push(_.merge({
|
|
162
194
|
label: `${label} (${unit})`,
|
|
163
195
|
borderColor: colors[index],
|
|
164
196
|
backgroundColor: colors[index],
|
|
165
|
-
data:
|
|
197
|
+
data: values,
|
|
166
198
|
yAxisID: unit
|
|
167
199
|
}, _.omit(variable.chartjs, 'yAxis')))
|
|
168
200
|
}
|
|
@@ -276,6 +308,7 @@ export default {
|
|
|
276
308
|
// Setup the graph
|
|
277
309
|
this.setupAvailableTimes()
|
|
278
310
|
this.setupTimeTicks()
|
|
311
|
+
this.setupAvailableRunTimes()
|
|
279
312
|
this.setupAvailableDatasets()
|
|
280
313
|
this.setupAvailableYAxes()
|
|
281
314
|
|
|
@@ -381,6 +414,14 @@ export default {
|
|
|
381
414
|
onUpdateSpan (span) {
|
|
382
415
|
this.$store.set('timeseries.span', span)
|
|
383
416
|
},
|
|
417
|
+
onUpdateRun (runTime) {
|
|
418
|
+
this.runTime = runTime
|
|
419
|
+
// Update tooltip action
|
|
420
|
+
const action = _.find(this.actions, { id: 'run-options' })
|
|
421
|
+
action.tooltip = this.$t('KTimeSeries.RUN') + ' (' + Time.format(this.getSelectedRunTime(), 'date.short') +
|
|
422
|
+
' - ' + Time.format(this.getSelectedRunTime(), 'time.short') + ')'
|
|
423
|
+
this.setupGraph()
|
|
424
|
+
},
|
|
384
425
|
updateProbedLocationHighlight () {
|
|
385
426
|
if (!this.probedLocation) return
|
|
386
427
|
const windDirection = (this.kActivity.selectedLevel ? `windDirection-${this.kActivity.selectedLevel}` : 'windDirection')
|
|
@@ -397,6 +438,20 @@ export default {
|
|
|
397
438
|
onCenterOn () {
|
|
398
439
|
this.kActivity.centerOnSelection()
|
|
399
440
|
},
|
|
441
|
+
onExportSeries () {
|
|
442
|
+
const json = this.times.map(time => {
|
|
443
|
+
const row = {
|
|
444
|
+
[this.$t('KTimeSeries.TIME_LABEL')]: time.toISOString()
|
|
445
|
+
}
|
|
446
|
+
this.datasets.forEach(dataset => {
|
|
447
|
+
const value = _.find(dataset.data, item => item.x.toISOString() === time.toISOString())
|
|
448
|
+
row[dataset.label] = value ? value.y : null
|
|
449
|
+
})
|
|
450
|
+
return row
|
|
451
|
+
})
|
|
452
|
+
const csv = Papa.unparse(json)
|
|
453
|
+
downloadAsBlob(csv, this.$t('KTimeSeries.SERIES_EXPORT_FILE'), 'text/csv;charset=utf-8;')
|
|
454
|
+
},
|
|
400
455
|
updateProbedLocationName () {
|
|
401
456
|
this.probedLocationName = ''
|
|
402
457
|
if (!this.probedLocation) return
|
|
@@ -420,9 +475,10 @@ export default {
|
|
|
420
475
|
option.default = true
|
|
421
476
|
}
|
|
422
477
|
})
|
|
423
|
-
// Registers the actions
|
|
478
|
+
// Registers the base actions
|
|
424
479
|
this.actions = [
|
|
425
480
|
{ id: 'center-view', icon: 'las la-eye', tooltip: 'KTimeSeries.CENTER_ON', handler: this.onCenterOn },
|
|
481
|
+
{ id: 'export-feature', icon: 'las la-file-download', tooltip: this.$t('KTimeSeries.EXPORT_SERIES'), handler: this.onExportSeries },
|
|
426
482
|
{
|
|
427
483
|
component: 'input/KOptionsChooser',
|
|
428
484
|
id: 'timespan-options',
|
|
@@ -432,6 +488,8 @@ export default {
|
|
|
432
488
|
on: { event: 'option-chosen', listener: this.onUpdateSpan }
|
|
433
489
|
}
|
|
434
490
|
]
|
|
491
|
+
// Clear previous run timle setup if any
|
|
492
|
+
this.runTime = null
|
|
435
493
|
// Then manage selection
|
|
436
494
|
this.kActivity.addSelectionHighlight('time-series')
|
|
437
495
|
this.kActivity.centerOnSelection()
|
|
@@ -459,8 +517,28 @@ export default {
|
|
|
459
517
|
(name ? ` (${name})` : ` (${longitude.toFixed(2)}°, ${latitude.toFixed(2)}°)`))
|
|
460
518
|
}
|
|
461
519
|
this.updateProbedLocationName()
|
|
462
|
-
this.setupGraph()
|
|
520
|
+
await this.setupGraph()
|
|
463
521
|
this.updateProbedLocationHighlight()
|
|
522
|
+
|
|
523
|
+
// When forecast data are available allow to select wich run to use
|
|
524
|
+
if (this.runTimes && (this.runTimes.length > 1)) {
|
|
525
|
+
// Select latest runTime as default option
|
|
526
|
+
const runOptions = this.runTimes.map(runTime => ({
|
|
527
|
+
label: Time.format(runTime, 'date.short') + ' - ' + Time.format(runTime, 'time.short'),
|
|
528
|
+
value: runTime
|
|
529
|
+
}))
|
|
530
|
+
_.last(runOptions).default = true
|
|
531
|
+
// Registers the action
|
|
532
|
+
this.actions.push({
|
|
533
|
+
component: 'input/KOptionsChooser',
|
|
534
|
+
id: 'run-options',
|
|
535
|
+
icon: 'las la-clock',
|
|
536
|
+
tooltip: this.$t('KTimeSeries.RUN') + ' (' + Time.format(this.getSelectedRunTime(), 'date.short') +
|
|
537
|
+
' - ' + Time.format(this.getSelectedRunTime(), 'time.short') + ')',
|
|
538
|
+
options: runOptions,
|
|
539
|
+
on: { event: 'option-chosen', listener: this.onUpdateRun }
|
|
540
|
+
})
|
|
541
|
+
}
|
|
464
542
|
}
|
|
465
543
|
},
|
|
466
544
|
created () {
|
|
@@ -11,7 +11,10 @@
|
|
|
11
11
|
"ALERTS_LIMIT": "Too much alerts to display all of them",
|
|
12
12
|
"FILE_IMPORT_ERROR": "File import has failed",
|
|
13
13
|
"CANNOT_CHECK_ALERT_MISSING_SERVICE": "Last check failed due to unavailable service",
|
|
14
|
-
"CANNOT_CHECK_ALERT_MISSING_DATA": "Last check failed due to unavailable data"
|
|
14
|
+
"CANNOT_CHECK_ALERT_MISSING_DATA": "Last check failed due to unavailable data",
|
|
15
|
+
"INVALID_GEOJSON_FILE": "{{file}} is not a valid GeoJSON file",
|
|
16
|
+
"INVALID_GPX_FILE": "{{file}} is not a valid GPX file",
|
|
17
|
+
"INVALID_KML_FILE": "{{file}} is not a valid KML file"
|
|
15
18
|
},
|
|
16
19
|
"mixins": {
|
|
17
20
|
"navigator": {
|
|
@@ -65,7 +68,8 @@
|
|
|
65
68
|
"SYNCHRONIZE_TIMELINE_LABEL": "Synchronize with timeline",
|
|
66
69
|
"TOOLS": "Tools",
|
|
67
70
|
"SAVE_LAYER_EDITION_CHANGES": "Save edition changes",
|
|
68
|
-
"DISCARD_LAYER_EDITION_CHANGES": "Discard edition changes"
|
|
71
|
+
"DISCARD_LAYER_EDITION_CHANGES": "Discard edition changes",
|
|
72
|
+
"CAPTURE_VIEW": "Capture the view"
|
|
69
73
|
},
|
|
70
74
|
"timeseries": {
|
|
71
75
|
"FORECAST_PROBE": "Forecast"
|
|
@@ -328,7 +332,8 @@
|
|
|
328
332
|
},
|
|
329
333
|
"KOwsLayerField": {
|
|
330
334
|
"UNABLE_TO_DESCRIBE_FEATURE_TYPE": "Failed fetching layer's description.",
|
|
331
|
-
"UNSUPPORTED_LAYER_CRS": "The projection used by this layer is not supported."
|
|
335
|
+
"UNSUPPORTED_LAYER_CRS": "The projection used by this layer is not supported.",
|
|
336
|
+
"UNSUPPORTED_LAYER_FORMAT": "The data format used by this layer is not supported."
|
|
332
337
|
},
|
|
333
338
|
"KLocationField": {
|
|
334
339
|
"SEARCH": "$t(SEARCH)",
|
|
@@ -358,13 +363,19 @@
|
|
|
358
363
|
"KTimeSeries": {
|
|
359
364
|
"NO_DATA_AVAILABLE": "No data available",
|
|
360
365
|
"CENTER_ON": "Center the view on the probed location",
|
|
361
|
-
"SPAN": "Timeseries span"
|
|
366
|
+
"SPAN": "Timeseries span",
|
|
367
|
+
"RUN": "Forecast run",
|
|
368
|
+
"TIME_LABEL": "Time",
|
|
369
|
+
"EXPORT_SERIES": "Export data",
|
|
370
|
+
"SERIES_EXPORT_FILE": "Series.csv"
|
|
362
371
|
},
|
|
363
372
|
"KCatalogPanel": {
|
|
364
373
|
"BASE_LAYERS": "Base Layers",
|
|
365
374
|
"TERRAIN_LAYERS": "Terrain layers",
|
|
366
375
|
"OVERLAY_LAYERS": "My layers",
|
|
367
376
|
"MEASURE_LAYERS": "Measure layers",
|
|
377
|
+
"INFRASTRUCTURE_LAYERS": "Infrastructures",
|
|
378
|
+
"ADMINISTRATIVE_LAYERS": "Administrative",
|
|
368
379
|
"METEO_LAYERS": "Meteo forecasts",
|
|
369
380
|
"BUSINESS_LAYERS": "Business layers",
|
|
370
381
|
"CAPTURED_LAYERS": "Captured views",
|
|
@@ -409,9 +420,10 @@
|
|
|
409
420
|
},
|
|
410
421
|
"KLayerStyleForm": {
|
|
411
422
|
"BASE": "Base properties",
|
|
412
|
-
"DEFAULT_VISIBILITY": "
|
|
423
|
+
"DEFAULT_VISIBILITY": "Visible by default",
|
|
413
424
|
"MIN_ZOOM": "Visible from level",
|
|
414
425
|
"MAX_ZOOM": "Visible until level",
|
|
426
|
+
"SELECTABLE": "Selectable",
|
|
415
427
|
"LAYER_OPACITY": "Transparent layer",
|
|
416
428
|
"OPACITY": "Opacity",
|
|
417
429
|
"POINTS": "Markers",
|
|
@@ -548,5 +560,31 @@
|
|
|
548
560
|
"EDIT_PROPERTIES": "Edit feature properties",
|
|
549
561
|
"DRAG_FEATURES": "Move features",
|
|
550
562
|
"REMOVE_FEATURES": "Remove features"
|
|
563
|
+
},
|
|
564
|
+
"KCaptureToolbar": {
|
|
565
|
+
"SD_LABEL": "Standard Definition",
|
|
566
|
+
"SD_DESCRIPTION": "4:3, 640 x 480",
|
|
567
|
+
"HD_LABEL": "High Definition",
|
|
568
|
+
"HD_DESCRIPTION": "16:9, 1280 x 720",
|
|
569
|
+
"FHD_LABEL": "Full HD",
|
|
570
|
+
"FHD_DESCRIPTION": "16:9, 1920 x 1080",
|
|
571
|
+
"QHD_LABEL": "Quad HD",
|
|
572
|
+
"QHD_DESCRIPTION": "16:9, 2560 x 1440",
|
|
573
|
+
"2K_LABEL": "2K",
|
|
574
|
+
"2K_DESCRIPTION": "1:1.77, 2048 x 1080",
|
|
575
|
+
"4K_LABEL": "4K or Ultra HD",
|
|
576
|
+
"4K_DESCRIPTION": "1:1.9, 3840 x 2160",
|
|
577
|
+
"8K_LABEL": "8K or Full Ultra HD",
|
|
578
|
+
"8K_DESCRIPTION": "16∶9, 7680 x 4320",
|
|
579
|
+
"CAPTURE_ACTION": "Capture view",
|
|
580
|
+
"CAPTURING_VIEW": "Waiting for capturing view"
|
|
581
|
+
},
|
|
582
|
+
"KMeasureTool": {
|
|
583
|
+
"TOOL_BUTTON_LABEL": "Display the measure tool",
|
|
584
|
+
"CLEAR": "Clear all measurements",
|
|
585
|
+
"MEASURE_DISTANCE": "Measure a distance",
|
|
586
|
+
"MEASURE_AREA": "Measure an area",
|
|
587
|
+
"DISPLAY_MEASURE_VALUE": "Display measure values",
|
|
588
|
+
"CLICK_TO_CHANGE_UNIT": "Click to change unit"
|
|
551
589
|
}
|
|
552
590
|
}
|
|
@@ -11,7 +11,10 @@
|
|
|
11
11
|
"ALERTS_LIMIT": "Trop d'alertes pour les afficher toutes",
|
|
12
12
|
"FILE_IMPORT_ERROR": "L'import du fichier a échoué",
|
|
13
13
|
"CANNOT_CHECK_ALERT_MISSING_SERVICE": "La dernière vérification a échouée par indisponibilité du service",
|
|
14
|
-
"CANNOT_CHECK_ALERT_MISSING_DATA": "La dernière vérification a échouée par indisponibilité des données"
|
|
14
|
+
"CANNOT_CHECK_ALERT_MISSING_DATA": "La dernière vérification a échouée par indisponibilité des données",
|
|
15
|
+
"INVALID_GEOJSON_FILE": "{{file}} n'est pas un fichier GeoJSON valide",
|
|
16
|
+
"INVALID_GPX_FILE": "{{file}} n'est pas un fichier GPX valide",
|
|
17
|
+
"INVALID_KML_FILE": "{{file}} n'est pas un fichier KML valide"
|
|
15
18
|
},
|
|
16
19
|
"mixins": {
|
|
17
20
|
"navigator": {
|
|
@@ -65,7 +68,8 @@
|
|
|
65
68
|
"SYNCHRONIZE_TIMELINE_LABEL": "Synchroniser temporellement",
|
|
66
69
|
"TOOLS": "Outils",
|
|
67
70
|
"SAVE_LAYER_EDITION_CHANGES": "Sauver les changements apportés",
|
|
68
|
-
"DISCARD_LAYER_EDITION_CHANGES": "Rejeter les changements apportés"
|
|
71
|
+
"DISCARD_LAYER_EDITION_CHANGES": "Rejeter les changements apportés",
|
|
72
|
+
"CAPTURE_VIEW": "Capturer la vue"
|
|
69
73
|
},
|
|
70
74
|
"timeseries": {
|
|
71
75
|
"FORECAST_PROBE": "Prévisions"
|
|
@@ -329,7 +333,8 @@
|
|
|
329
333
|
},
|
|
330
334
|
"KOwsLayerField": {
|
|
331
335
|
"UNABLE_TO_DESCRIBE_FEATURE_TYPE": "Impossible de récupérer la description des propriétés de la couche.",
|
|
332
|
-
"UNSUPPORTED_LAYER_CRS": "La projection utilisée par cette couche n'est pas supportée."
|
|
336
|
+
"UNSUPPORTED_LAYER_CRS": "La projection utilisée par cette couche n'est pas supportée.",
|
|
337
|
+
"UNSUPPORTED_LAYER_FORMAT": "Le format de données utilisé par cette couche n'est pas supporté."
|
|
333
338
|
},
|
|
334
339
|
"KLocationField": {
|
|
335
340
|
"SEARCH": "$t(SEARCH)",
|
|
@@ -359,13 +364,19 @@
|
|
|
359
364
|
"KTimeSeries": {
|
|
360
365
|
"NO_DATA_AVAILABLE": "Aucune donnée disponible",
|
|
361
366
|
"CENTER_ON": "Centrer la vue sur la sonde",
|
|
362
|
-
"SPAN": "Intervalle de la série temporelle"
|
|
367
|
+
"SPAN": "Intervalle de la série temporelle",
|
|
368
|
+
"RUN": "Réseau de prévision",
|
|
369
|
+
"TIME_LABEL": "Temps",
|
|
370
|
+
"EXPORT_SERIES": "Exporter les données",
|
|
371
|
+
"SERIES_EXPORT_FILE": "Series.csv"
|
|
363
372
|
},
|
|
364
373
|
"KCatalogPanel": {
|
|
365
374
|
"BASE_LAYERS": "Fonds cartographiques",
|
|
366
375
|
"TERRAIN_LAYERS": "Couches terrain",
|
|
367
376
|
"OVERLAY_LAYERS": "Mes données",
|
|
368
377
|
"MEASURE_LAYERS": "Couches des mesures",
|
|
378
|
+
"INFRASTRUCTURE_LAYERS": "Infrastructures",
|
|
379
|
+
"ADMINISTRATIVE_LAYERS": "Administratif",
|
|
369
380
|
"METEO_LAYERS": "Prévisions météo",
|
|
370
381
|
"BUSINESS_LAYERS": "Couches métier",
|
|
371
382
|
"CAPTURED_LAYERS": "Prises de vues",
|
|
@@ -410,9 +421,10 @@
|
|
|
410
421
|
},
|
|
411
422
|
"KLayerStyleForm": {
|
|
412
423
|
"BASE": "Propriétés de base",
|
|
413
|
-
"DEFAULT_VISIBILITY": "
|
|
424
|
+
"DEFAULT_VISIBILITY": "Visible par défaut",
|
|
414
425
|
"MIN_ZOOM": "Visible à partir du niveau",
|
|
415
426
|
"MAX_ZOOM": "Visible jusqu'au niveau",
|
|
427
|
+
"SELECTABLE": "Sélectionnable",
|
|
416
428
|
"LAYER_OPACITY": "Couche transparente",
|
|
417
429
|
"OPACITY": "Opacité",
|
|
418
430
|
"POINTS": "Icônes",
|
|
@@ -549,5 +561,31 @@
|
|
|
549
561
|
"EDIT_PROPERTIES": "Editer les propriétés des entités",
|
|
550
562
|
"DRAG_FEATURES": "Déplacer des entités",
|
|
551
563
|
"REMOVE_FEATURES": "Effacer des entités"
|
|
564
|
+
},
|
|
565
|
+
"KCaptureToolbar": {
|
|
566
|
+
"SD_LABEL": "Définition Standard",
|
|
567
|
+
"SD_DESCRIPTION": "4:3, 640 x 480",
|
|
568
|
+
"HD_LABEL": "Haute Définition",
|
|
569
|
+
"HD_DESCRIPTION": "16:9, 1280 x 720",
|
|
570
|
+
"FHD_LABEL": "Full HD",
|
|
571
|
+
"FHD_DESCRIPTION": "16:9, 1920 x 1080",
|
|
572
|
+
"QHD_LABEL": "Quad HD",
|
|
573
|
+
"QHD_DESCRIPTION": "16:9, 2560 x 1440",
|
|
574
|
+
"2K_LABEL": "2K",
|
|
575
|
+
"2K_DESCRIPTION": "1:1.77, 2048 x 1080",
|
|
576
|
+
"4K_LABEL": "4K ou Ultra HD",
|
|
577
|
+
"4K_DESCRIPTION": "1:1.9, 3840 x 2160",
|
|
578
|
+
"8K_LABEL": "8K ou Full Ultra HD",
|
|
579
|
+
"8K_DESCRIPTION": "16∶9, 7680 x 4320",
|
|
580
|
+
"CAPTURE_ACTION": "Capturer la vue",
|
|
581
|
+
"CAPTURING_VIEW": "En attente de capture de la vue"
|
|
582
|
+
},
|
|
583
|
+
"KMeasureTool": {
|
|
584
|
+
"TOOL_BUTTON_LABEL": "Afficher l'outil de mesures",
|
|
585
|
+
"CLEAR": "Effacer les mesures",
|
|
586
|
+
"MEASURE_DISTANCE": "Mesurer une distance",
|
|
587
|
+
"MEASURE_AREA": "Mesurer une aire",
|
|
588
|
+
"DISPLAY_MEASURE_VALUE": "Afficher les valeurs des mesures",
|
|
589
|
+
"CLICK_TO_CHANGE_UNIT": "Cliquer pour changer d'unité"
|
|
552
590
|
}
|
|
553
591
|
}
|
package/lib/map/client/init.js
CHANGED
|
@@ -23,6 +23,8 @@ var _client = require('../../core/client');
|
|
|
23
23
|
|
|
24
24
|
var _geolocation = require('./geolocation');
|
|
25
25
|
|
|
26
|
+
var _readers = require('./readers');
|
|
27
|
+
|
|
26
28
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
27
29
|
|
|
28
30
|
function siftMatcher(originalQuery) {
|
|
@@ -53,6 +55,9 @@ function init() {
|
|
|
53
55
|
|
|
54
56
|
// Initialize singletons that might be used globally first
|
|
55
57
|
_geolocation.Geolocation.initialize();
|
|
58
|
+
_client.Reader.register('.geojson', _readers.readGEOJSON);
|
|
59
|
+
_client.Reader.register('.kml', _readers.readKML);
|
|
60
|
+
_client.Reader.register('.gpx', _readers.readGPX);
|
|
56
61
|
|
|
57
62
|
// Then, create the models listened by the different components
|
|
58
63
|
// You must use the patch method on the store to update those models
|
|
@@ -94,8 +99,8 @@ function init() {
|
|
|
94
99
|
});
|
|
95
100
|
|
|
96
101
|
if (!_quasar.Platform.is.cordova) return;
|
|
97
|
-
window.navigationApps = [];
|
|
98
102
|
|
|
103
|
+
window.navigationApps = [];
|
|
99
104
|
document.addEventListener('deviceready', _ => {
|
|
100
105
|
// Declare the navigation apps
|
|
101
106
|
window.launchnavigator.availableApps(result => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../map/client/init.js"],"names":["init","siftMatcher","originalQuery","keysToOmit","_","omit","api","logger","debug","declareService","registerMatcher","createService","service","id","paginate","default","matcher","Geolocation","initialize","Store","set","location","feature","layer","time","short","long","date","year","utc","locale","kCoreUtils","getLocale","view","layers","span","Platform","is","cordova","window","navigationApps","document","addEventListener","launchnavigator","availableApps","result","apps","Object","entries","forEach","app","push","error","warn"],"mappings":";;;;;
|
|
1
|
+
{"version":3,"sources":["../../../map/client/init.js"],"names":["init","siftMatcher","originalQuery","keysToOmit","_","omit","api","logger","debug","declareService","registerMatcher","createService","service","id","paginate","default","matcher","Geolocation","initialize","Reader","register","readGEOJSON","readKML","readGPX","Store","set","location","feature","layer","time","short","long","date","year","utc","locale","kCoreUtils","getLocale","view","layers","span","Platform","is","cordova","window","navigationApps","document","addEventListener","launchnavigator","availableApps","result","apps","Object","entries","forEach","app","push","error","warn"],"mappings":";;;;;kBAewBA,I;;AAfxB;;;;AACA;;;;AACA;;;;AACA;;AACA;;AACA;;AACA;;;;AAEA,SAASC,WAAT,CAAsBC,aAAtB,EAAqC;AACnC;AACA;AACA,QAAMC,aAAa,CAAC,SAAD,CAAnB;AACA,SAAOC,iBAAEC,IAAF,CAAOH,aAAP,EAAsB,GAAGC,UAAzB,CAAP;AACD;;AAEc,SAASH,IAAT,GAAiB;AAC9B,QAAMM,MAAM,IAAZ;;AAEAC,qBAAOC,KAAP,CAAa,kBAAb;;AAEA;AACAF,MAAIG,cAAJ,CAAmB,UAAnB;AACA;AACAH,MAAII,eAAJ,CAAoBT,WAApB;AACA;AACA;AACAK,MAAIK,aAAJ,CAAkB,kBAAlB,EAAsC;AACpCC,aAAS,8BAAO;AACdC,UAAI,KADU;AAEdC,gBAAU,EAAEC,SAAS,EAAX,EAFI;AAGdC,eAASV,IAAIU;AAHC,KAAP;AAD2B,GAAtC;;AAQA;AACAC,2BAAYC,UAAZ;AACAC,iBAAOC,QAAP,CAAgB,UAAhB,EAA4BC,oBAA5B;AACAF,iBAAOC,QAAP,CAAgB,MAAhB,EAAwBE,gBAAxB;AACAH,iBAAOC,QAAP,CAAgB,MAAhB,EAAwBG,gBAAxB;;AAEA;AACA;AACA;;AAEA;AACAC,gBAAMC,GAAN,CAAU,WAAV,EAAuB;AACrBC,cAAU,IADW;AAErBC,aAAS,IAFY;AAGrBC,WAAO;AAHc,GAAvB;AAKA;AACAJ,gBAAMC,GAAN,CAAU,YAAV,EAAwB;AACtBI,UAAM;AACJC,aAAO,MADH;AAEJC,YAAM;AAFF,KADgB;AAKtBC,UAAM;AACJF,aAAO,OADH;AAEJC,YAAM;AAFF,KALgB;AAStBE,UAAM;AACJH,aAAO,IADH;AAEJC,YAAM;AAFF,KATgB;AAatBG,SAAK,KAbiB;AActBC,YAAQC,cAAWC,SAAX;AAdc,GAAxB;AAgBA;AACAb,gBAAMC,GAAN,CAAU,gBAAV,EAA4B,GAA5B;AACA;AACAD,gBAAMC,GAAN,CAAU,SAAV,EAAqB;AACnBa,UAAM,IADa;AAEnBC,YAAQ;AAFW,GAArB;AAIA;AACAf,gBAAMC,GAAN,CAAU,YAAV,EAAwB;AACtBe,UAAM,IADgB,CACX;AADW,GAAxB;;AAIA,MAAI,CAACC,iBAASC,EAAT,CAAYC,OAAjB,EAA0B;;AAE1BC,SAAOC,cAAP,GAAwB,EAAxB;AACAC,WAASC,gBAAT,CAA0B,aAA1B,EAAyC3C,KAAK;AAC5C;AACAwC,WAAOI,eAAP,CAAuBC,aAAvB,CAAsCC,MAAD,IAAY;AAC/C,YAAMC,OAAOC,OAAOC,OAAP,CAAeH,MAAf,CAAb;AACAC,WAAKG,OAAL,CAAcC,GAAD,IAAS;AACpB,YAAIA,IAAI,CAAJ,CAAJ,EAAYX,OAAOC,cAAP,CAAsBW,IAAtB,CAA2BD,IAAI,CAAJ,CAA3B;AACb,OAFD;AAGD,KALD,EAKIE,KAAD,IAAWlD,mBAAOmD,IAAP,CAAY,gDAAgDD,KAA5D,CALd;AAMD,GARD;AASD","file":"init.js","sourcesContent":["import _ from 'lodash'\r\nimport logger from 'loglevel'\r\nimport memory from 'feathers-memory'\r\nimport { Platform } from 'quasar'\r\nimport { Store, Reader, utils as kCoreUtils } from '../../core/client'\r\nimport { Geolocation } from './geolocation'\r\nimport { readGEOJSON, readKML, readGPX } from './readers'\r\n\r\nfunction siftMatcher (originalQuery) {\r\n // Filter out specific operators others than the reserved ones (starting by $),\r\n // which are already filtered by core matcher\r\n const keysToOmit = ['geoJson']\r\n return _.omit(originalQuery, ...keysToOmit)\r\n}\r\n\r\nexport default function init () {\r\n const api = this\r\n\r\n logger.debug('Initializing map')\r\n\r\n // Declare the built-in services, others are optional\r\n api.declareService('geocoder')\r\n // Declare our matcher\r\n api.registerMatcher(siftMatcher)\r\n // Service to support in memory features edition\r\n // mixin.edit-layers use it when edited layer is not stored\r\n api.createService('features-edition', {\r\n service: memory({\r\n id: '_id',\r\n paginate: { default: 10 },\r\n matcher: api.matcher\r\n })\r\n })\r\n\r\n // Initialize singletons that might be used globally first\r\n Geolocation.initialize()\r\n Reader.register('.geojson', readGEOJSON)\r\n Reader.register('.kml', readKML)\r\n Reader.register('.gpx', readGPX)\r\n\r\n // Then, create the models listened by the different components\r\n // You must use the patch method on the store to update those models\r\n // It is generally done by activity based componentq or through a local settings service\r\n\r\n // Initialize the selection\r\n Store.set('selection', {\r\n location: null,\r\n feature: null,\r\n layer: null\r\n })\r\n // Default time formatting settings\r\n Store.set('timeFormat', {\r\n time: {\r\n short: 'H[h]',\r\n long: 'HH:mm'\r\n },\r\n date: {\r\n short: 'DD/MM',\r\n long: 'dddd D'\r\n },\r\n year: {\r\n short: 'YY',\r\n long: 'YYYY'\r\n },\r\n utc: false,\r\n locale: kCoreUtils.getLocale()\r\n })\r\n // Default location formatting settings\r\n Store.set('locationFormat', 'f')\r\n // Default view settings\r\n Store.set('restore', {\r\n view: true,\r\n layers: false\r\n })\r\n // Default timeseries parameters\r\n Store.set('timeseries', {\r\n span: 1440 // 24H\r\n })\r\n\r\n if (!Platform.is.cordova) return\r\n\r\n window.navigationApps = []\r\n document.addEventListener('deviceready', _ => {\r\n // Declare the navigation apps\r\n window.launchnavigator.availableApps((result) => {\r\n const apps = Object.entries(result)\r\n apps.forEach((app) => {\r\n if (app[1]) window.navigationApps.push(app[0])\r\n })\r\n }, (error) => logger.warn('Cannot retrieve installed navigation apps: ' + error))\r\n })\r\n}\r\n"]}
|
|
@@ -17,6 +17,10 @@ var _leaflet = require('leaflet');
|
|
|
17
17
|
|
|
18
18
|
var _leaflet2 = _interopRequireDefault(_leaflet);
|
|
19
19
|
|
|
20
|
+
var _bbox = require('@turf/bbox');
|
|
21
|
+
|
|
22
|
+
var _bbox2 = _interopRequireDefault(_bbox);
|
|
23
|
+
|
|
20
24
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
25
|
|
|
22
26
|
const MaskLayer = _leaflet2.default.Polygon.extend({
|
|
@@ -31,9 +35,10 @@ const MaskLayer = _leaflet2.default.Polygon.extend({
|
|
|
31
35
|
// Define the outBounds latlngs array of the mask
|
|
32
36
|
const outerBoundsLatLngs = [this.options.bounds.getSouthWest(), this.options.bounds.getNorthWest(), this.options.bounds.getNorthEast(), this.options.bounds.getSouthEast()];
|
|
33
37
|
// Construct the mask
|
|
34
|
-
|
|
38
|
+
const mask = [];
|
|
35
39
|
const type = _lodash2.default.get(geoJson, 'type');
|
|
36
40
|
if (type === 'Feature') {
|
|
41
|
+
// Create the new geometry
|
|
37
42
|
const geometryType = _lodash2.default.get(geoJson, 'geometry.type');
|
|
38
43
|
const coordinates = _lodash2.default.get(geoJson, 'geometry.coordinates');
|
|
39
44
|
if (geometryType === 'Polygon' && coordinates) {
|
|
@@ -41,6 +46,10 @@ const MaskLayer = _leaflet2.default.Polygon.extend({
|
|
|
41
46
|
} else if (geometryType === 'MultiPolygon' && coordinates) {
|
|
42
47
|
_lodash2.default.forEach(coordinates, polygon => this.addPolygon(polygon, mask));
|
|
43
48
|
}
|
|
49
|
+
// Compute the bbox if needed
|
|
50
|
+
if (!geoJson.bbox) {
|
|
51
|
+
geoJson.bbox = (0, _bbox2.default)(geoJson);
|
|
52
|
+
}
|
|
44
53
|
} else {
|
|
45
54
|
_loglevel2.default.warn('Invalid/Unsupported GeoJson object for MaskLayer');
|
|
46
55
|
}
|
|
@@ -48,9 +57,9 @@ const MaskLayer = _leaflet2.default.Polygon.extend({
|
|
|
48
57
|
},
|
|
49
58
|
|
|
50
59
|
addPolygon(coordinates, mask) {
|
|
51
|
-
|
|
60
|
+
const hole = [];
|
|
52
61
|
_lodash2.default.forEach(coordinates, ring => {
|
|
53
|
-
|
|
62
|
+
const ringHole = [];
|
|
54
63
|
for (let i = 0; i < ring.length; i++) {
|
|
55
64
|
ringHole.push(new _leaflet2.default.LatLng(ring[i][1], ring[i][0]));
|
|
56
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../map/client/leaflet/MaskLayer.js"],"names":["MaskLayer","L","Polygon","extend","initialize","geoJson","options","setOptions","Object","assign","interactive","fitBounds","bounds","LatLngBounds","outerBoundsLatLngs","getSouthWest","getNorthWest","getNorthEast","getSouthEast","mask","type","_","get","geometryType","coordinates","addPolygon","forEach","polygon","logger","warn","prototype","call","hole","ring","ringHole","i","length","push","LatLng"],"mappings":";;;;;;;AAAA;;;;AACA;;;;AACA;;;;;;AAEA,MAAMA,YAAYC,kBAAEC,OAAF,CAAUC,MAAV,CAAiB;;AAEjCC,cAAY,UAAUC,OAAV,EAAmBC,OAAnB,EAA4B;AACtC;AACAL,sBAAEM,UAAF,CAAa,IAAb,EAAmBC,OAAOC,MAAP,CAAc;AAC/BC,mBAAa,KADkB;AAE/BC,iBAAW,IAFoB;AAG/BC,cAAQ,IAAIX,kBAAEY,YAAN,CAAmB,CAAC,CAAC,EAAF,EAAM,CAAC,GAAP,CAAnB,EAAgC,CAAC,EAAD,EAAK,GAAL,CAAhC;AAHuB,KAAd,CAAnB,
|
|
1
|
+
{"version":3,"sources":["../../../../map/client/leaflet/MaskLayer.js"],"names":["MaskLayer","L","Polygon","extend","initialize","geoJson","options","setOptions","Object","assign","interactive","fitBounds","bounds","LatLngBounds","outerBoundsLatLngs","getSouthWest","getNorthWest","getNorthEast","getSouthEast","mask","type","_","get","geometryType","coordinates","addPolygon","forEach","polygon","bbox","logger","warn","prototype","call","hole","ring","ringHole","i","length","push","LatLng"],"mappings":";;;;;;;AAAA;;;;AACA;;;;AACA;;;;AACA;;;;;;AAEA,MAAMA,YAAYC,kBAAEC,OAAF,CAAUC,MAAV,CAAiB;;AAEjCC,cAAY,UAAUC,OAAV,EAAmBC,OAAnB,EAA4B;AACtC;AACAL,sBAAEM,UAAF,CAAa,IAAb,EAAmBC,OAAOC,MAAP,CAAc;AAC/BC,mBAAa,KADkB;AAE/BC,iBAAW,IAFoB;AAG/BC,cAAQ,IAAIX,kBAAEY,YAAN,CAAmB,CAAC,CAAC,EAAF,EAAM,CAAC,GAAP,CAAnB,EAAgC,CAAC,EAAD,EAAK,GAAL,CAAhC;AAHuB,KAAd,CAAnB,EAIIP,OAJJ;AAKA;AACA,UAAMQ,qBAAqB,CACzB,KAAKR,OAAL,CAAaM,MAAb,CAAoBG,YAApB,EADyB,EAEzB,KAAKT,OAAL,CAAaM,MAAb,CAAoBI,YAApB,EAFyB,EAGzB,KAAKV,OAAL,CAAaM,MAAb,CAAoBK,YAApB,EAHyB,EAIzB,KAAKX,OAAL,CAAaM,MAAb,CAAoBM,YAApB,EAJyB,CAA3B;AAMA;AACA,UAAMC,OAAO,EAAb;AACA,UAAMC,OAAOC,iBAAEC,GAAF,CAAMjB,OAAN,EAAe,MAAf,CAAb;AACA,QAAIe,SAAS,SAAb,EAAwB;AACtB;AACA,YAAMG,eAAeF,iBAAEC,GAAF,CAAMjB,OAAN,EAAe,eAAf,CAArB;AACA,YAAMmB,cAAcH,iBAAEC,GAAF,CAAMjB,OAAN,EAAe,sBAAf,CAApB;AACA,UAAIkB,iBAAiB,SAAjB,IAA8BC,WAAlC,EAA+C;AAC7C,aAAKC,UAAL,CAAgBD,WAAhB,EAA6BL,IAA7B;AACD,OAFD,MAEO,IAAII,iBAAiB,cAAjB,IAAmCC,WAAvC,EAAoD;AACzDH,yBAAEK,OAAF,CAAUF,WAAV,EAAuBG,WAAW,KAAKF,UAAL,CAAgBE,OAAhB,EAAyBR,IAAzB,CAAlC;AACD;AACD;AACA,UAAI,CAACd,QAAQuB,IAAb,EAAmB;AACjBvB,gBAAQuB,IAAR,GAAe,oBAAKvB,OAAL,CAAf;AACD;AACF,KAbD,MAaO;AACLwB,yBAAOC,IAAP,CAAY,kDAAZ;AACD;AACD7B,sBAAEC,OAAF,CAAU6B,SAAV,CAAoB3B,UAApB,CAA+B4B,IAA/B,CAAoC,IAApC,EAA0C,CAAClB,kBAAD,EAAqBK,IAArB,CAA1C,EAAsE,KAAKb,OAA3E;AACD,GApCgC;;AAsCjCmB,aAAYD,WAAZ,EAAyBL,IAAzB,EAA+B;AAC7B,UAAMc,OAAO,EAAb;AACAZ,qBAAEK,OAAF,CAAUF,WAAV,EAAuBU,QAAQ;AAC7B,YAAMC,WAAW,EAAjB;AACA,WAAK,IAAIC,IAAI,CAAb,EAAgBA,IAAIF,KAAKG,MAAzB,EAAiCD,GAAjC,EAAsC;AACpCD,iBAASG,IAAT,CAAc,IAAIrC,kBAAEsC,MAAN,CAAaL,KAAKE,CAAL,EAAQ,CAAR,CAAb,EAAyBF,KAAKE,CAAL,EAAQ,CAAR,CAAzB,CAAd;AACD;AACDH,WAAKK,IAAL,CAAUH,QAAV;AACD,KAND;AAOAhB,SAAKmB,IAAL,CAAUL,IAAV;AACD;AAhDgC,CAAjB,CAAlB;;QAmDSjC,S,GAAAA,S","file":"MaskLayer.js","sourcesContent":["import logger from 'loglevel'\r\nimport _ from 'lodash'\r\nimport L from 'leaflet'\r\nimport bbox from '@turf/bbox'\r\n\r\nconst MaskLayer = L.Polygon.extend({\r\n\r\n initialize: function (geoJson, options) {\r\n // Merge the options\r\n L.setOptions(this, Object.assign({\r\n interactive: false,\r\n fitBounds: true,\r\n bounds: new L.LatLngBounds([-90, -360], [90, 360])\r\n }), options)\r\n // Define the outBounds latlngs array of the mask\r\n const outerBoundsLatLngs = [\r\n this.options.bounds.getSouthWest(),\r\n this.options.bounds.getNorthWest(),\r\n this.options.bounds.getNorthEast(),\r\n this.options.bounds.getSouthEast()\r\n ]\r\n // Construct the mask\r\n const mask = []\r\n const type = _.get(geoJson, 'type')\r\n if (type === 'Feature') {\r\n // Create the new geometry\r\n const geometryType = _.get(geoJson, 'geometry.type')\r\n const coordinates = _.get(geoJson, 'geometry.coordinates')\r\n if (geometryType === 'Polygon' && coordinates) {\r\n this.addPolygon(coordinates, mask)\r\n } else if (geometryType === 'MultiPolygon' && coordinates) {\r\n _.forEach(coordinates, polygon => this.addPolygon(polygon, mask))\r\n }\r\n // Compute the bbox if needed\r\n if (!geoJson.bbox) {\r\n geoJson.bbox = bbox(geoJson)\r\n }\r\n } else {\r\n logger.warn('Invalid/Unsupported GeoJson object for MaskLayer')\r\n }\r\n L.Polygon.prototype.initialize.call(this, [outerBoundsLatLngs, mask], this.options)\r\n },\r\n\r\n addPolygon (coordinates, mask) {\r\n const hole = []\r\n _.forEach(coordinates, ring => {\r\n const ringHole = []\r\n for (let i = 0; i < ring.length; i++) {\r\n ringHole.push(new L.LatLng(ring[i][1], ring[i][0]))\r\n }\r\n hole.push(ringHole)\r\n })\r\n mask.push(hole)\r\n }\r\n})\r\n\r\nexport { MaskLayer }\r\n"]}
|
|
@@ -18,9 +18,7 @@ var _loglevel2 = _interopRequireDefault(_loglevel);
|
|
|
18
18
|
|
|
19
19
|
var _quasar = require('quasar');
|
|
20
20
|
|
|
21
|
-
var _togeojson = require('togeojson');
|
|
22
|
-
|
|
23
|
-
var _togeojson2 = _interopRequireDefault(_togeojson);
|
|
21
|
+
var _togeojson = require('@tmcw/togeojson');
|
|
24
22
|
|
|
25
23
|
var _Cesium = require('cesium/Source/Cesium.js');
|
|
26
24
|
|
|
@@ -400,8 +398,8 @@ exports.default = {
|
|
|
400
398
|
let feature = { type: 'Feature'
|
|
401
399
|
// FIXME: Generate GeoJson feature if possible (requires Cesium 1.59)
|
|
402
400
|
};if (typeof _Cesium2.default.exportKml === 'function') {
|
|
403
|
-
const
|
|
404
|
-
const geoJson =
|
|
401
|
+
const kmlEntities = _Cesium2.default.exportKml({ entities: [emittedEvent.target] });
|
|
402
|
+
const geoJson = (0, _togeojson.kml)(kmlEntities);
|
|
405
403
|
if (geoJson.features.length > 0) feature = geoJson.features[0];
|
|
406
404
|
} else {
|
|
407
405
|
const position = _Cesium2.default.Cartographic.fromCartesian(emittedEvent.target.position ? emittedEvent.target.position.getValue(0) : emittedEvent.pickedPosition);
|