@kalisio/kdk 1.4.2 → 1.5.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.
- package/.nyc_output/{2e74ca23-8cf0-4161-9536-f71c2a1a74bb.json → 058fc679-d60a-4501-ac04-71171e5200b8.json} +0 -0
- package/.nyc_output/2226bcce-9d22-4dad-b9fa-46564b5565c7.json +1 -0
- package/.nyc_output/{2c5b7c8e-81db-4d2c-a7a4-02dc640d301f.json → 6dc4b140-1a8a-4d69-b91c-89c557883d6e.json} +1 -1
- package/.nyc_output/{81d21e46-766a-46bc-b1b7-143ca577347a.json → 8b1830fa-932e-4a61-9837-4a5b18f83ea9.json} +0 -0
- package/.nyc_output/{aaf3ebbb-f895-4d7b-9255-bc5dee832570.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/{a762cb58-70dc-4d39-ab69-928635affa98.json → 2226bcce-9d22-4dad-b9fa-46564b5565c7.json} +1 -1
- package/.nyc_output/processinfo/{2c5b7c8e-81db-4d2c-a7a4-02dc640d301f.json → 6dc4b140-1a8a-4d69-b91c-89c557883d6e.json} +1 -1
- 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 +21 -8
- 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 +45 -45
- package/coverage/core/api/hooks/hooks.authentication.js.html +71 -71
- package/coverage/core/api/hooks/hooks.authorisations.js.html +353 -353
- package/coverage/core/api/hooks/hooks.devices.js.html +49 -49
- 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 +190 -190
- 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 +263 -263
- package/coverage/core/api/hooks/index.html +172 -172
- 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 +104 -104
- 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 +121 -121
- package/coverage/core/api/services/devices/index.html +28 -28
- 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 +34 -34
- 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 +414 -414
- 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 +178 -178
- 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 +45 -45
- package/coverage/lcov-report/core/api/hooks/hooks.authentication.js.html +71 -71
- package/coverage/lcov-report/core/api/hooks/hooks.authorisations.js.html +353 -353
- package/coverage/lcov-report/core/api/hooks/hooks.devices.js.html +49 -49
- 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 +190 -190
- 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 +263 -263
- package/coverage/lcov-report/core/api/hooks/index.html +172 -172
- 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 +104 -104
- 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 +121 -121
- package/coverage/lcov-report/core/api/services/devices/index.html +28 -28
- 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 +34 -34
- 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 +414 -414
- 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 +178 -178
- package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +1 -1
- package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +25 -7
- 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 +3403 -3724
- package/coverage/map/api/hooks/hooks.catalog.js.html +1 -1
- package/coverage/map/api/hooks/hooks.query.js.html +25 -7
- 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/form/KFileField.vue +11 -40
- package/lib/core/client/components/input/KOptionsChooser.vue +2 -2
- package/lib/core/client/i18n/core_en.json +6 -1
- package/lib/core/client/i18n/core_fr.json +6 -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/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/map/api/hooks/hooks.query.js +7 -2
- 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/KMeasureTool.vue +340 -0
- package/lib/map/client/components/KTimeline.vue +0 -1
- package/lib/map/client/components/catalog/KImportLayer.vue +8 -35
- package/lib/map/client/components/catalog/KLayersSelector.vue +5 -3
- package/lib/map/client/components/widget/KTimeSeries.vue +81 -3
- package/lib/map/client/i18n/map_en.json +41 -4
- package/lib/map/client/i18n/map_fr.json +41 -4
- package/lib/map/client/init.js +6 -1
- package/lib/map/client/init.js.map +1 -1
- package/lib/map/client/leaflet/MaskLayer.js +9 -0
- 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.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 +45 -6
- 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 +4 -1
- package/lib/map/client/mixins/map/mixin.geojson-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 +2 -2
- 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 +2 -2
- 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 -2
- package/.nyc_output/a762cb58-70dc-4d39-ab69-928635affa98.json +0 -1
- package/.nyc_output/dbeb2602-0ac2-4e66-978b-0d29548359ca.json +0 -1
- package/.nyc_output/e47d1e4c-2fff-4dcb-908f-d3081162547c.json +0 -1
- package/.nyc_output/processinfo/2e74ca23-8cf0-4161-9536-f71c2a1a74bb.json +0 -1
- package/.nyc_output/processinfo/81d21e46-766a-46bc-b1b7-143ca577347a.json +0 -1
- package/.nyc_output/processinfo/aaf3ebbb-f895-4d7b-9255-bc5dee832570.json +0 -1
- package/.nyc_output/processinfo/dbeb2602-0ac2-4e66-978b-0d29548359ca.json +0 -1
- package/.nyc_output/processinfo/e47d1e4c-2fff-4dcb-908f-d3081162547c.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
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>0/71</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">0% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>0/36</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">0% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>0/9</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>0/68</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
56
|
</p>
|
|
57
57
|
</div>
|
|
58
|
-
<div class='status-line
|
|
58
|
+
<div class='status-line low'></div>
|
|
59
59
|
<pre><table class="coverage">
|
|
60
60
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
61
61
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -195,23 +195,23 @@
|
|
|
195
195
|
<a name='L136'></a><a href='#L136'>136</a>
|
|
196
196
|
<a name='L137'></a><a href='#L137'>137</a>
|
|
197
197
|
<a name='L138'></a><a href='#L138'>138</a>
|
|
198
|
-
<a name='L139'></a><a href='#L139'>139</a></td><td class="line-coverage quiet"><span class="cline-any cline-
|
|
199
|
-
<span class="cline-any cline-yes">1x</span>
|
|
200
|
-
<span class="cline-any cline-yes">1x</span>
|
|
198
|
+
<a name='L139'></a><a href='#L139'>139</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
201
199
|
<span class="cline-any cline-neutral"> </span>
|
|
202
|
-
<span class="cline-any cline-yes">1x</span>
|
|
203
200
|
<span class="cline-any cline-neutral"> </span>
|
|
204
201
|
<span class="cline-any cline-neutral"> </span>
|
|
205
|
-
<span class="cline-any cline-
|
|
202
|
+
<span class="cline-any cline-no"> </span>
|
|
203
|
+
<span class="cline-any cline-neutral"> </span>
|
|
204
|
+
<span class="cline-any cline-neutral"> </span>
|
|
205
|
+
<span class="cline-any cline-no"> </span>
|
|
206
206
|
<span class="cline-any cline-neutral"> </span>
|
|
207
207
|
<span class="cline-any cline-neutral"> </span>
|
|
208
208
|
<span class="cline-any cline-neutral"> </span>
|
|
209
|
-
<span class="cline-any cline-
|
|
209
|
+
<span class="cline-any cline-no"> </span>
|
|
210
210
|
<span class="cline-any cline-no"> </span>
|
|
211
211
|
<span class="cline-any cline-neutral"> </span>
|
|
212
212
|
<span class="cline-any cline-neutral"> </span>
|
|
213
213
|
<span class="cline-any cline-neutral"> </span>
|
|
214
|
-
<span class="cline-any cline-
|
|
214
|
+
<span class="cline-any cline-no"> </span>
|
|
215
215
|
<span class="cline-any cline-neutral"> </span>
|
|
216
216
|
<span class="cline-any cline-neutral"> </span>
|
|
217
217
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -223,39 +223,39 @@
|
|
|
223
223
|
<span class="cline-any cline-neutral"> </span>
|
|
224
224
|
<span class="cline-any cline-neutral"> </span>
|
|
225
225
|
<span class="cline-any cline-neutral"> </span>
|
|
226
|
-
<span class="cline-any cline-
|
|
226
|
+
<span class="cline-any cline-no"> </span>
|
|
227
227
|
<span class="cline-any cline-no"> </span>
|
|
228
228
|
<span class="cline-any cline-neutral"> </span>
|
|
229
|
-
<span class="cline-any cline-
|
|
230
|
-
<span class="cline-any cline-
|
|
231
|
-
<span class="cline-any cline-
|
|
232
|
-
<span class="cline-any cline-
|
|
233
|
-
<span class="cline-any cline-
|
|
229
|
+
<span class="cline-any cline-no"> </span>
|
|
230
|
+
<span class="cline-any cline-no"> </span>
|
|
231
|
+
<span class="cline-any cline-no"> </span>
|
|
232
|
+
<span class="cline-any cline-no"> </span>
|
|
233
|
+
<span class="cline-any cline-no"> </span>
|
|
234
234
|
<span class="cline-any cline-neutral"> </span>
|
|
235
|
-
<span class="cline-any cline-
|
|
235
|
+
<span class="cline-any cline-no"> </span>
|
|
236
236
|
<span class="cline-any cline-neutral"> </span>
|
|
237
237
|
<span class="cline-any cline-neutral"> </span>
|
|
238
|
-
<span class="cline-any cline-
|
|
238
|
+
<span class="cline-any cline-no"> </span>
|
|
239
239
|
<span class="cline-any cline-no"> </span>
|
|
240
240
|
<span class="cline-any cline-neutral"> </span>
|
|
241
|
-
<span class="cline-any cline-
|
|
242
|
-
<span class="cline-any cline-
|
|
243
|
-
<span class="cline-any cline-
|
|
244
|
-
<span class="cline-any cline-
|
|
245
|
-
<span class="cline-any cline-
|
|
241
|
+
<span class="cline-any cline-no"> </span>
|
|
242
|
+
<span class="cline-any cline-no"> </span>
|
|
243
|
+
<span class="cline-any cline-no"> </span>
|
|
244
|
+
<span class="cline-any cline-no"> </span>
|
|
245
|
+
<span class="cline-any cline-no"> </span>
|
|
246
246
|
<span class="cline-any cline-neutral"> </span>
|
|
247
|
-
<span class="cline-any cline-
|
|
247
|
+
<span class="cline-any cline-no"> </span>
|
|
248
248
|
<span class="cline-any cline-no"> </span>
|
|
249
249
|
<span class="cline-any cline-neutral"> </span>
|
|
250
|
-
<span class="cline-any cline-
|
|
250
|
+
<span class="cline-any cline-no"> </span>
|
|
251
251
|
<span class="cline-any cline-neutral"> </span>
|
|
252
|
-
<span class="cline-any cline-
|
|
253
|
-
<span class="cline-any cline-
|
|
252
|
+
<span class="cline-any cline-no"> </span>
|
|
253
|
+
<span class="cline-any cline-no"> </span>
|
|
254
254
|
<span class="cline-any cline-neutral"> </span>
|
|
255
255
|
<span class="cline-any cline-no"> </span>
|
|
256
256
|
<span class="cline-any cline-neutral"> </span>
|
|
257
257
|
<span class="cline-any cline-neutral"> </span>
|
|
258
|
-
<span class="cline-any cline-
|
|
258
|
+
<span class="cline-any cline-no"> </span>
|
|
259
259
|
<span class="cline-any cline-neutral"> </span>
|
|
260
260
|
<span class="cline-any cline-neutral"> </span>
|
|
261
261
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -263,30 +263,30 @@
|
|
|
263
263
|
<span class="cline-any cline-neutral"> </span>
|
|
264
264
|
<span class="cline-any cline-neutral"> </span>
|
|
265
265
|
<span class="cline-any cline-neutral"> </span>
|
|
266
|
-
<span class="cline-any cline-
|
|
267
|
-
<span class="cline-any cline-
|
|
266
|
+
<span class="cline-any cline-no"> </span>
|
|
267
|
+
<span class="cline-any cline-no"> </span>
|
|
268
268
|
<span class="cline-any cline-neutral"> </span>
|
|
269
269
|
<span class="cline-any cline-neutral"> </span>
|
|
270
270
|
<span class="cline-any cline-neutral"> </span>
|
|
271
|
-
<span class="cline-any cline-
|
|
271
|
+
<span class="cline-any cline-no"> </span>
|
|
272
272
|
<span class="cline-any cline-no"> </span>
|
|
273
273
|
<span class="cline-any cline-neutral"> </span>
|
|
274
274
|
<span class="cline-any cline-neutral"> </span>
|
|
275
|
-
<span class="cline-any cline-
|
|
276
|
-
<span class="cline-any cline-
|
|
277
|
-
<span class="cline-any cline-
|
|
278
|
-
<span class="cline-any cline-
|
|
279
|
-
<span class="cline-any cline-
|
|
280
|
-
<span class="cline-any cline-
|
|
281
|
-
<span class="cline-any cline-
|
|
275
|
+
<span class="cline-any cline-no"> </span>
|
|
276
|
+
<span class="cline-any cline-no"> </span>
|
|
277
|
+
<span class="cline-any cline-no"> </span>
|
|
278
|
+
<span class="cline-any cline-no"> </span>
|
|
279
|
+
<span class="cline-any cline-no"> </span>
|
|
280
|
+
<span class="cline-any cline-no"> </span>
|
|
281
|
+
<span class="cline-any cline-no"> </span>
|
|
282
282
|
<span class="cline-any cline-neutral"> </span>
|
|
283
283
|
<span class="cline-any cline-neutral"> </span>
|
|
284
|
-
<span class="cline-any cline-
|
|
285
|
-
<span class="cline-any cline-
|
|
286
|
-
<span class="cline-any cline-
|
|
284
|
+
<span class="cline-any cline-no"> </span>
|
|
285
|
+
<span class="cline-any cline-no"> </span>
|
|
286
|
+
<span class="cline-any cline-no"> </span>
|
|
287
287
|
<span class="cline-any cline-neutral"> </span>
|
|
288
|
-
<span class="cline-any cline-
|
|
289
|
-
<span class="cline-any cline-
|
|
288
|
+
<span class="cline-any cline-no"> </span>
|
|
289
|
+
<span class="cline-any cline-no"> </span>
|
|
290
290
|
<span class="cline-any cline-neutral"> </span>
|
|
291
291
|
<span class="cline-any cline-neutral"> </span>
|
|
292
292
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -294,7 +294,7 @@
|
|
|
294
294
|
<span class="cline-any cline-no"> </span>
|
|
295
295
|
<span class="cline-any cline-neutral"> </span>
|
|
296
296
|
<span class="cline-any cline-neutral"> </span>
|
|
297
|
-
<span class="cline-any cline-
|
|
297
|
+
<span class="cline-any cline-no"> </span>
|
|
298
298
|
<span class="cline-any cline-neutral"> </span>
|
|
299
299
|
<span class="cline-any cline-neutral"> </span>
|
|
300
300
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -302,8 +302,8 @@
|
|
|
302
302
|
<span class="cline-any cline-neutral"> </span>
|
|
303
303
|
<span class="cline-any cline-neutral"> </span>
|
|
304
304
|
<span class="cline-any cline-neutral"> </span>
|
|
305
|
-
<span class="cline-any cline-
|
|
306
|
-
<span class="cline-any cline-
|
|
305
|
+
<span class="cline-any cline-no"> </span>
|
|
306
|
+
<span class="cline-any cline-no"> </span>
|
|
307
307
|
<span class="cline-any cline-neutral"> </span>
|
|
308
308
|
<span class="cline-any cline-neutral"> </span>
|
|
309
309
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -337,63 +337,63 @@
|
|
|
337
337
|
import { populateObject, unpopulateObject } from './hooks.query'
|
|
338
338
|
import makeDebug from 'debug'
|
|
339
339
|
|
|
340
|
-
const debug = makeDebug('kdk:core:storage:hooks')
|
|
340
|
+
const debug = <span class="cstat-no" title="statement not covered" >makeDebug('kdk:core:storage:hooks')</span>
|
|
341
341
|
|
|
342
|
-
function isAttachmentEqual (file1, file2) {
|
|
343
|
-
return file1._id === file2._id
|
|
342
|
+
function <span class="fstat-no" title="function not covered" >isAttachmentEqual </span>(file1, file2) {
|
|
343
|
+
<span class="cstat-no" title="statement not covered" > return file1._id === file2._id</span>
|
|
344
344
|
}
|
|
345
345
|
|
|
346
|
-
export function populateAttachmentResource (hook) {
|
|
347
|
-
|
|
348
|
-
<span class="cstat-no" title="statement not covered" > throw
|
|
346
|
+
export function <span class="fstat-no" title="function not covered" >populateAttachmentResource </span>(hook) {
|
|
347
|
+
<span class="cstat-no" title="statement not covered" > if (hook.type !== 'before') {</span>
|
|
348
|
+
<span class="cstat-no" title="statement not covered" > throw new Error('The \'populateStorageResource\' hook should only be used as a \'before\' hook.')</span>
|
|
349
349
|
}
|
|
350
350
|
|
|
351
351
|
// Avoid populating any target resource when resource parameters are not present
|
|
352
|
-
return populateObject({ serviceField: 'resourcesService', idField: 'resource', throwOnNotFound: false })(hook)
|
|
352
|
+
<span class="cstat-no" title="statement not covered" > return populateObject({ serviceField: 'resourcesService', idField: 'resource', throwOnNotFound: false })(hook)</span>
|
|
353
353
|
}
|
|
354
354
|
|
|
355
|
-
export function <span class="fstat-no" title="function not covered" >unpopulateAttachmentResource
|
|
355
|
+
export function <span class="fstat-no" title="function not covered" >unpopulateAttachmentResource </span>(hook) {
|
|
356
356
|
<span class="cstat-no" title="statement not covered" > if (hook.type !== 'after') {</span>
|
|
357
|
-
<span class="cstat-no" title="statement not covered" > throw
|
|
357
|
+
<span class="cstat-no" title="statement not covered" > throw new Error('The \'unpopulateAttachmentResource\' hook should only be used as a \'after\' hook.')</span>
|
|
358
358
|
}
|
|
359
359
|
|
|
360
|
-
<span class="cstat-no" title="statement not covered" > return
|
|
360
|
+
<span class="cstat-no" title="statement not covered" > return unpopulateObject({ serviceField: 'resourcesService', idField: 'resource' })(hook)</span>
|
|
361
361
|
}
|
|
362
362
|
|
|
363
|
-
export async function attachToResource (hook) {
|
|
364
|
-
|
|
365
|
-
<span class="cstat-no" title="statement not covered" > throw
|
|
363
|
+
export async function <span class="fstat-no" title="function not covered" >attachToResource </span>(hook) {
|
|
364
|
+
<span class="cstat-no" title="statement not covered" > if (hook.type !== 'after') {</span>
|
|
365
|
+
<span class="cstat-no" title="statement not covered" > throw new Error('The \'attachToResource\' hook should only be used as a \'after\' hook.')</span>
|
|
366
366
|
}
|
|
367
|
-
const data = hook.data
|
|
368
|
-
const params = hook.params
|
|
369
|
-
const query = params.query
|
|
370
|
-
const file = hook.result
|
|
371
|
-
const attachmentField = _.get(data, 'field') || _.get(query, 'field') || 'attachments'
|
|
367
|
+
const data = <span class="cstat-no" title="statement not covered" >hook.data</span>
|
|
368
|
+
const params = <span class="cstat-no" title="statement not covered" >hook.params</span>
|
|
369
|
+
const query = <span class="cstat-no" title="statement not covered" >params.query</span>
|
|
370
|
+
const file = <span class="cstat-no" title="statement not covered" >hook.result</span>
|
|
371
|
+
const attachmentField = <span class="cstat-no" title="statement not covered" >_.get(data, 'field') || _.get(query, 'field') || 'attachments'</span>
|
|
372
372
|
// By default attachments are stored in an array
|
|
373
|
-
let isArray = _.get(data, 'isArray') || _.get(query, 'isArray') || true
|
|
373
|
+
let isArray = <span class="cstat-no" title="statement not covered" >_.get(data, 'isArray') || _.get(query, 'isArray') || true</span>
|
|
374
374
|
// Take care that because file uploads might be submitted by external multipart form data middlewares
|
|
375
375
|
// all parameters types might be string
|
|
376
|
-
|
|
377
|
-
<span class="cstat-no" title="statement not covered" > isArray = (
|
|
376
|
+
<span class="cstat-no" title="statement not covered" > if (typeof (isArray) !== 'boolean') {</span>
|
|
377
|
+
<span class="cstat-no" title="statement not covered" > isArray = (isArray === 'true')</span>
|
|
378
378
|
}
|
|
379
|
-
const context = hook.service.context
|
|
380
|
-
const resourcesService = params.resourcesService
|
|
381
|
-
const resource = params.resource
|
|
382
|
-
let attachments = _.get(resource, attachmentField)
|
|
383
|
-
const attachment = Object.assign({ _id: file._id }, _.omit(file, ['uri']))
|
|
379
|
+
const context = <span class="cstat-no" title="statement not covered" >hook.service.context</span>
|
|
380
|
+
const resourcesService = <span class="cstat-no" title="statement not covered" >params.resourcesService</span>
|
|
381
|
+
const resource = <span class="cstat-no" title="statement not covered" >params.resource</span>
|
|
382
|
+
let attachments = <span class="cstat-no" title="statement not covered" >_.get(resource, attachmentField)</span>
|
|
383
|
+
const attachment = <span class="cstat-no" title="statement not covered" >Object.assign({ _id: file._id }, _.omit(file, ['uri']))</span>
|
|
384
384
|
// Add context because attachments might come from different ones on the same target object
|
|
385
|
-
|
|
386
|
-
<span class="cstat-no" title="statement not covered" > attachment.
|
|
385
|
+
<span class="cstat-no" title="statement not covered" > if (context) {</span>
|
|
386
|
+
<span class="cstat-no" title="statement not covered" > attachment.context = (typeof context === 'object' ? context._id.toString() : context.toString())</span>
|
|
387
387
|
}
|
|
388
|
-
|
|
388
|
+
<span class="cstat-no" title="statement not covered" > if (isArray) {</span>
|
|
389
389
|
// Initialize on first attachment
|
|
390
|
-
|
|
391
|
-
attachments.push(attachment)
|
|
390
|
+
<span class="cstat-no" title="statement not covered" > if (!attachments) <span class="cstat-no" title="statement not covered" >attachments = []</span></span>
|
|
391
|
+
<span class="cstat-no" title="statement not covered" > attachments.push(attachment)</span>
|
|
392
392
|
} else {
|
|
393
|
-
<span class="cstat-no" title="statement not covered" > attachments =
|
|
393
|
+
<span class="cstat-no" title="statement not covered" > attachments = attachment</span>
|
|
394
394
|
}
|
|
395
395
|
|
|
396
|
-
await resourcesService.patch(resource._id.toString(), {
|
|
396
|
+
<span class="cstat-no" title="statement not covered" > await resourcesService.patch(resource._id.toString(), {</span>
|
|
397
397
|
[attachmentField]: attachments
|
|
398
398
|
}, {
|
|
399
399
|
user: params.user,
|
|
@@ -401,38 +401,38 @@ export async function attachToResource (hook) {
|
|
|
401
401
|
// Delete own parameters from query otherwise it will be used to filter items
|
|
402
402
|
query: _.omit(query, ['resource', 'resourcesService'])
|
|
403
403
|
})
|
|
404
|
-
debug('Attached file on resource ' + resource._id.toString(), attachment)
|
|
405
|
-
return hook
|
|
404
|
+
<span class="cstat-no" title="statement not covered" > debug('Attached file on resource ' + resource._id.toString(), attachment)</span>
|
|
405
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
406
406
|
}
|
|
407
407
|
|
|
408
|
-
export async function detachFromResource (hook) {
|
|
409
|
-
|
|
410
|
-
<span class="cstat-no" title="statement not covered" > throw
|
|
408
|
+
export async function <span class="fstat-no" title="function not covered" >detachFromResource </span>(hook) {
|
|
409
|
+
<span class="cstat-no" title="statement not covered" > if (hook.type !== 'after') {</span>
|
|
410
|
+
<span class="cstat-no" title="statement not covered" > throw new Error('The \'detachFromResource\' hook should only be used as a \'after\' hook.')</span>
|
|
411
411
|
}
|
|
412
412
|
|
|
413
|
-
const params = hook.params
|
|
414
|
-
const query = params.query
|
|
415
|
-
const file = hook.result
|
|
416
|
-
const attachmentField = _.get(query, 'field') || 'attachments'
|
|
417
|
-
const resourcesService = params.resourcesService
|
|
418
|
-
const resource = params.resource
|
|
419
|
-
let attachments = _.get(resource, attachmentField)
|
|
413
|
+
const params = <span class="cstat-no" title="statement not covered" >hook.params</span>
|
|
414
|
+
const query = <span class="cstat-no" title="statement not covered" >params.query</span>
|
|
415
|
+
const file = <span class="cstat-no" title="statement not covered" >hook.result</span>
|
|
416
|
+
const attachmentField = <span class="cstat-no" title="statement not covered" >_.get(query, 'field') || 'attachments'</span>
|
|
417
|
+
const resourcesService = <span class="cstat-no" title="statement not covered" >params.resourcesService</span>
|
|
418
|
+
const resource = <span class="cstat-no" title="statement not covered" >params.resource</span>
|
|
419
|
+
let attachments = <span class="cstat-no" title="statement not covered" >_.get(resource, attachmentField)</span>
|
|
420
420
|
let attachment
|
|
421
421
|
// List of attachments
|
|
422
|
-
|
|
423
|
-
const attachmentIndex = _.findIndex(attachments,
|
|
424
|
-
|
|
422
|
+
<span class="cstat-no" title="statement not covered" > if (Array.isArray(attachments)) {</span>
|
|
423
|
+
const attachmentIndex = <span class="cstat-no" title="statement not covered" >_.findIndex(attachments, <span class="fstat-no" title="function not covered" >at</span>tachment => <span class="cstat-no" title="statement not covered" >isAttachmentEqual(attachment, file))</span></span>
|
|
424
|
+
<span class="cstat-no" title="statement not covered" > if (attachmentIndex >= 0) {</span>
|
|
425
425
|
// Keep track of it for logging
|
|
426
|
-
attachment = attachments[attachmentIndex]
|
|
427
|
-
_.pullAt(attachments, attachmentIndex)
|
|
426
|
+
<span class="cstat-no" title="statement not covered" > attachment = attachments[attachmentIndex]</span>
|
|
427
|
+
<span class="cstat-no" title="statement not covered" > _.pullAt(attachments, attachmentIndex)</span>
|
|
428
428
|
}
|
|
429
429
|
} else {
|
|
430
430
|
// Single attachment object
|
|
431
|
-
<span class="cstat-no" title="statement not covered" > attachment =
|
|
432
|
-
<span class="cstat-no" title="statement not covered" > attachments =
|
|
431
|
+
<span class="cstat-no" title="statement not covered" > attachment = attachments</span>
|
|
432
|
+
<span class="cstat-no" title="statement not covered" > attachments = null</span>
|
|
433
433
|
}
|
|
434
434
|
|
|
435
|
-
await resourcesService.patch(resource._id.toString(), {
|
|
435
|
+
<span class="cstat-no" title="statement not covered" > await resourcesService.patch(resource._id.toString(), {</span>
|
|
436
436
|
[attachmentField]: attachments
|
|
437
437
|
}, {
|
|
438
438
|
user: params.user,
|
|
@@ -440,35 +440,35 @@ export async function detachFromResource (hook) {
|
|
|
440
440
|
// Delete own parameters from query otherwise it will be used to filter items
|
|
441
441
|
query: _.omit(query, ['resource', 'resourcesService'])
|
|
442
442
|
})
|
|
443
|
-
debug('Detached file on resource ' + resource._id.toString(), attachment)
|
|
444
|
-
return hook
|
|
443
|
+
<span class="cstat-no" title="statement not covered" > debug('Detached file on resource ' + resource._id.toString(), attachment)</span>
|
|
444
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
445
445
|
}
|
|
446
446
|
|
|
447
|
-
export function <span class="fstat-no" title="function not covered" >removeAttachments
|
|
448
|
-
<span class="cstat-no" title="statement not covered"
|
|
447
|
+
export function <span class="fstat-no" title="function not covered" >removeAttachments </span>(attachmentField) {
|
|
448
|
+
<span class="cstat-no" title="statement not covered" > return <span class="fstat-no" title="function not covered" >as</span>ync function (hook) {</span>
|
|
449
449
|
const context = <span class="cstat-no" title="statement not covered" >hook.service.context</span>
|
|
450
|
-
const storageService = <span class="cstat-no" title="statement not covered" >hook.
|
|
451
|
-
<span class="cstat-no" title="statement not covered" > if (!storageService) <span class="cstat-no" title="statement not covered" >return
|
|
450
|
+
const storageService = <span class="cstat-no" title="statement not covered" >hook.app.getService('storage', context)</span>
|
|
451
|
+
<span class="cstat-no" title="statement not covered" > if (!storageService) <span class="cstat-no" title="statement not covered" >return Promise.reject(new Error('No valid context found to retrieve storage service for initiator service ' + hook.service.name))</span></span>
|
|
452
452
|
const resource = <span class="cstat-no" title="statement not covered" >hook.result</span>
|
|
453
|
-
const attachments = <span class="cstat-no" title="statement not covered" >_.
|
|
453
|
+
const attachments = <span class="cstat-no" title="statement not covered" >_.get(resource, attachmentField)</span>
|
|
454
454
|
// Process with each attachment
|
|
455
455
|
<span class="cstat-no" title="statement not covered" > if (attachments) {</span>
|
|
456
|
-
<span class="cstat-no" title="statement not covered" > debug('
|
|
456
|
+
<span class="cstat-no" title="statement not covered" > debug('Removing attachments for resource ' + resource._id.toString(), attachments)</span>
|
|
457
457
|
<span class="cstat-no" title="statement not covered" > if (Array.isArray(attachments)) {</span>
|
|
458
458
|
const removePromises = <span class="cstat-no" title="statement not covered" >[]</span>
|
|
459
|
-
<span class="cstat-no" title="statement not covered" > attachments.
|
|
460
|
-
<span class="cstat-no" title="statement not covered" > removePromises.
|
|
459
|
+
<span class="cstat-no" title="statement not covered" > attachments.forEach(<span class="fstat-no" title="function not covered" >at</span>tachment => {</span>
|
|
460
|
+
<span class="cstat-no" title="statement not covered" > removePromises.push(storageService.remove(attachment._id))</span>
|
|
461
461
|
// Thumbnail as well
|
|
462
|
-
<span class="cstat-no" title="statement not covered" > removePromises.
|
|
462
|
+
<span class="cstat-no" title="statement not covered" > removePromises.push(storageService.remove(attachment._id + '.thumbnail'))</span>
|
|
463
463
|
})
|
|
464
|
-
<span class="cstat-no" title="statement not covered" > await
|
|
464
|
+
<span class="cstat-no" title="statement not covered" > await Promise.all(removePromises)</span>
|
|
465
465
|
} else {
|
|
466
|
-
<span class="cstat-no" title="statement not covered" > await
|
|
466
|
+
<span class="cstat-no" title="statement not covered" > await storageService.remove(attachments._id)</span>
|
|
467
467
|
// Thumbnail as well
|
|
468
|
-
<span class="cstat-no" title="statement not covered" > await
|
|
468
|
+
<span class="cstat-no" title="statement not covered" > await storageService.remove(attachments._id + '.thumbnail')</span>
|
|
469
469
|
}
|
|
470
470
|
}
|
|
471
|
-
<span class="cstat-no" title="statement not covered" > return
|
|
471
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
472
472
|
}
|
|
473
473
|
}
|
|
474
474
|
</pre></td></tr></table></pre>
|
|
@@ -478,7 +478,7 @@ export function <span class="fstat-no" title="function not covered" >removeAttac
|
|
|
478
478
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
479
479
|
Code coverage generated by
|
|
480
480
|
<a href="https://istanbul.js.org/" target="_blank">istanbul</a>
|
|
481
|
-
at
|
|
481
|
+
at Fri Jan 07 2022 19:29:57 GMT+0100 (GMT+01:00)
|
|
482
482
|
</div>
|
|
483
483
|
</div>
|
|
484
484
|
<script src="../../../prettify.js"></script>
|