@kalisio/kdk 2.4.1 → 2.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +9 -104
- 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 -31
- package/core/api/services/index.js +42 -50
- package/core/api/services/messages/messages.hooks.js +4 -3
- package/core/api/services/users/users.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 +55 -28
- 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 +55 -27
- 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 +2 -2
- package/core/client/units.js +7 -4
- package/core/client/utils/index.js +7 -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 +172 -460
- 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 +52 -52
- 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 +136 -136
- 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 +55 -328
- package/coverage/core/api/hooks/index.html +58 -88
- package/coverage/core/api/hooks/index.js.html +4 -10
- package/coverage/core/api/index.html +39 -54
- package/coverage/core/api/index.js.html +1 -1
- package/coverage/core/api/marshall.js.html +1 -1
- 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 +120 -117
- package/coverage/core/api/services/authorisations/index.html +15 -15
- 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 +86 -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 +121 -166
- 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 +172 -460
- 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 +52 -52
- 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 +136 -136
- 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 +55 -328
- package/coverage/lcov-report/core/api/hooks/index.html +58 -88
- package/coverage/lcov-report/core/api/hooks/index.js.html +4 -10
- package/coverage/lcov-report/core/api/index.html +39 -54
- package/coverage/lcov-report/core/api/index.js.html +1 -1
- package/coverage/lcov-report/core/api/marshall.js.html +1 -1
- 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 +120 -117
- package/coverage/lcov-report/core/api/services/authorisations/index.html +15 -15
- 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 +86 -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 +121 -166
- package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +33 -27
- package/coverage/lcov-report/map/api/hooks/hooks.features.js.html +1 -1
- package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +4 -4
- package/coverage/lcov-report/map/api/hooks/index.html +5 -5
- 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/models/projects.model.mongodb.js.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 +10 -7
- 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 +171 -42
- 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/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 +5 -5
- 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 +2314 -3167
- package/coverage/map/api/hooks/hooks.catalog.js.html +33 -27
- package/coverage/map/api/hooks/hooks.features.js.html +1 -1
- package/coverage/map/api/hooks/hooks.query.js.html +4 -4
- package/coverage/map/api/hooks/index.html +5 -5
- 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/models/projects.model.mongodb.js.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 +10 -7
- 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 +171 -42
- 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/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 +5 -5
- 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/coverage/tmp/{coverage-280506-1731704745613-0.json → coverage-122123-1739872365211-0.json} +1 -1
- package/coverage/tmp/{coverage-280518-1731704745599-0.json → coverage-122135-1739872365196-0.json} +1 -1
- package/coverage/tmp/{coverage-280529-1731704745588-0.json → coverage-122146-1739872365184-0.json} +1 -1
- package/coverage/tmp/{coverage-280541-1731704745574-0.json → coverage-122158-1739872365169-0.json} +1 -1
- package/coverage/tmp/{coverage-280548-1731704745545-0.json → coverage-122165-1739872365141-0.json} +1 -1
- 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 +19 -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/stickies/KAttribution.vue +115 -0
- 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 +187 -128
- 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/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 +222 -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 +127 -204
- 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 +0 -21
- 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/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 +77 -151
- 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-11-05.log → test-log-2025-05-26.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/api/map/{test-log-2024-10-28.log → test-log-2025-05-26.log} +4 -3
- 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/map/client/components/KAttribution.vue +0 -108
- 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-06.log +0 -23
- 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-15.log +0 -23
- package/test/api/core/test-log-2024-11-18.log +0 -0
- package/test/api/core/test-log-2024-12-03.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/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
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/287</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/287</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -307,7 +307,93 @@
|
|
|
307
307
|
<a name='L242'></a><a href='#L242'>242</a>
|
|
308
308
|
<a name='L243'></a><a href='#L243'>243</a>
|
|
309
309
|
<a name='L244'></a><a href='#L244'>244</a>
|
|
310
|
-
<a name='L245'></a><a href='#L245'>245</a
|
|
310
|
+
<a name='L245'></a><a href='#L245'>245</a>
|
|
311
|
+
<a name='L246'></a><a href='#L246'>246</a>
|
|
312
|
+
<a name='L247'></a><a href='#L247'>247</a>
|
|
313
|
+
<a name='L248'></a><a href='#L248'>248</a>
|
|
314
|
+
<a name='L249'></a><a href='#L249'>249</a>
|
|
315
|
+
<a name='L250'></a><a href='#L250'>250</a>
|
|
316
|
+
<a name='L251'></a><a href='#L251'>251</a>
|
|
317
|
+
<a name='L252'></a><a href='#L252'>252</a>
|
|
318
|
+
<a name='L253'></a><a href='#L253'>253</a>
|
|
319
|
+
<a name='L254'></a><a href='#L254'>254</a>
|
|
320
|
+
<a name='L255'></a><a href='#L255'>255</a>
|
|
321
|
+
<a name='L256'></a><a href='#L256'>256</a>
|
|
322
|
+
<a name='L257'></a><a href='#L257'>257</a>
|
|
323
|
+
<a name='L258'></a><a href='#L258'>258</a>
|
|
324
|
+
<a name='L259'></a><a href='#L259'>259</a>
|
|
325
|
+
<a name='L260'></a><a href='#L260'>260</a>
|
|
326
|
+
<a name='L261'></a><a href='#L261'>261</a>
|
|
327
|
+
<a name='L262'></a><a href='#L262'>262</a>
|
|
328
|
+
<a name='L263'></a><a href='#L263'>263</a>
|
|
329
|
+
<a name='L264'></a><a href='#L264'>264</a>
|
|
330
|
+
<a name='L265'></a><a href='#L265'>265</a>
|
|
331
|
+
<a name='L266'></a><a href='#L266'>266</a>
|
|
332
|
+
<a name='L267'></a><a href='#L267'>267</a>
|
|
333
|
+
<a name='L268'></a><a href='#L268'>268</a>
|
|
334
|
+
<a name='L269'></a><a href='#L269'>269</a>
|
|
335
|
+
<a name='L270'></a><a href='#L270'>270</a>
|
|
336
|
+
<a name='L271'></a><a href='#L271'>271</a>
|
|
337
|
+
<a name='L272'></a><a href='#L272'>272</a>
|
|
338
|
+
<a name='L273'></a><a href='#L273'>273</a>
|
|
339
|
+
<a name='L274'></a><a href='#L274'>274</a>
|
|
340
|
+
<a name='L275'></a><a href='#L275'>275</a>
|
|
341
|
+
<a name='L276'></a><a href='#L276'>276</a>
|
|
342
|
+
<a name='L277'></a><a href='#L277'>277</a>
|
|
343
|
+
<a name='L278'></a><a href='#L278'>278</a>
|
|
344
|
+
<a name='L279'></a><a href='#L279'>279</a>
|
|
345
|
+
<a name='L280'></a><a href='#L280'>280</a>
|
|
346
|
+
<a name='L281'></a><a href='#L281'>281</a>
|
|
347
|
+
<a name='L282'></a><a href='#L282'>282</a>
|
|
348
|
+
<a name='L283'></a><a href='#L283'>283</a>
|
|
349
|
+
<a name='L284'></a><a href='#L284'>284</a>
|
|
350
|
+
<a name='L285'></a><a href='#L285'>285</a>
|
|
351
|
+
<a name='L286'></a><a href='#L286'>286</a>
|
|
352
|
+
<a name='L287'></a><a href='#L287'>287</a>
|
|
353
|
+
<a name='L288'></a><a href='#L288'>288</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
|
354
|
+
<span class="cline-any cline-no"> </span>
|
|
355
|
+
<span class="cline-any cline-no"> </span>
|
|
356
|
+
<span class="cline-any cline-no"> </span>
|
|
357
|
+
<span class="cline-any cline-no"> </span>
|
|
358
|
+
<span class="cline-any cline-no"> </span>
|
|
359
|
+
<span class="cline-any cline-no"> </span>
|
|
360
|
+
<span class="cline-any cline-no"> </span>
|
|
361
|
+
<span class="cline-any cline-no"> </span>
|
|
362
|
+
<span class="cline-any cline-no"> </span>
|
|
363
|
+
<span class="cline-any cline-no"> </span>
|
|
364
|
+
<span class="cline-any cline-no"> </span>
|
|
365
|
+
<span class="cline-any cline-no"> </span>
|
|
366
|
+
<span class="cline-any cline-no"> </span>
|
|
367
|
+
<span class="cline-any cline-no"> </span>
|
|
368
|
+
<span class="cline-any cline-no"> </span>
|
|
369
|
+
<span class="cline-any cline-no"> </span>
|
|
370
|
+
<span class="cline-any cline-no"> </span>
|
|
371
|
+
<span class="cline-any cline-no"> </span>
|
|
372
|
+
<span class="cline-any cline-no"> </span>
|
|
373
|
+
<span class="cline-any cline-no"> </span>
|
|
374
|
+
<span class="cline-any cline-no"> </span>
|
|
375
|
+
<span class="cline-any cline-no"> </span>
|
|
376
|
+
<span class="cline-any cline-no"> </span>
|
|
377
|
+
<span class="cline-any cline-no"> </span>
|
|
378
|
+
<span class="cline-any cline-no"> </span>
|
|
379
|
+
<span class="cline-any cline-no"> </span>
|
|
380
|
+
<span class="cline-any cline-no"> </span>
|
|
381
|
+
<span class="cline-any cline-no"> </span>
|
|
382
|
+
<span class="cline-any cline-no"> </span>
|
|
383
|
+
<span class="cline-any cline-no"> </span>
|
|
384
|
+
<span class="cline-any cline-no"> </span>
|
|
385
|
+
<span class="cline-any cline-no"> </span>
|
|
386
|
+
<span class="cline-any cline-no"> </span>
|
|
387
|
+
<span class="cline-any cline-no"> </span>
|
|
388
|
+
<span class="cline-any cline-no"> </span>
|
|
389
|
+
<span class="cline-any cline-no"> </span>
|
|
390
|
+
<span class="cline-any cline-no"> </span>
|
|
391
|
+
<span class="cline-any cline-no"> </span>
|
|
392
|
+
<span class="cline-any cline-no"> </span>
|
|
393
|
+
<span class="cline-any cline-no"> </span>
|
|
394
|
+
<span class="cline-any cline-no"> </span>
|
|
395
|
+
<span class="cline-any cline-no"> </span>
|
|
396
|
+
<span class="cline-any cline-no"> </span>
|
|
311
397
|
<span class="cline-any cline-no"> </span>
|
|
312
398
|
<span class="cline-any cline-no"> </span>
|
|
313
399
|
<span class="cline-any cline-no"> </span>
|
|
@@ -570,7 +656,7 @@
|
|
|
570
656
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
571
657
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
572
658
|
<span class="cstat-no" title="statement not covered" > debug('Creating features service with options', options)</span>
|
|
573
|
-
<span class="cstat-no" title="statement not covered" >
|
|
659
|
+
<span class="cstat-no" title="statement not covered" > const service = app.createService(options.collection, Object.assign({</span>
|
|
574
660
|
<span class="cstat-no" title="statement not covered" > modelName: 'features',</span>
|
|
575
661
|
<span class="cstat-no" title="statement not covered" > servicesPath,</span>
|
|
576
662
|
<span class="cstat-no" title="statement not covered" > modelsPath,</span>
|
|
@@ -578,28 +664,46 @@
|
|
|
578
664
|
<span class="cstat-no" title="statement not covered" > // FIXME: no real-time events for now since we create big batches,</span>
|
|
579
665
|
<span class="cstat-no" title="statement not covered" > // does not seem to be sufficient also require a hook (see https://github.com/feathersjs/feathers/issues/922)</span>
|
|
580
666
|
<span class="cstat-no" title="statement not covered" > events: ['features'],</span>
|
|
581
|
-
<span class="cstat-no" title="statement not covered" > methods: ['find', 'get', 'create', 'update', 'patch', 'remove', 'heatmap']</span>
|
|
667
|
+
<span class="cstat-no" title="statement not covered" > methods: ['find', 'get', 'create', 'update', 'patch', 'remove', 'heatmap', 'formatGeoJSON']</span>
|
|
582
668
|
<span class="cstat-no" title="statement not covered" > }, options))</span>
|
|
669
|
+
<span class="cstat-no" title="statement not covered" > // As a features service can be created dynamically register default permissions for it</span>
|
|
670
|
+
<span class="cstat-no" title="statement not covered" > permissions.defineAbilities.registerHook((subject, can, cannot) => {</span>
|
|
671
|
+
<span class="cstat-no" title="statement not covered" > can('service', options.collection)</span>
|
|
672
|
+
<span class="cstat-no" title="statement not covered" > can('read', options.collection)</span>
|
|
673
|
+
<span class="cstat-no" title="statement not covered" > })</span>
|
|
674
|
+
<span class="cstat-no" title="statement not covered" > // We then need to update abilities cache</span>
|
|
675
|
+
<span class="cstat-no" title="statement not covered" > const authorisationService = app.getService('authorisations')</span>
|
|
676
|
+
<span class="cstat-no" title="statement not covered" > if (authorisationService) authorisationService.clearAbilities()</span>
|
|
677
|
+
<span class="cstat-no" title="statement not covered" > return service</span>
|
|
583
678
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
584
679
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
585
680
|
<span class="cstat-no" title="statement not covered" >export function removeFeaturesService (options = {}) {</span>
|
|
586
681
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
682
|
+
<span class="cstat-no" title="statement not covered" > debug('Removing features service with options', options)</span>
|
|
587
683
|
<span class="cstat-no" title="statement not covered" > return app.removeService(app.getService(options.collection, options.context))</span>
|
|
588
684
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
589
685
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
590
686
|
<span class="cstat-no" title="statement not covered" >export function createCatalogService (options = {}) {</span>
|
|
591
687
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
592
688
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
689
|
+
<span class="cstat-no" title="statement not covered" > // Read default categories/sublegends config, which can be overriden by options</span>
|
|
690
|
+
<span class="cstat-no" title="statement not covered" > const catalogConfig = app.get('catalog') || {}</span>
|
|
691
|
+
<span class="cstat-no" title="statement not covered" > const categories = catalogConfig.categories</span>
|
|
692
|
+
<span class="cstat-no" title="statement not covered" > const sublegends = catalogConfig.sublegends</span>
|
|
693
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
593
694
|
<span class="cstat-no" title="statement not covered" > debug('Creating catalog service with options', options)</span>
|
|
594
695
|
<span class="cstat-no" title="statement not covered" > return app.createService('catalog', Object.assign({</span>
|
|
595
696
|
<span class="cstat-no" title="statement not covered" > servicesPath,</span>
|
|
596
697
|
<span class="cstat-no" title="statement not covered" > modelsPath,</span>
|
|
597
|
-
<span class="cstat-no" title="statement not covered" > paginate: { default: 1000, max: 1000 }
|
|
698
|
+
<span class="cstat-no" title="statement not covered" > paginate: { default: 1000, max: 1000 },</span>
|
|
699
|
+
<span class="cstat-no" title="statement not covered" > categories,</span>
|
|
700
|
+
<span class="cstat-no" title="statement not covered" > sublegends</span>
|
|
598
701
|
<span class="cstat-no" title="statement not covered" > }, options))</span>
|
|
599
702
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
600
703
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
601
704
|
<span class="cstat-no" title="statement not covered" >export function removeCatalogService (options = {}) {</span>
|
|
602
705
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
706
|
+
<span class="cstat-no" title="statement not covered" > debug('Removing catalog service with options', options)</span>
|
|
603
707
|
<span class="cstat-no" title="statement not covered" > return app.removeService(app.getService('catalog', options.context))</span>
|
|
604
708
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
605
709
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
@@ -616,6 +720,7 @@
|
|
|
616
720
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
617
721
|
<span class="cstat-no" title="statement not covered" >export function removeProjectsService (options = {}) {</span>
|
|
618
722
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
723
|
+
<span class="cstat-no" title="statement not covered" > debug('Removing projects service with options', options)</span>
|
|
619
724
|
<span class="cstat-no" title="statement not covered" > return app.removeService(app.getService('projects', options.context))</span>
|
|
620
725
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
621
726
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
@@ -633,24 +738,51 @@
|
|
|
633
738
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
634
739
|
<span class="cstat-no" title="statement not covered" >export function removeAlertsService (options = {}) {</span>
|
|
635
740
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
741
|
+
<span class="cstat-no" title="statement not covered" > debug('Removing alerts service with options', options)</span>
|
|
636
742
|
<span class="cstat-no" title="statement not covered" > return app.removeService(app.getService('alerts', options.context))</span>
|
|
637
743
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
638
744
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
639
745
|
<span class="cstat-no" title="statement not covered" >// Helper to register service and permissions for a layer</span>
|
|
640
|
-
<span class="cstat-no" title="statement not covered" >export async function createFeaturesServiceForLayer (
|
|
746
|
+
<span class="cstat-no" title="statement not covered" >export async function createFeaturesServiceForLayer (layer, context) {</span>
|
|
641
747
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
642
|
-
<span class="cstat-no" title="statement not covered" >
|
|
643
|
-
<span class="cstat-no" title="statement not covered" > //
|
|
644
|
-
<span class="cstat-no" title="statement not covered" >
|
|
645
|
-
<span class="cstat-no" title="statement not covered" >
|
|
646
|
-
<span class="cstat-no" title="statement not covered" >
|
|
647
|
-
<span class="cstat-no" title="statement not covered" >
|
|
648
|
-
<span class="cstat-no" title="statement not covered" >
|
|
748
|
+
<span class="cstat-no" title="statement not covered" > // Check if service(s) are associated to this layer</span>
|
|
749
|
+
<span class="cstat-no" title="statement not covered" > // Avoid create it twice as we can share services between different layers</span>
|
|
750
|
+
<span class="cstat-no" title="statement not covered" > let probeService = (layer.probeService ? app.getService(layer.probeService, context) : null)</span>
|
|
751
|
+
<span class="cstat-no" title="statement not covered" > if (layer.probeService && !probeService) {</span>
|
|
752
|
+
<span class="cstat-no" title="statement not covered" > probeService = await createFeaturesService.call(app, Object.assign({</span>
|
|
753
|
+
<span class="cstat-no" title="statement not covered" > collection: layer.probeService,</span>
|
|
754
|
+
<span class="cstat-no" title="statement not covered" > context,</span>
|
|
755
|
+
<span class="cstat-no" title="statement not covered" > db: app.db.db(layer.dbName)</span>
|
|
756
|
+
<span class="cstat-no" title="statement not covered" > }, _.pick(layer, ['featureLabel', 'simplifyResult', 'skipEvents', 'simplifyEvents'])))</span>
|
|
757
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
758
|
+
<span class="cstat-no" title="statement not covered" > let service = (layer.service ? app.getService(layer.service, context) : null)</span>
|
|
759
|
+
<span class="cstat-no" title="statement not covered" > if (layer.service && !service) {</span>
|
|
760
|
+
<span class="cstat-no" title="statement not covered" > service = await createFeaturesService.call(app, Object.assign({</span>
|
|
761
|
+
<span class="cstat-no" title="statement not covered" > collection: layer.service,</span>
|
|
762
|
+
<span class="cstat-no" title="statement not covered" > context,</span>
|
|
763
|
+
<span class="cstat-no" title="statement not covered" > db: app.db.db(layer.dbName)</span>
|
|
764
|
+
<span class="cstat-no" title="statement not covered" > }, _.pick(layer, ['ttl', 'featureId', 'featureIdType', 'featureLabel', 'variables', 'simplifyResult', 'skipEvents', 'simplifyEvents'])))</span>
|
|
765
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
766
|
+
<span class="cstat-no" title="statement not covered" > return service || probeService</span>
|
|
767
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
768
|
+
<span class="cstat-no" title="statement not covered" >// Helper to unregister service for a layer</span>
|
|
769
|
+
<span class="cstat-no" title="statement not covered" >export async function removeFeaturesServiceForLayer (layer, context) {</span>
|
|
770
|
+
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
771
|
+
<span class="cstat-no" title="statement not covered" > // Check if service(s) are associated to this layer and remove it</span>
|
|
772
|
+
<span class="cstat-no" title="statement not covered" > let probeService = (layer.probeService ? app.getService(layer.probeService, context) : null)</span>
|
|
773
|
+
<span class="cstat-no" title="statement not covered" > if (layer.probeService && probeService) {</span>
|
|
774
|
+
<span class="cstat-no" title="statement not covered" > probeService = await removeFeaturesService.call(app, { collection: layer.probeService, context })</span>
|
|
775
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
776
|
+
<span class="cstat-no" title="statement not covered" > let service = (layer.service ? app.getService(layer.service, context) : null)</span>
|
|
777
|
+
<span class="cstat-no" title="statement not covered" > if (layer.service && service) {</span>
|
|
778
|
+
<span class="cstat-no" title="statement not covered" > service = await removeFeaturesService.call(app, { collection: layer.service, context })</span>
|
|
779
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
780
|
+
<span class="cstat-no" title="statement not covered" > return service || probeService</span>
|
|
649
781
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
650
782
|
<span class="cstat-no" title="statement not covered" >// Helper to create features from source for a layer</span>
|
|
651
|
-
<span class="cstat-no" title="statement not covered" >export async function createFeaturesForLayer (features, layer, options) {</span>
|
|
783
|
+
<span class="cstat-no" title="statement not covered" >export async function createFeaturesForLayer (features, layer, options = {}) {</span>
|
|
652
784
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
653
|
-
<span class="cstat-no" title="statement not covered" > const featuresService = app.getService(layer.service)</span>
|
|
785
|
+
<span class="cstat-no" title="statement not covered" > const featuresService = app.getService(layer.service, options.context)</span>
|
|
654
786
|
<span class="cstat-no" title="statement not covered" > if (options && options.filter) features = await options.filter(features, layer, app)</span>
|
|
655
787
|
<span class="cstat-no" title="statement not covered" > if (!features.length) return</span>
|
|
656
788
|
<span class="cstat-no" title="statement not covered" > // The unordered option ensure a faster processing when inserting multiple items</span>
|
|
@@ -658,15 +790,11 @@
|
|
|
658
790
|
<span class="cstat-no" title="statement not covered" > await featuresService.create(features, { mongodb: { ordered: false } })</span>
|
|
659
791
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
660
792
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
661
|
-
<span class="cstat-no" title="statement not covered"
|
|
793
|
+
<span class="cstat-no" title="statement not covered" >// Read default layers configured and create, if not found in DB, or update it accordingly</span>
|
|
794
|
+
<span class="cstat-no" title="statement not covered" >// Will also clean and feed default data (ie features) if provided as input file</span>
|
|
795
|
+
<span class="cstat-no" title="statement not covered" >export async function createDefaultCatalogLayers (options = {}) {</span>
|
|
662
796
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
663
|
-
<span class="cstat-no" title="statement not covered" >
|
|
664
|
-
<span class="cstat-no" title="statement not covered" > let context</span>
|
|
665
|
-
<span class="cstat-no" title="statement not covered" > if (typeof options === 'object') {</span>
|
|
666
|
-
<span class="cstat-no" title="statement not covered" > if (options.context) context = options.context</span>
|
|
667
|
-
<span class="cstat-no" title="statement not covered" > else if (options._id) context = options</span>
|
|
668
|
-
<span class="cstat-no" title="statement not covered" > } else if (typeof options === 'string') context = options</span>
|
|
669
|
-
<span class="cstat-no" title="statement not covered" > const catalogService = app.getService('catalog', context)</span>
|
|
797
|
+
<span class="cstat-no" title="statement not covered" > const catalogService = app.getService('catalog', options.context)</span>
|
|
670
798
|
<span class="cstat-no" title="statement not covered" > const catalog = app.get('catalog')</span>
|
|
671
799
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
672
800
|
<span class="cstat-no" title="statement not covered" > const defaultLayers = catalog ? catalog.layers || [] : []</span>
|
|
@@ -674,7 +802,15 @@
|
|
|
674
802
|
<span class="cstat-no" title="statement not covered" > for (let i = 0; i < defaultLayers.length; i++) {</span>
|
|
675
803
|
<span class="cstat-no" title="statement not covered" > const defaultLayer = defaultLayers[i]</span>
|
|
676
804
|
<span class="cstat-no" title="statement not covered" > const createdLayer = _.find(layers, { name: defaultLayer.name })</span>
|
|
805
|
+
<span class="cstat-no" title="statement not covered" > let featuresService</span>
|
|
677
806
|
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
807
|
+
<span class="cstat-no" title="statement not covered" > // Check if service(s) are associated to this layer and create the related service(s) if required</span>
|
|
808
|
+
<span class="cstat-no" title="statement not covered" > if (defaultLayer.service) {</span>
|
|
809
|
+
<span class="cstat-no" title="statement not covered" > featuresService = app.getService(defaultLayer.service)</span>
|
|
810
|
+
<span class="cstat-no" title="statement not covered" > // Avoid create it twice as we can share services between different layers</span>
|
|
811
|
+
<span class="cstat-no" title="statement not covered" > if (featuresService) continue</span>
|
|
812
|
+
<span class="cstat-no" title="statement not covered" > featuresService = await createFeaturesServiceForLayer.call(app, defaultLayer, options.context)</span>
|
|
813
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
678
814
|
<span class="cstat-no" title="statement not covered" > // Create or update the layer removing any option only used to manage layer setup</span>
|
|
679
815
|
<span class="cstat-no" title="statement not covered" > if (!createdLayer) {</span>
|
|
680
816
|
<span class="cstat-no" title="statement not covered" > app.logger.info('Adding default layer (name = ' + defaultLayer.name + ')')</span>
|
|
@@ -686,23 +822,6 @@
|
|
|
686
822
|
<span class="cstat-no" title="statement not covered" > } catch (error) {</span>
|
|
687
823
|
<span class="cstat-no" title="statement not covered" > console.error(error)</span>
|
|
688
824
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
689
|
-
<span class="cstat-no" title="statement not covered" > // Check if service(s) are associated to this layer</span>
|
|
690
|
-
<span class="cstat-no" title="statement not covered" > let featuresService</span>
|
|
691
|
-
<span class="cstat-no" title="statement not covered" > if (defaultLayer.service) {</span>
|
|
692
|
-
<span class="cstat-no" title="statement not covered" > featuresService = app.getService(defaultLayer.service)</span>
|
|
693
|
-
<span class="cstat-no" title="statement not covered" > // Avoid create it twice as we can share services between different layers</span>
|
|
694
|
-
<span class="cstat-no" title="statement not covered" > if (featuresService) continue</span>
|
|
695
|
-
<span class="cstat-no" title="statement not covered" > featuresService = await createFeaturesServiceForLayer.call(app, Object.assign({</span>
|
|
696
|
-
<span class="cstat-no" title="statement not covered" > collection: defaultLayer.service,</span>
|
|
697
|
-
<span class="cstat-no" title="statement not covered" > db: app.db.db(defaultLayer.dbName)</span>
|
|
698
|
-
<span class="cstat-no" title="statement not covered" > }, _.pick(defaultLayer, ['ttl', 'featureId', 'featureIdType', 'featureLabel', 'variables', 'simplifyResult', 'skipEvents', 'simplifyEvents'])))</span>
|
|
699
|
-
<span class="cstat-no" title="statement not covered" > }</span>
|
|
700
|
-
<span class="cstat-no" title="statement not covered" > if (defaultLayer.probeService) {</span>
|
|
701
|
-
<span class="cstat-no" title="statement not covered" > await createFeaturesServiceForLayer.call(app, Object.assign({</span>
|
|
702
|
-
<span class="cstat-no" title="statement not covered" > collection: defaultLayer.probeService,</span>
|
|
703
|
-
<span class="cstat-no" title="statement not covered" > db: app.db.db(defaultLayer.dbName)</span>
|
|
704
|
-
<span class="cstat-no" title="statement not covered" > }, _.pick(defaultLayer, ['featureLabel', 'simplifyResult', 'skipEvents', 'simplifyEvents'])))</span>
|
|
705
|
-
<span class="cstat-no" title="statement not covered" > }</span>
|
|
706
825
|
<span class="cstat-no" title="statement not covered" > // And if we need to initialize some data as well</span>
|
|
707
826
|
<span class="cstat-no" title="statement not covered" > if (!createdLayer && featuresService && (defaultLayer.url || defaultLayer.fileName)) {</span>
|
|
708
827
|
<span class="cstat-no" title="statement not covered" > // Cleanup</span>
|
|
@@ -745,6 +864,16 @@
|
|
|
745
864
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
746
865
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
747
866
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
867
|
+
<span class="cstat-no" title="statement not covered" >// Create the required features services for layers found in catalog</span>
|
|
868
|
+
<span class="cstat-no" title="statement not covered" >export async function createCatalogFeaturesServices (options = {}) {</span>
|
|
869
|
+
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
870
|
+
<span class="cstat-no" title="statement not covered" > const catalogService = app.getService('catalog', options.context)</span>
|
|
871
|
+
<span class="cstat-no" title="statement not covered" > const layers = await catalogService.find({ query: { service: { $exists: true } }, paginate: false, $select: ['service'] })</span>
|
|
872
|
+
<span class="cstat-no" title="statement not covered" > for (let i = 0; i < layers.length; i++) {</span>
|
|
873
|
+
<span class="cstat-no" title="statement not covered" > await createFeaturesServiceForLayer.call(app, layers[i], options.context)</span>
|
|
874
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
875
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
876
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
748
877
|
<span class="cstat-no" title="statement not covered" >export default async function () {</span>
|
|
749
878
|
<span class="cstat-no" title="statement not covered" > const app = this</span>
|
|
750
879
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
@@ -802,7 +931,7 @@
|
|
|
802
931
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
803
932
|
Code coverage generated by
|
|
804
933
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
805
|
-
at
|
|
934
|
+
at 2025-02-18T09:52:45.637Z
|
|
806
935
|
</div>
|
|
807
936
|
<script src="../../../prettify.js"></script>
|
|
808
937
|
<script>
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
102
102
|
Code coverage generated by
|
|
103
103
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
104
|
-
at
|
|
104
|
+
at 2025-02-18T09:52:45.637Z
|
|
105
105
|
</div>
|
|
106
106
|
<script src="../../../../prettify.js"></script>
|
|
107
107
|
<script>
|
|
@@ -424,7 +424,7 @@
|
|
|
424
424
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
425
425
|
Code coverage generated by
|
|
426
426
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
427
|
-
at
|
|
427
|
+
at 2025-02-18T09:52:45.637Z
|
|
428
428
|
</div>
|
|
429
429
|
<script src="../../../../prettify.js"></script>
|
|
430
430
|
<script>
|
|
@@ -451,7 +451,7 @@
|
|
|
451
451
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
452
452
|
Code coverage generated by
|
|
453
453
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
454
|
-
at
|
|
454
|
+
at 2025-02-18T09:52:45.637Z
|
|
455
455
|
</div>
|
|
456
456
|
<script src="../../prettify.js"></script>
|
|
457
457
|
<script>
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
80
80
|
Code coverage generated by
|
|
81
81
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
82
|
-
at
|
|
82
|
+
at 2025-02-18T09:52:45.637Z
|
|
83
83
|
</div>
|
|
84
84
|
<script src="../../prettify.js"></script>
|
|
85
85
|
<script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/153</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/153</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -215,7 +215,9 @@
|
|
|
215
215
|
<a name='L150'></a><a href='#L150'>150</a>
|
|
216
216
|
<a name='L151'></a><a href='#L151'>151</a>
|
|
217
217
|
<a name='L152'></a><a href='#L152'>152</a>
|
|
218
|
-
<a name='L153'></a><a href='#L153'>153</a
|
|
218
|
+
<a name='L153'></a><a href='#L153'>153</a>
|
|
219
|
+
<a name='L154'></a><a href='#L154'>154</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
|
220
|
+
<span class="cline-any cline-no"> </span>
|
|
219
221
|
<span class="cline-any cline-no"> </span>
|
|
220
222
|
<span class="cline-any cline-no"> </span>
|
|
221
223
|
<span class="cline-any cline-no"> </span>
|
|
@@ -373,7 +375,8 @@
|
|
|
373
375
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
374
376
|
<span class="cstat-no" title="statement not covered" >// pack r,g,b in an uint32</span>
|
|
375
377
|
<span class="cstat-no" title="statement not covered" >function packRgb (r, g, b) {</span>
|
|
376
|
-
<span class="cstat-no" title="statement not covered" >
|
|
378
|
+
<span class="cstat-no" title="statement not covered" > // Using 0x3E as high bits to make float interpretation (IEEE-754) of values between [0.125, 0.5]</span>
|
|
379
|
+
<span class="cstat-no" title="statement not covered" > return r | (g << 8) | (b << 16) | (0x3E << 24)</span>
|
|
377
380
|
<span class="cstat-no" title="statement not covered" >}</span>
|
|
378
381
|
<span class="cstat-no" title="statement not covered" ></span>
|
|
379
382
|
<span class="cstat-no" title="statement not covered" >// return packed rgb as a float value</span>
|
|
@@ -526,7 +529,7 @@
|
|
|
526
529
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
527
530
|
Code coverage generated by
|
|
528
531
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
529
|
-
at
|
|
532
|
+
at 2025-02-18T09:52:45.637Z
|
|
530
533
|
</div>
|
|
531
534
|
<script src="../../prettify.js"></script>
|
|
532
535
|
<script>
|
|
@@ -1597,7 +1597,7 @@
|
|
|
1597
1597
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1598
1598
|
Code coverage generated by
|
|
1599
1599
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1600
|
-
at
|
|
1600
|
+
at 2025-02-18T09:52:45.637Z
|
|
1601
1601
|
</div>
|
|
1602
1602
|
<script src="../../prettify.js"></script>
|
|
1603
1603
|
<script>
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
26
|
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/
|
|
28
|
+
<span class='fraction'>0/2712</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
47
|
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/
|
|
49
|
+
<span class='fraction'>0/2712</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -114,13 +114,13 @@
|
|
|
114
114
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
115
115
|
</td>
|
|
116
116
|
<td data-value="0" class="pct low">0%</td>
|
|
117
|
-
<td data-value="
|
|
117
|
+
<td data-value="153" class="abs low">0/153</td>
|
|
118
118
|
<td data-value="0" class="pct low">0%</td>
|
|
119
119
|
<td data-value="1" class="abs low">0/1</td>
|
|
120
120
|
<td data-value="0" class="pct low">0%</td>
|
|
121
121
|
<td data-value="1" class="abs low">0/1</td>
|
|
122
122
|
<td data-value="0" class="pct low">0%</td>
|
|
123
|
-
<td data-value="
|
|
123
|
+
<td data-value="153" class="abs low">0/153</td>
|
|
124
124
|
</tr>
|
|
125
125
|
|
|
126
126
|
<tr>
|
|
@@ -356,7 +356,7 @@
|
|
|
356
356
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
357
357
|
Code coverage generated by
|
|
358
358
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
359
|
-
at
|
|
359
|
+
at 2025-02-18T09:52:45.637Z
|
|
360
360
|
</div>
|
|
361
361
|
<script src="../../prettify.js"></script>
|
|
362
362
|
<script>
|
|
@@ -157,7 +157,7 @@
|
|
|
157
157
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
158
158
|
Code coverage generated by
|
|
159
159
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
160
|
-
at
|
|
160
|
+
at 2025-02-18T09:52:45.637Z
|
|
161
161
|
</div>
|
|
162
162
|
<script src="../../prettify.js"></script>
|
|
163
163
|
<script>
|
|
@@ -541,7 +541,7 @@
|
|
|
541
541
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
542
542
|
Code coverage generated by
|
|
543
543
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
544
|
-
at
|
|
544
|
+
at 2025-02-18T09:52:45.637Z
|
|
545
545
|
</div>
|
|
546
546
|
<script src="../../prettify.js"></script>
|
|
547
547
|
<script>
|
|
@@ -142,7 +142,7 @@
|
|
|
142
142
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
143
143
|
Code coverage generated by
|
|
144
144
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
145
|
-
at
|
|
145
|
+
at 2025-02-18T09:52:45.637Z
|
|
146
146
|
</div>
|
|
147
147
|
<script src="../../prettify.js"></script>
|
|
148
148
|
<script>
|
|
@@ -853,7 +853,7 @@
|
|
|
853
853
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
854
854
|
Code coverage generated by
|
|
855
855
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
856
|
-
at
|
|
856
|
+
at 2025-02-18T09:52:45.637Z
|
|
857
857
|
</div>
|
|
858
858
|
<script src="../../prettify.js"></script>
|
|
859
859
|
<script>
|
|
@@ -811,7 +811,7 @@
|
|
|
811
811
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
812
812
|
Code coverage generated by
|
|
813
813
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
814
|
-
at
|
|
814
|
+
at 2025-02-18T09:52:45.637Z
|
|
815
815
|
</div>
|
|
816
816
|
<script src="../../prettify.js"></script>
|
|
817
817
|
<script>
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
110
110
|
Code coverage generated by
|
|
111
111
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
112
|
-
at
|
|
112
|
+
at 2025-02-18T09:52:45.637Z
|
|
113
113
|
</div>
|
|
114
114
|
<script src="../../prettify.js"></script>
|
|
115
115
|
<script>
|
|
@@ -403,7 +403,7 @@
|
|
|
403
403
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
404
404
|
Code coverage generated by
|
|
405
405
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
406
|
-
at
|
|
406
|
+
at 2025-02-18T09:52:45.637Z
|
|
407
407
|
</div>
|
|
408
408
|
<script src="../../prettify.js"></script>
|
|
409
409
|
<script>
|
|
@@ -259,7 +259,7 @@
|
|
|
259
259
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
260
260
|
Code coverage generated by
|
|
261
261
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
262
|
-
at
|
|
262
|
+
at 2025-02-18T09:52:45.637Z
|
|
263
263
|
</div>
|
|
264
264
|
<script src="../../prettify.js"></script>
|
|
265
265
|
<script>
|
|
@@ -349,7 +349,7 @@
|
|
|
349
349
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
350
350
|
Code coverage generated by
|
|
351
351
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
352
|
-
at
|
|
352
|
+
at 2025-02-18T09:52:45.637Z
|
|
353
353
|
</div>
|
|
354
354
|
<script src="../../prettify.js"></script>
|
|
355
355
|
<script>
|
|
@@ -571,7 +571,7 @@
|
|
|
571
571
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
572
572
|
Code coverage generated by
|
|
573
573
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
574
|
-
at
|
|
574
|
+
at 2025-02-18T09:52:45.637Z
|
|
575
575
|
</div>
|
|
576
576
|
<script src="../../prettify.js"></script>
|
|
577
577
|
<script>
|
|
@@ -1018,7 +1018,7 @@
|
|
|
1018
1018
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
1019
1019
|
Code coverage generated by
|
|
1020
1020
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1021
|
-
at
|
|
1021
|
+
at 2025-02-18T09:52:45.637Z
|
|
1022
1022
|
</div>
|
|
1023
1023
|
<script src="../../prettify.js"></script>
|
|
1024
1024
|
<script>
|