@kalisio/kdk 2.4.0 → 2.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/core/api/application.js +12 -12
- package/core/api/authentication.js +51 -7
- package/core/api/hooks/hooks.authentication.js +1 -59
- package/core/api/hooks/hooks.authorisations.js +8 -102
- package/core/api/hooks/hooks.model.js +4 -0
- package/core/api/hooks/hooks.push.js +18 -14
- package/core/api/hooks/hooks.users.js +0 -91
- package/core/api/hooks/index.js +0 -2
- package/core/api/services/account/account.service.js +1 -1
- package/core/api/services/authorisations/authorisations.service.js +28 -29
- package/core/api/services/index.js +38 -50
- package/core/api/services/messages/messages.hooks.js +4 -3
- package/core/api/services/users/users.service.js +5 -0
- package/core/client/api.js +182 -71
- package/core/client/broadcaster.js +20 -0
- package/core/client/capabilities.js +17 -7
- package/core/client/components/KActivity.vue +29 -34
- package/core/client/components/KAvatar.vue +0 -6
- package/core/client/components/KChip.vue +142 -39
- package/core/client/components/KContent.vue +13 -32
- package/core/client/components/KDialog.vue +29 -8
- package/core/client/components/KEditor.vue +120 -0
- package/core/client/components/KFollower.vue +75 -0
- package/core/client/components/KLogo.vue +2 -3
- package/core/client/components/KModal.vue +30 -10
- package/core/client/components/KSponsor.vue +1 -1
- package/core/client/components/KTextArea.vue +2 -5
- package/core/client/components/account/KDeleteAccountManager.vue +1 -1
- package/core/client/components/account/KProfile.vue +52 -14
- package/core/client/components/account/KSubscription.vue +19 -9
- package/core/client/components/account/KSubscriptionsManager.vue +10 -11
- package/core/client/components/action/KAction.vue +44 -24
- package/core/client/components/action/KBugReportAction.vue +4 -5
- package/core/client/components/action/KToggleStickyVisibility.vue +41 -0
- package/core/client/components/action/KToggleWidgetVisibility.vue +41 -0
- package/core/client/components/app/KPlatform.vue +122 -35
- package/core/client/components/app/KRequestProgressBar.vue +59 -0
- package/core/client/components/app/KSettings.vue +13 -2
- package/core/client/components/app/KTour.vue +2 -2
- package/core/client/components/chart/KTimeSeriesChart.vue +11 -3
- package/core/client/components/collection/KCard.vue +27 -33
- package/core/client/components/collection/KCardSection.vue +3 -23
- package/core/client/components/collection/KColumn.vue +0 -5
- package/core/client/components/collection/KDescriptionCardSection.vue +10 -5
- package/core/client/components/collection/KFilterView.vue +15 -0
- package/core/client/components/collection/KGrid.vue +4 -9
- package/core/client/components/collection/KHistory.vue +0 -5
- package/core/client/components/collection/KHistoryEntry.vue +0 -2
- package/core/client/components/collection/KItem.vue +1 -2
- package/core/client/components/collection/KSearchFilterControl.vue +139 -0
- package/core/client/components/collection/KTable.vue +1 -4
- package/core/client/components/collection/KTagsFilterControl.vue +70 -0
- package/core/client/components/collection/KTagsFilterView.vue +61 -0
- package/core/client/components/collection/KTimeFilterControl.vue +40 -0
- package/core/client/components/collection/KTimeFilterView.vue +106 -0
- package/core/client/components/collection/KTimeLine.vue +18 -11
- package/core/client/components/document/KBrowser.vue +283 -0
- package/core/client/components/document/KCsv.vue +52 -0
- package/core/client/components/document/KDocument.vue +19 -5
- package/core/client/components/document/KImage.vue +50 -19
- package/core/client/components/document/KMarkdown.vue +10 -2
- package/core/client/components/document/KUploader.vue +126 -0
- package/core/client/components/document/KVideo.vue +39 -0
- package/core/client/components/form/KDateField.vue +70 -0
- package/core/client/components/form/KDateTimeRangeField.vue +6 -17
- package/core/client/components/form/KDatetimeField.vue +6 -13
- package/core/client/components/form/KForm.vue +8 -8
- package/core/client/components/form/KOptionsField.vue +2 -0
- package/core/client/components/form/KResolutionField.vue +54 -52
- package/core/client/components/form/KSelectField.vue +27 -13
- package/core/client/components/form/KTextareaField.vue +23 -5
- package/core/client/components/graphics/KIcon.vue +64 -0
- package/core/client/components/index.js +1 -3
- package/core/client/components/input/KColorPicker.vue +70 -0
- package/core/client/components/input/KIconPicker.vue +188 -0
- package/core/client/components/input/KShapePicker.vue +81 -0
- package/core/client/components/input/index.js +7 -1
- package/core/client/components/layout/KFab.vue +1 -1
- package/core/client/components/layout/KLayout.vue +14 -2
- package/core/client/components/layout/KOpener.vue +9 -11
- package/core/client/components/layout/KPage.vue +31 -17
- package/core/client/components/layout/KWindow.vue +34 -18
- package/core/client/components/menu/KMenu.vue +52 -36
- package/core/client/components/menu/KSubMenu.vue +105 -0
- package/core/client/components/messages/KMessageCard.vue +207 -0
- package/core/client/components/messages/KMessageComposer.vue +199 -0
- package/core/client/components/messages/KMessagesTimeLine.vue +137 -0
- package/core/client/components/messages/index.js +7 -0
- package/core/client/components/screen/KErrorScreen.vue +2 -3
- package/core/client/components/screen/KLogoutScreen.vue +3 -1
- package/core/client/components/screen/KOAuthLoginScreen.vue +15 -0
- package/core/client/components/screen/KOAuthLogoutScreen.vue +33 -0
- package/core/client/components/screen/KUnauthorizedScreen.vue +16 -0
- package/core/client/components/time/KAbsoluteTimeRange.vue +7 -14
- package/core/client/components/time/KDate.vue +56 -26
- package/core/client/components/time/KDateTime.vue +93 -37
- package/core/client/components/time/KDateTimeRange.vue +197 -52
- package/core/client/components/time/KTime.vue +56 -26
- package/core/client/composables/activity.js +40 -30
- package/core/client/composables/{counter.js → collection-counter.js} +2 -4
- package/core/client/composables/collection-filter.js +111 -0
- package/core/client/composables/collection-timerange.js +56 -0
- package/core/client/composables/collection.js +13 -11
- package/core/client/composables/context.js +92 -0
- package/core/client/composables/errors.js +83 -0
- package/core/client/composables/index.js +5 -1
- package/core/client/composables/layout.js +14 -11
- package/core/client/composables/messages.js +4 -4
- package/core/client/composables/pwa.js +20 -27
- package/core/client/composables/schema.js +1 -1
- package/core/client/composables/screen.js +21 -9
- package/core/client/composables/selection.js +16 -4
- package/core/client/composables/session.js +13 -7
- package/core/client/composables/store.js +2 -1
- package/core/client/context.js +38 -0
- package/core/client/directives/v-hover.js +7 -4
- package/core/client/document.js +43 -15
- package/core/client/events.js +2 -2
- package/core/client/exporter.js +5 -4
- package/core/client/filter.js +1 -8
- package/core/client/guards.js +3 -3
- package/core/client/hooks/hooks.logger.js +1 -1
- package/core/client/hooks/hooks.offline.js +32 -0
- package/core/client/hooks/index.js +2 -1
- package/core/client/i18n/core_en.json +95 -268
- package/core/client/i18n/core_fr.json +181 -353
- package/core/client/index.js +22 -8
- package/core/client/layout.js +64 -25
- package/core/client/local-cache.js +67 -0
- package/core/client/local-storage.js +6 -2
- package/core/client/mixins/index.js +0 -1
- package/core/client/mixins/mixin.base-activity.js +22 -10
- package/core/client/mixins/mixin.base-editor.js +1 -1
- package/core/client/mixins/mixin.base-field.js +10 -1
- package/core/client/mixins/mixin.base-item.js +14 -11
- package/core/client/mixins/mixin.service.js +1 -5
- package/core/client/platform.js +44 -0
- package/core/client/readers/reader.blob.js +3 -3
- package/core/client/readers/reader.csv.js +2 -2
- package/core/client/readers/reader.json.js +2 -2
- package/core/client/services/index.js +7 -11
- package/core/client/storage.js +43 -8
- package/core/client/template-context.js +14 -14
- package/core/client/time.js +3 -3
- package/core/client/units.js +7 -4
- package/core/client/utils/index.js +6 -5
- package/core/client/utils/utils.collection.js +71 -0
- package/core/client/utils/utils.colors.js +29 -8
- package/core/client/utils/utils.content.js +14 -14
- package/core/client/utils/utils.files.js +17 -0
- package/core/client/utils/utils.items.js +4 -0
- package/core/client/utils/utils.math.js +18 -1
- package/core/client/utils/utils.push.js +22 -13
- package/core/client/utils/utils.screen.js +6 -2
- package/core/client/utils/utils.services.js +42 -0
- package/core/client/utils/utils.session.js +48 -12
- package/core/client/utils/utils.shapes.js +15 -11
- package/core/common/permissions.js +3 -108
- package/core/common/schemas/messages.update.json +16 -0
- package/core/common/schemas/settings.update.json +27 -8
- package/core/common/utils.js +2 -0
- package/core/common/utils.offline.js +38 -0
- package/coverage/core/api/application.js.html +296 -296
- package/coverage/core/api/authentication.js.html +206 -74
- package/coverage/core/api/db.js.html +61 -61
- package/coverage/core/api/hooks/hooks.authentication.js.html +15 -189
- package/coverage/core/api/hooks/hooks.authorisations.js.html +180 -462
- package/coverage/core/api/hooks/hooks.groups.js.html +1 -1
- package/coverage/core/api/hooks/hooks.logger.js.html +16 -16
- package/coverage/core/api/hooks/hooks.model.js.html +69 -57
- package/coverage/core/api/hooks/hooks.organisations.js.html +1 -1
- package/coverage/core/api/hooks/hooks.push.js.html +58 -46
- package/coverage/core/api/hooks/hooks.query.js.html +142 -142
- package/coverage/core/api/hooks/hooks.schemas.js.html +1 -1
- package/coverage/core/api/hooks/hooks.service.js.html +1 -1
- package/coverage/core/api/hooks/hooks.storage.js.html +1 -1
- package/coverage/core/api/hooks/hooks.users.js.html +54 -327
- package/coverage/core/api/hooks/index.html +64 -94
- package/coverage/core/api/hooks/index.js.html +4 -10
- package/coverage/core/api/index.html +41 -56
- package/coverage/core/api/index.js.html +1 -1
- package/coverage/core/api/marshall.js.html +9 -9
- package/coverage/core/api/models/groups.model.mongodb.js.html +1 -1
- package/coverage/core/api/models/index.html +13 -58
- package/coverage/core/api/models/messages.model.mongodb.js.html +35 -35
- package/coverage/core/api/models/organisations.model.mongodb.js.html +3 -3
- package/coverage/core/api/models/tags.model.mongodb.js.html +1 -1
- package/coverage/core/api/models/users.model.mongodb.js.html +1 -1
- package/coverage/core/api/services/account/account.hooks.js.html +1 -1
- package/coverage/core/api/services/account/account.service.js.html +67 -67
- package/coverage/core/api/services/account/index.html +16 -16
- package/coverage/core/api/services/authorisations/authorisations.hooks.js.html +1 -1
- package/coverage/core/api/services/authorisations/authorisations.service.js.html +141 -144
- package/coverage/core/api/services/authorisations/index.html +19 -19
- package/coverage/core/api/services/databases/databases.hooks.js.html +82 -82
- package/coverage/core/api/services/databases/databases.service.js.html +20 -20
- package/coverage/core/api/services/databases/index.html +32 -32
- package/coverage/core/api/services/groups/groups.hooks.js.html +1 -1
- package/coverage/core/api/services/groups/index.html +1 -1
- package/coverage/core/api/services/import-export/import-export.hooks.js.html +1 -1
- package/coverage/core/api/services/import-export/import-export.service.js.html +1 -1
- package/coverage/core/api/services/import-export/index.html +1 -1
- package/coverage/core/api/services/index.html +21 -21
- package/coverage/core/api/services/index.js.html +118 -154
- package/coverage/core/api/services/mailer/index.html +1 -1
- package/coverage/core/api/services/mailer/mailer.hooks.js.html +1 -1
- package/coverage/core/api/services/mailer/mailer.service.js.html +1 -1
- package/coverage/core/api/services/messages/index.html +21 -21
- package/coverage/core/api/services/messages/messages.hooks.js.html +89 -86
- package/coverage/core/api/services/organisations/index.html +1 -1
- package/coverage/core/api/services/organisations/organisations.hooks.js.html +1 -1
- package/coverage/core/api/services/organisations/organisations.service.js.html +23 -23
- package/coverage/core/api/services/push/index.html +1 -1
- package/coverage/core/api/services/push/push.hooks.js.html +1 -1
- package/coverage/core/api/services/push/push.service.js.html +1 -1
- package/coverage/core/api/services/storage/index.html +5 -5
- package/coverage/core/api/services/storage/storage.hooks.js.html +1 -1
- package/coverage/core/api/services/storage/storage.service.js.html +27 -27
- package/coverage/core/api/services/tags/index.html +1 -1
- package/coverage/core/api/services/tags/tags.hooks.js.html +1 -1
- package/coverage/core/api/services/users/index.html +23 -8
- package/coverage/core/api/services/users/users.hooks.js.html +1 -1
- package/coverage/core/api/services/users/users.service.js.html +100 -0
- package/coverage/core/api/utils.js.html +1 -1
- package/coverage/core/common/errors.js.html +1 -1
- package/coverage/core/common/index.html +42 -27
- package/coverage/core/common/index.js.html +1 -1
- package/coverage/core/common/permissions.js.html +195 -510
- package/coverage/core/common/schema.js.html +1 -1
- package/coverage/core/common/utils.js.html +12 -6
- package/coverage/core/common/utils.offline.js.html +199 -0
- package/coverage/index.html +142 -172
- package/coverage/lcov-report/core/api/application.js.html +296 -296
- package/coverage/lcov-report/core/api/authentication.js.html +206 -74
- package/coverage/lcov-report/core/api/db.js.html +61 -61
- package/coverage/lcov-report/core/api/hooks/hooks.authentication.js.html +15 -189
- package/coverage/lcov-report/core/api/hooks/hooks.authorisations.js.html +180 -462
- package/coverage/lcov-report/core/api/hooks/hooks.groups.js.html +1 -1
- package/coverage/lcov-report/core/api/hooks/hooks.logger.js.html +16 -16
- package/coverage/lcov-report/core/api/hooks/hooks.model.js.html +69 -57
- package/coverage/lcov-report/core/api/hooks/hooks.organisations.js.html +1 -1
- package/coverage/lcov-report/core/api/hooks/hooks.push.js.html +58 -46
- package/coverage/lcov-report/core/api/hooks/hooks.query.js.html +142 -142
- package/coverage/lcov-report/core/api/hooks/hooks.schemas.js.html +1 -1
- package/coverage/lcov-report/core/api/hooks/hooks.service.js.html +1 -1
- package/coverage/lcov-report/core/api/hooks/hooks.storage.js.html +1 -1
- package/coverage/lcov-report/core/api/hooks/hooks.users.js.html +54 -327
- package/coverage/lcov-report/core/api/hooks/index.html +64 -94
- package/coverage/lcov-report/core/api/hooks/index.js.html +4 -10
- package/coverage/lcov-report/core/api/index.html +41 -56
- package/coverage/lcov-report/core/api/index.js.html +1 -1
- package/coverage/lcov-report/core/api/marshall.js.html +9 -9
- package/coverage/lcov-report/core/api/models/groups.model.mongodb.js.html +1 -1
- package/coverage/lcov-report/core/api/models/index.html +13 -58
- package/coverage/lcov-report/core/api/models/messages.model.mongodb.js.html +35 -35
- package/coverage/lcov-report/core/api/models/organisations.model.mongodb.js.html +3 -3
- package/coverage/lcov-report/core/api/models/tags.model.mongodb.js.html +1 -1
- package/coverage/lcov-report/core/api/models/users.model.mongodb.js.html +1 -1
- package/coverage/lcov-report/core/api/services/account/account.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/account/account.service.js.html +67 -67
- package/coverage/lcov-report/core/api/services/account/index.html +16 -16
- package/coverage/lcov-report/core/api/services/authorisations/authorisations.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/authorisations/authorisations.service.js.html +141 -144
- package/coverage/lcov-report/core/api/services/authorisations/index.html +19 -19
- package/coverage/lcov-report/core/api/services/databases/databases.hooks.js.html +82 -82
- package/coverage/lcov-report/core/api/services/databases/databases.service.js.html +20 -20
- package/coverage/lcov-report/core/api/services/databases/index.html +32 -32
- package/coverage/lcov-report/core/api/services/groups/groups.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/groups/index.html +1 -1
- package/coverage/lcov-report/core/api/services/import-export/import-export.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/import-export/import-export.service.js.html +1 -1
- package/coverage/lcov-report/core/api/services/import-export/index.html +1 -1
- package/coverage/lcov-report/core/api/services/index.html +21 -21
- package/coverage/lcov-report/core/api/services/index.js.html +118 -154
- package/coverage/lcov-report/core/api/services/mailer/index.html +1 -1
- package/coverage/lcov-report/core/api/services/mailer/mailer.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/mailer/mailer.service.js.html +1 -1
- package/coverage/lcov-report/core/api/services/messages/index.html +21 -21
- package/coverage/lcov-report/core/api/services/messages/messages.hooks.js.html +89 -86
- package/coverage/lcov-report/core/api/services/organisations/index.html +1 -1
- package/coverage/lcov-report/core/api/services/organisations/organisations.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/organisations/organisations.service.js.html +23 -23
- package/coverage/lcov-report/core/api/services/push/index.html +1 -1
- package/coverage/lcov-report/core/api/services/push/push.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/push/push.service.js.html +1 -1
- package/coverage/lcov-report/core/api/services/storage/index.html +5 -5
- package/coverage/lcov-report/core/api/services/storage/storage.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/storage/storage.service.js.html +27 -27
- package/coverage/lcov-report/core/api/services/tags/index.html +1 -1
- package/coverage/lcov-report/core/api/services/tags/tags.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/users/index.html +23 -8
- package/coverage/lcov-report/core/api/services/users/users.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/users/users.service.js.html +100 -0
- package/coverage/lcov-report/core/api/utils.js.html +1 -1
- 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 +1 -1
- package/coverage/lcov-report/core/common/permissions.js.html +195 -510
- package/coverage/lcov-report/core/common/schema.js.html +1 -1
- package/coverage/lcov-report/core/common/utils.js.html +12 -6
- package/coverage/lcov-report/core/common/utils.offline.js.html +199 -0
- package/coverage/lcov-report/index.html +142 -172
- package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +125 -29
- package/coverage/lcov-report/map/api/hooks/hooks.features.js.html +1 -1
- package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +20 -44
- 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 +49 -7
- package/coverage/lcov-report/map/api/models/features.model.mongodb.js.html +1 -1
- package/coverage/lcov-report/map/api/models/index.html +22 -7
- package/coverage/lcov-report/map/api/models/projects.model.mongodb.js.html +1 -1
- package/coverage/lcov-report/map/api/models/styles.model.mongodb.js.html +112 -0
- 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 +29 -11
- package/coverage/lcov-report/map/api/services/catalog/index.html +5 -5
- 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 +78 -9
- package/coverage/lcov-report/map/api/services/features/features.service.js.html +307 -4
- package/coverage/lcov-report/map/api/services/features/index.html +7 -7
- package/coverage/lcov-report/map/api/services/index.html +5 -5
- package/coverage/lcov-report/map/api/services/index.js.html +287 -50
- package/coverage/lcov-report/map/api/services/projects/index.html +1 -1
- package/coverage/lcov-report/map/api/services/projects/projects.hooks.js.html +1 -1
- package/coverage/lcov-report/map/api/services/styles/index.html +116 -0
- package/coverage/lcov-report/map/api/services/styles/styles.hooks.js.html +196 -0
- 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 +8 -5
- package/coverage/lcov-report/map/common/grid.js.html +1 -1
- package/coverage/lcov-report/map/common/index.html +7 -7
- 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 +10 -4
- package/coverage/lcov-report/map/common/time-based-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/tms-utils.js.html +6 -6
- package/coverage/lcov-report/map/common/wcs-grid-source.js.html +3 -3
- package/coverage/lcov-report/map/common/wcs-utils.js.html +9 -9
- package/coverage/lcov-report/map/common/weacast-grid-source.js.html +1 -1
- package/coverage/lcov-report/map/common/wfs-utils.js.html +11 -11
- package/coverage/lcov-report/map/common/wms-utils.js.html +8 -8
- package/coverage/lcov-report/map/common/wmts-utils.js.html +7 -7
- package/coverage/lcov.info +2581 -3278
- package/coverage/map/api/hooks/hooks.catalog.js.html +125 -29
- package/coverage/map/api/hooks/hooks.features.js.html +1 -1
- package/coverage/map/api/hooks/hooks.query.js.html +20 -44
- 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 +49 -7
- package/coverage/map/api/models/features.model.mongodb.js.html +1 -1
- package/coverage/map/api/models/index.html +22 -7
- package/coverage/map/api/models/projects.model.mongodb.js.html +1 -1
- package/coverage/map/api/models/styles.model.mongodb.js.html +112 -0
- 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 +29 -11
- package/coverage/map/api/services/catalog/index.html +5 -5
- 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 +78 -9
- package/coverage/map/api/services/features/features.service.js.html +307 -4
- package/coverage/map/api/services/features/index.html +7 -7
- package/coverage/map/api/services/index.html +5 -5
- package/coverage/map/api/services/index.js.html +287 -50
- package/coverage/map/api/services/projects/index.html +1 -1
- package/coverage/map/api/services/projects/projects.hooks.js.html +1 -1
- package/coverage/map/api/services/styles/index.html +116 -0
- package/coverage/map/api/services/styles/styles.hooks.js.html +196 -0
- 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 +8 -5
- package/coverage/map/common/grid.js.html +1 -1
- package/coverage/map/common/index.html +7 -7
- 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 +10 -4
- package/coverage/map/common/time-based-grid-source.js.html +1 -1
- package/coverage/map/common/tms-utils.js.html +6 -6
- package/coverage/map/common/wcs-grid-source.js.html +3 -3
- package/coverage/map/common/wcs-utils.js.html +9 -9
- package/coverage/map/common/weacast-grid-source.js.html +1 -1
- package/coverage/map/common/wfs-utils.js.html +11 -11
- package/coverage/map/common/wms-utils.js.html +8 -8
- package/coverage/map/common/wmts-utils.js.html +7 -7
- package/coverage/tmp/coverage-323534-1747828879483-0.json +1 -0
- package/coverage/tmp/coverage-323546-1747828879453-0.json +1 -0
- package/coverage/tmp/coverage-323557-1747828879439-0.json +1 -0
- package/coverage/tmp/coverage-323569-1747828879416-0.json +1 -0
- package/coverage/tmp/coverage-323576-1747828879390-0.json +1 -0
- package/extras/configs/helpers.js +78 -0
- package/extras/configs/panes.left.js +118 -0
- package/extras/configs/panes.top.js +222 -0
- package/extras/configs/stickies.js +57 -0
- package/extras/configs/widgets.left.js +23 -0
- package/extras/configs/widgets.top.js +73 -0
- package/extras/css/core.variables.scss +8 -0
- package/extras/images/north.svg +3 -0
- package/extras/tours/map/side-nav.js +3 -3
- package/map/api/hooks/hooks.catalog.js +56 -23
- package/map/api/hooks/hooks.query.js +16 -24
- package/map/api/models/catalog.model.mongodb.js +16 -2
- package/{core/api/models/groups.model.mongodb.js → map/api/models/styles.model.mongodb.js} +2 -1
- package/map/api/services/catalog/catalog.hooks.js +13 -7
- package/map/api/services/features/features.hooks.js +28 -5
- package/map/api/services/features/features.service.js +101 -0
- package/map/api/services/index.js +125 -46
- package/map/api/services/styles/styles.hooks.js +37 -0
- package/map/client/cesium/utils/index.js +1 -0
- package/map/client/cesium/utils/utils.cesium.js +397 -0
- package/map/client/cesium/utils/utils.features.js +8 -0
- package/map/client/cesium/utils/utils.geojson.js +59 -0
- package/map/client/cesium/utils/utils.style.js +134 -17
- package/map/client/components/KEditLayerData.vue +17 -79
- package/map/client/components/KFeatureEditor.vue +2 -7
- package/map/client/components/KFeaturesChart.vue +2 -6
- package/map/client/components/KFeaturesFilterEditor.vue +300 -0
- package/map/client/components/KFeaturesFilterManager.vue +196 -0
- package/map/client/components/KFeaturesTable.vue +0 -5
- package/map/client/components/KFilterCondition.vue +303 -0
- package/map/client/components/KLayerEditionToolbar.vue +4 -3
- package/map/client/components/KLayerEditor.vue +451 -36
- package/map/client/components/KMeasureTool.vue +36 -9
- package/map/client/components/KProjectMenu.vue +14 -8
- package/map/client/components/catalog/KAddLayer.vue +0 -4
- package/map/client/components/catalog/KBaseLayersSelector.vue +42 -46
- package/map/client/components/catalog/KConnectLayer.vue +295 -291
- package/map/client/components/catalog/KCreateLayer.vue +141 -146
- package/map/client/components/catalog/KCreateOfflineView.vue +100 -0
- package/map/client/components/catalog/KCreateView.vue +2 -8
- package/map/client/components/catalog/KFilteredLayerItem.vue +72 -25
- package/map/client/components/catalog/KImportLayer.vue +121 -129
- package/map/client/components/catalog/KLayerItem.vue +44 -32
- package/map/client/components/catalog/KLayersPanel.vue +45 -17
- package/map/client/components/catalog/KLayersSelector.vue +51 -50
- package/map/client/components/catalog/KProjectManager.vue +4 -8
- package/map/client/components/catalog/KProjectSelector.vue +33 -2
- package/map/client/components/catalog/KProjectsPanel.vue +84 -106
- package/map/client/components/catalog/KSelectLayers.vue +56 -69
- package/map/client/components/catalog/KSelectViews.vue +56 -69
- package/map/client/components/catalog/KViewSelector.vue +32 -2
- package/map/client/components/catalog/KViewsPanel.vue +178 -110
- package/map/client/components/catalog/KWeatherLayersSelector.vue +77 -85
- package/map/client/components/form/KLocationField.vue +21 -2
- package/map/client/components/form/KOwsLayerField.vue +1 -1
- package/map/client/components/form/KOwsServiceField.vue +102 -63
- package/map/client/components/form/KSelectLayersField.vue +1 -1
- package/map/client/components/form/KSelectViewsField.vue +1 -1
- package/map/client/components/form/KTimezoneField.vue +0 -1
- package/map/client/components/legend/KLegend.vue +4 -4
- package/map/client/components/location/KLocationCardSection.vue +16 -0
- package/map/client/components/location/KLocationMap.vue +3 -2
- package/map/client/components/location/KLocationSearch.vue +46 -8
- package/map/client/components/location/KLocationTimeLineCard.vue +25 -3
- package/map/client/components/location/KLocationTip.vue +57 -10
- package/map/client/components/selection/KFeaturesSelection.vue +71 -0
- package/map/client/components/selection/KSelectedLayerFeatures.vue +343 -0
- package/map/client/components/{KAttribution.vue → stickies/KAttribution.vue} +39 -33
- package/map/client/components/stickies/KLevelSlider.vue +114 -0
- package/map/client/components/stickies/KNorthArrow.vue +26 -0
- package/map/client/components/stickies/KPosition.vue +103 -0
- package/map/client/components/stickies/KTarget.vue +34 -0
- package/map/client/components/styles/KLayerStyleAction.vue +58 -0
- package/map/client/components/styles/KStyleEditor.vue +273 -0
- package/map/client/components/styles/KStyleEditorSection.vue +79 -0
- package/map/client/components/styles/KStyleManager.vue +183 -0
- package/map/client/components/styles/KStylePreview.vue +64 -0
- package/map/client/components/styles/KStylePreviewItem.vue +68 -0
- package/map/client/components/styles/KStylePropertiesGroup.vue +76 -0
- package/map/client/components/styles/KStyleProperty.vue +136 -0
- package/map/client/components/styles/KStyleTip.vue +118 -0
- package/map/client/components/tools/KGeolocateTool.vue +3 -2
- package/map/client/components/tools/KSearchTool.vue +34 -6
- package/map/client/components/widget/KMapillaryViewer.vue +1 -1
- package/map/client/components/widget/KStackableTimeSeries.vue +8 -5
- package/map/client/composables/activity.js +29 -43
- package/map/client/composables/catalog.js +1 -1
- package/map/client/composables/highlight.js +117 -57
- package/map/client/composables/location.js +33 -14
- package/map/client/composables/project.js +9 -10
- package/map/client/composables/selection.js +136 -23
- package/map/client/geocoder.js +104 -0
- package/map/client/geolocation.js +1 -1
- package/map/client/globe.js +3 -0
- package/map/client/hooks/hooks.offline.js +95 -0
- package/map/client/hooks/index.js +1 -0
- package/map/client/i18n/map_en.json +159 -94
- package/map/client/i18n/map_fr.json +186 -127
- package/map/client/index.js +3 -0
- package/map/client/init.js +44 -8
- package/map/client/leaflet/BoxSelection.js +2 -2
- package/map/client/leaflet/GradientPath.js +84 -4
- package/map/client/leaflet/TiledFeatureLayer.js +2 -3
- package/map/client/leaflet/WindBarb.js +323 -0
- package/map/client/leaflet/utils/index.js +1 -0
- package/map/client/leaflet/utils/utils.events.js +8 -3
- package/map/client/leaflet/utils/utils.geojson.js +221 -0
- package/map/client/leaflet/utils/utils.style.js +10 -9
- package/map/client/map.js +3 -0
- package/map/client/mixins/globe/mixin.base-globe.js +151 -19
- package/map/client/mixins/globe/mixin.geojson-layers.js +208 -86
- package/map/client/mixins/globe/mixin.popup.js +3 -2
- package/map/client/mixins/globe/mixin.style.js +3 -1
- package/map/client/mixins/globe/mixin.tooltip.js +3 -2
- package/map/client/mixins/map/index.js +1 -3
- package/map/client/mixins/map/mixin.base-map.js +267 -79
- package/map/client/mixins/map/mixin.canvas-layers.js +44 -10
- package/map/client/mixins/map/mixin.edit-layers.js +142 -57
- package/map/client/mixins/map/mixin.geojson-layers.js +129 -205
- package/map/client/mixins/map/mixin.pmtiles-layers.js +24 -11
- package/map/client/mixins/map/mixin.tiled-mesh-layers.js +1 -2
- package/map/client/mixins/map/mixin.tiled-wind-layers.js +2 -1
- package/map/client/mixins/mixin.activity.js +61 -41
- package/map/client/mixins/mixin.context.js +19 -14
- package/map/client/mixins/mixin.feature-selection.js +0 -1
- package/map/client/mixins/mixin.feature-service.js +41 -59
- package/map/client/mixins/mixin.weacast.js +1 -1
- package/map/client/navigator.js +38 -0
- package/map/client/pixi-utils.js +1 -1
- package/map/client/planets.js +1 -1
- package/map/client/readers/reader.kml.js +57 -1
- package/map/client/utils/index.js +1 -0
- package/map/client/utils/utils.capture.js +10 -7
- package/map/client/utils/utils.catalog.js +2 -2
- package/map/client/utils/utils.features.js +193 -39
- package/map/client/utils/utils.js +8 -19
- package/map/client/utils/utils.layers.js +381 -4
- package/map/client/utils/utils.location.js +39 -74
- package/map/client/utils/utils.offline.js +89 -0
- package/map/client/utils/utils.style.js +133 -80
- package/map/client/utils/utils.time-series.js +99 -25
- package/map/common/geotiff-grid-source.js +2 -1
- package/map/common/permissions.js +2 -0
- package/map/common/schemas/capture.create.json +4 -4
- package/map/common/schemas/catalog.update.json +18 -2
- package/map/common/schemas/projects.create.json +2 -2
- package/map/common/schemas/projects.update.json +2 -2
- package/map/common/tms-utils.js +5 -5
- package/map/common/wcs-grid-source.js +2 -2
- package/map/common/wcs-utils.js +8 -8
- package/map/common/wfs-utils.js +10 -10
- package/map/common/wms-utils.js +7 -7
- package/map/common/wmts-utils.js +6 -6
- package/package.json +7 -4
- package/test/api/core/account.test.js +0 -72
- package/test/api/core/authentication.test.js +184 -0
- package/test/api/core/config/default.cjs +1 -3
- package/test/api/core/index.test.js +33 -96
- package/test/api/core/offline.test.js +55 -0
- package/test/api/core/push.test.js +3 -3
- package/test/api/core/{test-log-2024-06-06.log → test-log-2025-02-05.log} +3 -3
- package/test/api/core/{test-log-2024-11-15.log → test-log-2025-05-21.log} +1 -9
- package/test/api/map/alerts.test.js +1 -1
- package/test/api/map/config/default.cjs +2 -1
- package/test/api/map/data/vigicrues.observations.Q.json +47042 -0
- package/test/api/map/index.test.js +113 -9
- package/test/api/map/style.test.js +62 -0
- package/test/client/core/layout.js +2 -2
- package/test/client/core/runner.js +1 -1
- package/test/client/core/utils.js +52 -0
- package/test/client/map/catalog.js +1 -0
- package/core/api/hooks/hooks.groups.js +0 -48
- package/core/api/hooks/hooks.organisations.js +0 -152
- package/core/api/models/organisations.model.mongodb.js +0 -3
- package/core/api/models/tags.model.mongodb.js +0 -10
- package/core/api/services/groups/groups.hooks.js +0 -31
- package/core/api/services/organisations/organisations.hooks.js +0 -31
- package/core/api/services/organisations/organisations.service.js +0 -86
- package/core/api/services/tags/tags.hooks.js +0 -31
- package/core/api/utils.js +0 -11
- package/core/client/components/KChipsPane.vue +0 -103
- package/core/client/components/document/index.js +0 -9
- package/core/client/components/team/KAddMember.vue +0 -378
- package/core/client/components/team/KAddTag.vue +0 -121
- package/core/client/components/team/KChangeRole.vue +0 -118
- package/core/client/components/team/KGroupCard.vue +0 -110
- package/core/client/components/team/KGroupsActivity.vue +0 -78
- package/core/client/components/team/KJoinGroup.vue +0 -132
- package/core/client/components/team/KMemberCard.vue +0 -328
- package/core/client/components/team/KMemberFilter.vue +0 -49
- package/core/client/components/team/KMembersActivity.vue +0 -136
- package/core/client/components/team/KOrganisationsActivity.vue +0 -51
- package/core/client/components/team/KTagCard.vue +0 -72
- package/core/client/components/team/KTagsActivity.vue +0 -73
- package/core/client/components/team/index.js +0 -9
- package/core/client/mixins/mixin.base-context.js +0 -54
- package/core/client/utils/utils.platform.js +0 -12
- package/core/common/schemas/groups.create.json +0 -28
- package/core/common/schemas/groups.update.json +0 -28
- package/core/common/schemas/organisations.create.json +0 -28
- package/core/common/schemas/organisations.update.json +0 -49
- package/core/common/schemas/tags.create.json +0 -35
- package/core/common/schemas/tags.update.json +0 -35
- package/coverage/tmp/coverage-280506-1731704745613-0.json +0 -1
- package/coverage/tmp/coverage-280518-1731704745599-0.json +0 -1
- package/coverage/tmp/coverage-280529-1731704745588-0.json +0 -1
- package/coverage/tmp/coverage-280541-1731704745574-0.json +0 -1
- package/coverage/tmp/coverage-280548-1731704745545-0.json +0 -1
- package/map/client/components/KFeaturesFilter.vue +0 -259
- package/map/client/components/KLayerStyleEditor.vue +0 -118
- package/map/client/components/KLayerStyleForm.vue +0 -740
- package/map/client/components/KLevelSlider.vue +0 -100
- package/map/client/components/KNorth.vue +0 -31
- package/map/client/components/KPositionIndicator.vue +0 -83
- package/map/client/components/catalog/KCreateProject.vue +0 -100
- package/map/client/mixins/map/mixin.forecast-layers.js +0 -81
- package/map/client/mixins/map/mixin.georaster-layers.js +0 -107
- package/test/api/core/team.test.js +0 -670
- package/test/api/core/test-log-2023-12-19.log +0 -7
- package/test/api/core/test-log-2024-01-04.log +0 -14
- package/test/api/core/test-log-2024-05-14.log +0 -6
- package/test/api/core/test-log-2024-06-26.log +0 -25
- package/test/api/core/test-log-2024-06-28.log +0 -2
- package/test/api/core/test-log-2024-07-09.log +0 -0
- package/test/api/core/test-log-2024-08-13.log +0 -69
- package/test/api/core/test-log-2024-10-28.log +0 -53
- package/test/api/core/test-log-2024-11-05.log +0 -30
- package/test/api/map/test-log-2023-11-24.log +0 -121
- package/test/api/map/test-log-2023-12-12.log +0 -29
- package/test/api/map/test-log-2023-12-13.log +0 -5
- package/test/api/map/test-log-2024-01-04.log +0 -2
- package/test/api/map/test-log-2024-01-11.log +0 -1
- package/test/api/map/test-log-2024-01-25.log +0 -19
- package/test/api/map/test-log-2024-06-06.log +0 -39
- package/test/api/map/test-log-2024-08-13.log +0 -13
- package/test/api/map/test-log-2024-08-20.log +0 -55
- package/test/api/map/test-log-2024-09-09.log +0 -92
- package/test/api/map/test-log-2024-10-28.log +0 -11
- /package/extras/{logos → images}/kalisio.png +0 -0
- /package/extras/{icons → images}/target.svg +0 -0
- /package/test/api/map/data/{vigicrues.observations.json → vigicrues.observations.H.json} +0 -0
|
@@ -214,7 +214,7 @@ export function removeGroupAuthorisations (hook) {
|
|
|
214
214
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
215
215
|
Code coverage generated by
|
|
216
216
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
217
|
-
at
|
|
217
|
+
at 2025-02-05T08:47:28.458Z
|
|
218
218
|
</div>
|
|
219
219
|
<script src="../../../prettify.js"></script>
|
|
220
220
|
<script>
|
|
@@ -91,22 +91,22 @@
|
|
|
91
91
|
<a name='L26'></a><a href='#L26'>26</a>
|
|
92
92
|
<a name='L27'></a><a href='#L27'>27</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
93
93
|
<span class="cline-any cline-yes">1x</span>
|
|
94
|
-
<span class="cline-any cline-yes">
|
|
95
|
-
<span class="cline-any cline-yes">
|
|
96
|
-
<span class="cline-any cline-yes">
|
|
97
|
-
<span class="cline-any cline-yes">
|
|
98
|
-
<span class="cline-any cline-yes">
|
|
99
|
-
<span class="cline-any cline-yes">
|
|
100
|
-
<span class="cline-any cline-yes">
|
|
101
|
-
<span class="cline-any cline-yes">
|
|
102
|
-
<span class="cline-any cline-yes">
|
|
94
|
+
<span class="cline-any cline-yes">14x</span>
|
|
95
|
+
<span class="cline-any cline-yes">14x</span>
|
|
96
|
+
<span class="cline-any cline-yes">14x</span>
|
|
97
|
+
<span class="cline-any cline-yes">14x</span>
|
|
98
|
+
<span class="cline-any cline-yes">14x</span>
|
|
99
|
+
<span class="cline-any cline-yes">14x</span>
|
|
100
|
+
<span class="cline-any cline-yes">14x</span>
|
|
101
|
+
<span class="cline-any cline-yes">14x</span>
|
|
102
|
+
<span class="cline-any cline-yes">14x</span>
|
|
103
103
|
<span class="cline-any cline-no"> </span>
|
|
104
104
|
<span class="cline-any cline-no"> </span>
|
|
105
|
-
<span class="cline-any cline-yes">
|
|
106
|
-
<span class="cline-any cline-yes">
|
|
107
|
-
<span class="cline-any cline-yes">
|
|
108
|
-
<span class="cline-any cline-yes">
|
|
109
|
-
<span class="cline-any cline-yes">
|
|
105
|
+
<span class="cline-any cline-yes">14x</span>
|
|
106
|
+
<span class="cline-any cline-yes">14x</span>
|
|
107
|
+
<span class="cline-any cline-yes">14x</span>
|
|
108
|
+
<span class="cline-any cline-yes">14x</span>
|
|
109
|
+
<span class="cline-any cline-yes">14x</span>
|
|
110
110
|
<span class="cline-any cline-no"> </span>
|
|
111
111
|
<span class="cline-any cline-no"> </span>
|
|
112
112
|
<span class="cline-any cline-no"> </span>
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
<span class="cline-any cline-no"> </span>
|
|
115
115
|
<span class="cline-any cline-no"> </span>
|
|
116
116
|
<span class="cline-any cline-no"> </span>
|
|
117
|
-
<span class="cline-any cline-yes">
|
|
117
|
+
<span class="cline-any cline-yes">14x</span>
|
|
118
118
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">// A hook that logs service method before, after and error
|
|
119
119
|
export function log (hook) {
|
|
120
120
|
let message = `${hook.type}: ${hook.path} - Method: ${hook.method}`
|
|
@@ -148,7 +148,7 @@ export function log (hook) {
|
|
|
148
148
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
149
149
|
Code coverage generated by
|
|
150
150
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
151
|
-
at
|
|
151
|
+
at 2025-05-21T12:01:19.833Z
|
|
152
152
|
</div>
|
|
153
153
|
<script src="../../../prettify.js"></script>
|
|
154
154
|
<script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">76.53% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>225/294</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">58.73% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>37/63</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">76.53% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>225/294</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -353,7 +353,11 @@
|
|
|
353
353
|
<a name='L288'></a><a href='#L288'>288</a>
|
|
354
354
|
<a name='L289'></a><a href='#L289'>289</a>
|
|
355
355
|
<a name='L290'></a><a href='#L290'>290</a>
|
|
356
|
-
<a name='L291'></a><a href='#L291'>291</a
|
|
356
|
+
<a name='L291'></a><a href='#L291'>291</a>
|
|
357
|
+
<a name='L292'></a><a href='#L292'>292</a>
|
|
358
|
+
<a name='L293'></a><a href='#L293'>293</a>
|
|
359
|
+
<a name='L294'></a><a href='#L294'>294</a>
|
|
360
|
+
<a name='L295'></a><a href='#L295'>295</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
357
361
|
<span class="cline-any cline-yes">1x</span>
|
|
358
362
|
<span class="cline-any cline-yes">1x</span>
|
|
359
363
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -398,28 +402,28 @@
|
|
|
398
402
|
<span class="cline-any cline-yes">1x</span>
|
|
399
403
|
<span class="cline-any cline-yes">1x</span>
|
|
400
404
|
<span class="cline-any cline-yes">3x</span>
|
|
405
|
+
<span class="cline-any cline-yes">14x</span>
|
|
406
|
+
<span class="cline-any cline-yes">14x</span>
|
|
407
|
+
<span class="cline-any cline-yes">14x</span>
|
|
408
|
+
<span class="cline-any cline-yes">14x</span>
|
|
409
|
+
<span class="cline-any cline-yes">14x</span>
|
|
410
|
+
<span class="cline-any cline-yes">14x</span>
|
|
411
|
+
<span class="cline-any cline-yes">14x</span>
|
|
401
412
|
<span class="cline-any cline-yes">21x</span>
|
|
402
413
|
<span class="cline-any cline-yes">21x</span>
|
|
414
|
+
<span class="cline-any cline-yes">20x</span>
|
|
415
|
+
<span class="cline-any cline-yes">20x</span>
|
|
416
|
+
<span class="cline-any cline-yes">20x</span>
|
|
417
|
+
<span class="cline-any cline-yes">7x</span>
|
|
418
|
+
<span class="cline-any cline-yes">7x</span>
|
|
403
419
|
<span class="cline-any cline-yes">21x</span>
|
|
404
|
-
<span class="cline-any cline-yes">21x</span>
|
|
405
|
-
<span class="cline-any cline-yes">21x</span>
|
|
406
|
-
<span class="cline-any cline-yes">21x</span>
|
|
407
|
-
<span class="cline-any cline-yes">21x</span>
|
|
408
|
-
<span class="cline-any cline-yes">31x</span>
|
|
409
|
-
<span class="cline-any cline-yes">31x</span>
|
|
410
|
-
<span class="cline-any cline-yes">27x</span>
|
|
411
|
-
<span class="cline-any cline-yes">27x</span>
|
|
412
|
-
<span class="cline-any cline-yes">27x</span>
|
|
413
|
-
<span class="cline-any cline-yes">10x</span>
|
|
414
|
-
<span class="cline-any cline-yes">10x</span>
|
|
415
|
-
<span class="cline-any cline-yes">31x</span>
|
|
416
420
|
<span class="cline-any cline-no"> </span>
|
|
417
421
|
<span class="cline-any cline-no"> </span>
|
|
418
|
-
<span class="cline-any cline-yes">
|
|
419
|
-
<span class="cline-any cline-yes">
|
|
420
|
-
<span class="cline-any cline-yes">
|
|
421
|
-
<span class="cline-any cline-yes">
|
|
422
|
-
<span class="cline-any cline-yes">
|
|
422
|
+
<span class="cline-any cline-yes">14x</span>
|
|
423
|
+
<span class="cline-any cline-yes">14x</span>
|
|
424
|
+
<span class="cline-any cline-yes">14x</span>
|
|
425
|
+
<span class="cline-any cline-yes">14x</span>
|
|
426
|
+
<span class="cline-any cline-yes">14x</span>
|
|
423
427
|
<span class="cline-any cline-yes">3x</span>
|
|
424
428
|
<span class="cline-any cline-yes">1x</span>
|
|
425
429
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -427,16 +431,16 @@
|
|
|
427
431
|
<span class="cline-any cline-yes">1x</span>
|
|
428
432
|
<span class="cline-any cline-yes">1x</span>
|
|
429
433
|
<span class="cline-any cline-yes">1x</span>
|
|
430
|
-
<span class="cline-any cline-yes">
|
|
431
|
-
<span class="cline-any cline-yes">
|
|
432
|
-
<span class="cline-any cline-yes">
|
|
433
|
-
<span class="cline-any cline-yes">
|
|
434
|
-
<span class="cline-any cline-yes">
|
|
435
|
-
<span class="cline-any cline-yes">
|
|
436
|
-
<span class="cline-any cline-yes">
|
|
437
|
-
<span class="cline-any cline-yes">
|
|
438
|
-
<span class="cline-any cline-yes">
|
|
439
|
-
<span class="cline-any cline-yes">
|
|
434
|
+
<span class="cline-any cline-yes">1x</span>
|
|
435
|
+
<span class="cline-any cline-yes">1x</span>
|
|
436
|
+
<span class="cline-any cline-yes">1x</span>
|
|
437
|
+
<span class="cline-any cline-yes">1x</span>
|
|
438
|
+
<span class="cline-any cline-yes">1x</span>
|
|
439
|
+
<span class="cline-any cline-yes">1x</span>
|
|
440
|
+
<span class="cline-any cline-yes">1x</span>
|
|
441
|
+
<span class="cline-any cline-yes">1x</span>
|
|
442
|
+
<span class="cline-any cline-yes">1x</span>
|
|
443
|
+
<span class="cline-any cline-yes">1x</span>
|
|
440
444
|
<span class="cline-any cline-yes">1x</span>
|
|
441
445
|
<span class="cline-any cline-yes">1x</span>
|
|
442
446
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -546,33 +550,33 @@
|
|
|
546
550
|
<span class="cline-any cline-yes">3x</span>
|
|
547
551
|
<span class="cline-any cline-yes">1x</span>
|
|
548
552
|
<span class="cline-any cline-yes">1x</span>
|
|
549
|
-
<span class="cline-any cline-yes">
|
|
550
|
-
<span class="cline-any cline-yes">
|
|
551
|
-
<span class="cline-any cline-yes">
|
|
552
|
-
<span class="cline-any cline-yes">
|
|
553
|
-
<span class="cline-any cline-yes">
|
|
554
|
-
<span class="cline-any cline-yes">
|
|
555
|
-
<span class="cline-any cline-yes">
|
|
556
|
-
<span class="cline-any cline-yes">
|
|
557
|
-
<span class="cline-any cline-yes">
|
|
558
|
-
<span class="cline-any cline-yes">
|
|
553
|
+
<span class="cline-any cline-yes">1x</span>
|
|
554
|
+
<span class="cline-any cline-yes">1x</span>
|
|
555
|
+
<span class="cline-any cline-yes">1x</span>
|
|
556
|
+
<span class="cline-any cline-yes">1x</span>
|
|
557
|
+
<span class="cline-any cline-yes">1x</span>
|
|
558
|
+
<span class="cline-any cline-yes">1x</span>
|
|
559
|
+
<span class="cline-any cline-yes">1x</span>
|
|
560
|
+
<span class="cline-any cline-yes">1x</span>
|
|
561
|
+
<span class="cline-any cline-yes">1x</span>
|
|
562
|
+
<span class="cline-any cline-yes">1x</span>
|
|
559
563
|
<span class="cline-any cline-yes">1x</span>
|
|
560
564
|
<span class="cline-any cline-yes">1x</span>
|
|
561
565
|
<span class="cline-any cline-yes">2x</span>
|
|
562
|
-
<span class="cline-any cline-yes">
|
|
566
|
+
<span class="cline-any cline-yes">1x</span>
|
|
563
567
|
<span class="cline-any cline-no"> </span>
|
|
564
568
|
<span class="cline-any cline-no"> </span>
|
|
565
|
-
<span class="cline-any cline-yes">
|
|
566
|
-
<span class="cline-any cline-yes">
|
|
567
|
-
<span class="cline-any cline-yes">
|
|
568
|
-
<span class="cline-any cline-yes">
|
|
569
|
-
<span class="cline-any cline-yes">
|
|
570
|
-
<span class="cline-any cline-yes">
|
|
571
|
-
<span class="cline-any cline-yes">
|
|
572
|
-
<span class="cline-any cline-yes">
|
|
573
|
-
<span class="cline-any cline-yes">
|
|
574
|
-
<span class="cline-any cline-yes">
|
|
575
|
-
<span class="cline-any cline-yes">
|
|
569
|
+
<span class="cline-any cline-yes">1x</span>
|
|
570
|
+
<span class="cline-any cline-yes">1x</span>
|
|
571
|
+
<span class="cline-any cline-yes">1x</span>
|
|
572
|
+
<span class="cline-any cline-yes">1x</span>
|
|
573
|
+
<span class="cline-any cline-yes">1x</span>
|
|
574
|
+
<span class="cline-any cline-yes">1x</span>
|
|
575
|
+
<span class="cline-any cline-yes">1x</span>
|
|
576
|
+
<span class="cline-any cline-yes">1x</span>
|
|
577
|
+
<span class="cline-any cline-yes">1x</span>
|
|
578
|
+
<span class="cline-any cline-yes">1x</span>
|
|
579
|
+
<span class="cline-any cline-yes">1x</span>
|
|
576
580
|
<span class="cline-any cline-yes">2x</span>
|
|
577
581
|
<span class="cline-any cline-yes">1x</span>
|
|
578
582
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -589,6 +593,10 @@
|
|
|
589
593
|
<span class="cline-any cline-yes">1x</span>
|
|
590
594
|
<span class="cline-any cline-yes">4x</span>
|
|
591
595
|
<span class="cline-any cline-yes">4x</span>
|
|
596
|
+
<span class="cline-any cline-no"> </span>
|
|
597
|
+
<span class="cline-any cline-no"> </span>
|
|
598
|
+
<span class="cline-any cline-no"> </span>
|
|
599
|
+
<span class="cline-any cline-yes">4x</span>
|
|
592
600
|
<span class="cline-any cline-yes">4x</span>
|
|
593
601
|
<span class="cline-any cline-yes">4x</span>
|
|
594
602
|
<span class="cline-any cline-yes">4x</span>
|
|
@@ -878,6 +886,10 @@ export <span class="fstat-no" title="function not covered" >async function disti
|
|
|
878
886
|
// Check for already existing object according to given service/id field
|
|
879
887
|
export function checkUnique (options = {}) {
|
|
880
888
|
return async (hook) => {
|
|
889
|
+
if (hook.app) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
|
|
890
|
+
<span class="cstat-no" title="statement not covered" > const serviceConfig = hook.app.get(hook.service.name)</span>
|
|
891
|
+
<span class="cstat-no" title="statement not covered" > if (serviceConfig && serviceConfig.checkUnique) options = serviceConfig.checkUnique</span>
|
|
892
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
881
893
|
const service = (options.service <span class="branch-0 cbranch-no" title="branch not covered" >? hook.app.getService(options.service) </span>: hook.service)
|
|
882
894
|
const field = options.field <span class="branch-0 cbranch-no" title="branch not covered" >|| 'name'</span>
|
|
883
895
|
const id = _.get(hook, `data.${field}`)
|
|
@@ -940,7 +952,7 @@ export function preventChanges (ifThrow, fieldNames) {
|
|
|
940
952
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
941
953
|
Code coverage generated by
|
|
942
954
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
943
|
-
at
|
|
955
|
+
at 2025-05-21T12:01:19.833Z
|
|
944
956
|
</div>
|
|
945
957
|
<script src="../../../prettify.js"></script>
|
|
946
958
|
<script>
|
|
@@ -526,7 +526,7 @@ export function removeOrganisationResources (resourceScope) {
|
|
|
526
526
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
527
527
|
Code coverage generated by
|
|
528
528
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
529
|
-
at
|
|
529
|
+
at 2025-02-05T08:47:28.458Z
|
|
530
530
|
</div>
|
|
531
531
|
<script src="../../../prettify.js"></script>
|
|
532
532
|
<script>
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">85% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>51/
|
|
28
|
+
<span class='fraction'>51/60</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">75% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>9/
|
|
35
|
+
<span class='fraction'>9/12</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
@@ -44,9 +44,9 @@
|
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">85% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>51/
|
|
49
|
+
<span class='fraction'>51/60</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -119,7 +119,11 @@
|
|
|
119
119
|
<a name='L54'></a><a href='#L54'>54</a>
|
|
120
120
|
<a name='L55'></a><a href='#L55'>55</a>
|
|
121
121
|
<a name='L56'></a><a href='#L56'>56</a>
|
|
122
|
-
<a name='L57'></a><a href='#L57'>57</a
|
|
122
|
+
<a name='L57'></a><a href='#L57'>57</a>
|
|
123
|
+
<a name='L58'></a><a href='#L58'>58</a>
|
|
124
|
+
<a name='L59'></a><a href='#L59'>59</a>
|
|
125
|
+
<a name='L60'></a><a href='#L60'>60</a>
|
|
126
|
+
<a name='L61'></a><a href='#L61'>61</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
123
127
|
<span class="cline-any cline-yes">1x</span>
|
|
124
128
|
<span class="cline-any cline-yes">1x</span>
|
|
125
129
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -132,30 +136,25 @@
|
|
|
132
136
|
<span class="cline-any cline-yes">2x</span>
|
|
133
137
|
<span class="cline-any cline-yes">1x</span>
|
|
134
138
|
<span class="cline-any cline-yes">1x</span>
|
|
135
|
-
<span class="cline-any cline-yes">
|
|
139
|
+
<span class="cline-any cline-yes">13x</span>
|
|
136
140
|
<span class="cline-any cline-no"> </span>
|
|
137
141
|
<span class="cline-any cline-no"> </span>
|
|
138
|
-
<span class="cline-any cline-yes">
|
|
139
|
-
<span class="cline-any cline-yes">
|
|
140
|
-
<span class="cline-any cline-yes">
|
|
141
|
-
<span class="cline-any cline-yes">
|
|
142
|
-
<span class="cline-any cline-yes">
|
|
143
|
-
<span class="cline-any cline-yes">
|
|
144
|
-
<span class="cline-any cline-yes">
|
|
145
|
-
<span class="cline-any cline-yes">
|
|
146
|
-
<span class="cline-any cline-yes">2x</span>
|
|
147
|
-
<span class="cline-any cline-yes">2x</span>
|
|
148
|
-
<span class="cline-any cline-yes">2x</span>
|
|
149
|
-
<span class="cline-any cline-yes">2x</span>
|
|
150
|
-
<span class="cline-any cline-yes">2x</span>
|
|
151
|
-
<span class="cline-any cline-yes">2x</span>
|
|
152
|
-
<span class="cline-any cline-yes">2x</span>
|
|
153
|
-
<span class="cline-any cline-yes">2x</span>
|
|
154
|
-
<span class="cline-any cline-yes">2x</span>
|
|
155
|
-
<span class="cline-any cline-yes">2x</span>
|
|
142
|
+
<span class="cline-any cline-yes">13x</span>
|
|
143
|
+
<span class="cline-any cline-yes">13x</span>
|
|
144
|
+
<span class="cline-any cline-yes">13x</span>
|
|
145
|
+
<span class="cline-any cline-yes">13x</span>
|
|
146
|
+
<span class="cline-any cline-yes">13x</span>
|
|
147
|
+
<span class="cline-any cline-yes">4x</span>
|
|
148
|
+
<span class="cline-any cline-yes">4x</span>
|
|
149
|
+
<span class="cline-any cline-yes">13x</span>
|
|
156
150
|
<span class="cline-any cline-yes">2x</span>
|
|
157
151
|
<span class="cline-any cline-yes">2x</span>
|
|
152
|
+
<span class="cline-any cline-no"> </span>
|
|
158
153
|
<span class="cline-any cline-yes">2x</span>
|
|
154
|
+
<span class="cline-any cline-yes">13x</span>
|
|
155
|
+
<span class="cline-any cline-no"> </span>
|
|
156
|
+
<span class="cline-any cline-no"> </span>
|
|
157
|
+
<span class="cline-any cline-no"> </span>
|
|
159
158
|
<span class="cline-any cline-yes">2x</span>
|
|
160
159
|
<span class="cline-any cline-yes">2x</span>
|
|
161
160
|
<span class="cline-any cline-yes">2x</span>
|
|
@@ -163,18 +162,27 @@
|
|
|
163
162
|
<span class="cline-any cline-yes">2x</span>
|
|
164
163
|
<span class="cline-any cline-yes">2x</span>
|
|
165
164
|
<span class="cline-any cline-yes">2x</span>
|
|
166
|
-
<span class="cline-any cline-yes">
|
|
165
|
+
<span class="cline-any cline-yes">13x</span>
|
|
166
|
+
<span class="cline-any cline-yes">13x</span>
|
|
167
|
+
<span class="cline-any cline-yes">13x</span>
|
|
168
|
+
<span class="cline-any cline-yes">13x</span>
|
|
169
|
+
<span class="cline-any cline-yes">13x</span>
|
|
170
|
+
<span class="cline-any cline-yes">13x</span>
|
|
171
|
+
<span class="cline-any cline-yes">13x</span>
|
|
172
|
+
<span class="cline-any cline-yes">13x</span>
|
|
173
|
+
<span class="cline-any cline-yes">13x</span>
|
|
174
|
+
<span class="cline-any cline-yes">13x</span>
|
|
175
|
+
<span class="cline-any cline-yes">13x</span>
|
|
176
|
+
<span class="cline-any cline-yes">13x</span>
|
|
167
177
|
<span class="cline-any cline-yes">2x</span>
|
|
168
178
|
<span class="cline-any cline-yes">2x</span>
|
|
169
179
|
<span class="cline-any cline-yes">2x</span>
|
|
170
180
|
<span class="cline-any cline-yes">2x</span>
|
|
171
|
-
<span class="cline-any cline-yes">
|
|
181
|
+
<span class="cline-any cline-yes">13x</span>
|
|
172
182
|
<span class="cline-any cline-no"> </span>
|
|
173
183
|
<span class="cline-any cline-no"> </span>
|
|
174
184
|
<span class="cline-any cline-no"> </span>
|
|
175
|
-
<span class="cline-any cline-yes">
|
|
176
|
-
<span class="cline-any cline-yes">2x</span>
|
|
177
|
-
<span class="cline-any cline-yes">37x</span>
|
|
185
|
+
<span class="cline-any cline-yes">13x</span>
|
|
178
186
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import emails from 'email-templates'
|
|
179
187
|
import path from 'path'
|
|
180
188
|
import makeDebug from 'debug'
|
|
@@ -191,35 +199,41 @@ export async function sendNewSubscriptionEmail (hook) {
|
|
|
191
199
|
if (hook.type !== 'after') <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
|
|
192
200
|
<span class="cstat-no" title="statement not covered" > throw new Error('The \'sendNewSubscriptionEmail\' hook should only be used as a \'after\' hook.')</span>
|
|
193
201
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
194
|
-
|
|
195
202
|
// Check for a new subscription if any
|
|
196
|
-
const
|
|
203
|
+
const currentUser = hook.result
|
|
197
204
|
const previousUser = hook.params.user
|
|
198
205
|
// If we can't compare abort, eg f-a-m might patch user to update tokens
|
|
199
|
-
if (!
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
//
|
|
206
|
+
if (!currentUser || !previousUser) return
|
|
207
|
+
// Retrieve the last subscription
|
|
208
|
+
const lastSubscription = _.last(_.get(currentUser, 'subscriptions', []))
|
|
209
|
+
if (!lastSubscription) return
|
|
210
|
+
// Check whether the subscription has an existing fingerprint
|
|
211
|
+
const existingSubscription = _.find(_.get(previousUser, 'subscriptions', []), subscription => {
|
|
212
|
+
<span class="cstat-no" title="statement not covered" > return _.isEqual(subscription.fingerprint, lastSubscription.fingerprint)</span>
|
|
213
|
+
})
|
|
214
|
+
if (existingSubscription) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
|
|
215
|
+
<span class="cstat-no" title="statement not covered" > debug('Last subscription uses an existing fingerprint')</span>
|
|
216
|
+
<span class="cstat-no" title="statement not covered" > return</span>
|
|
217
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
218
|
+
debug('Last subscription uses uses a new fingerprint')
|
|
219
|
+
// Send an email to notify the user
|
|
204
220
|
const app = hook.app
|
|
205
221
|
const mailerService = app.getService('mailer')
|
|
206
222
|
const domainPath = app.get('domain') + '/#/'
|
|
207
223
|
const email = {
|
|
208
224
|
subject: 'Security alert - new browser detected',
|
|
209
|
-
from: mailerService.options.auth.user,
|
|
210
|
-
|
|
211
|
-
to: updatedUser.email,
|
|
225
|
+
from: mailerService.options.from || mailerService.options.auth.user,
|
|
226
|
+
to: currentUser.email,
|
|
212
227
|
link: domainPath,
|
|
213
228
|
domainPath
|
|
214
229
|
}
|
|
215
|
-
|
|
216
230
|
// Build the subject & link to the app to perform the different actions
|
|
217
231
|
const templateDir = path.join(mailerService.options.templateDir, 'newSubscription')
|
|
218
232
|
const template = new emails.EmailTemplate(templateDir)
|
|
219
233
|
// Errors does not seem to be correctly catched by the caller
|
|
220
234
|
// so we catch them here to avoid any problem
|
|
221
235
|
try {
|
|
222
|
-
const emailContent = await template.render({ email, user:
|
|
236
|
+
const emailContent = await template.render({ email, user: currentUser, subscription: lastSubscription }, currentUser.locale || 'en-us')
|
|
223
237
|
// Update compiled content
|
|
224
238
|
email.html = emailContent.html
|
|
225
239
|
debug('Sending email ', email)
|
|
@@ -228,8 +242,6 @@ export async function sendNewSubscriptionEmail (hook) {
|
|
|
228
242
|
<span class="cstat-no" title="statement not covered" > debug('Sending email failed', error)</span>
|
|
229
243
|
<span class="cstat-no" title="statement not covered" > app.logger.error(error)</span>
|
|
230
244
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
231
|
-
|
|
232
|
-
return hook
|
|
233
245
|
}
|
|
234
246
|
</pre></td></tr></table></pre>
|
|
235
247
|
|
|
@@ -238,7 +250,7 @@ export async function sendNewSubscriptionEmail (hook) {
|
|
|
238
250
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
239
251
|
Code coverage generated by
|
|
240
252
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
241
|
-
at
|
|
253
|
+
at 2025-05-21T12:01:19.833Z
|
|
242
254
|
</div>
|
|
243
255
|
<script src="../../../prettify.js"></script>
|
|
244
256
|
<script>
|