@kalisio/kdk 2.5.3 → 2.6.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/.github/workflows/main.yaml +35 -6
- package/.vscode/settings.json +5 -0
- package/client.globe.js +8 -0
- package/client.js +8 -0
- package/client.map.js +8 -0
- package/core/api/hooks/hooks.push.js +3 -2
- package/core/api/hooks/hooks.tags.js +56 -0
- package/core/api/models/tags.model.mongodb.js +8 -0
- package/core/api/services/index.js +33 -2
- package/core/api/services/tags/tags.hooks.js +47 -0
- package/core/client/api.js +5 -5
- package/core/client/components/KActivity.vue +3 -2
- package/core/client/components/KChip.vue +2 -2
- package/core/client/components/KEditor.vue +3 -1
- package/core/client/components/KFollower.vue +4 -4
- package/core/client/components/KStore.vue +1 -1
- package/core/client/components/KTab.vue +20 -7
- package/core/client/components/account/KProfile.vue +9 -25
- package/core/client/components/action/KAction.vue +10 -10
- package/core/client/components/action/KToggleFullscreenAction.vue +2 -11
- package/core/client/components/app/KHome.vue +3 -2
- package/core/client/components/collection/KFilter.vue +5 -4
- package/core/client/components/collection/KGrid.vue +5 -1
- package/core/client/components/collection/KItemsFilter.vue +47 -0
- package/core/client/components/collection/KItemsSorter.vue +42 -0
- package/core/client/components/collection/KScrollDown.vue +2 -2
- package/core/client/components/collection/KSearchFilterControl.vue +3 -2
- package/core/client/components/collection/KSorter.vue +33 -37
- package/core/client/components/collection/KTagsFilterControl.vue +14 -40
- package/core/client/components/collection/KTagsFilterView.vue +10 -45
- package/core/client/components/collection/KTimeFilterControl.vue +6 -7
- package/core/client/components/collection/KTimeFilterView.vue +13 -22
- package/core/client/components/collection/KTimeLine.vue +18 -9
- package/core/client/components/form/KColorField.vue +13 -6
- package/core/client/components/form/KColorScaleField.vue +7 -12
- package/core/client/components/form/KFileField.vue +118 -89
- package/core/client/components/form/KForm.vue +30 -18
- package/core/client/components/form/KIconField.vue +4 -1
- package/core/client/components/form/KNumberField.vue +9 -2
- package/core/client/components/form/KSelectField.vue +1 -4
- package/core/client/components/form/KTagField.vue +229 -0
- package/core/client/components/form/KTextField.vue +4 -0
- package/core/client/components/form/KTextareaField.vue +3 -1
- package/core/client/components/input/KShapePicker.vue +3 -3
- package/core/client/components/layout/KFab.vue +32 -20
- package/core/client/components/layout/KPage.vue +11 -6
- package/core/client/components/layout/KWindow.vue +6 -1
- package/core/client/components/media/index.js +2 -6
- package/core/client/components/menu/KMenu.vue +12 -10
- package/core/client/components/menu/KSubMenu.vue +12 -12
- package/core/client/components/messages/KMessageCard.vue +13 -12
- package/core/client/components/messages/KMessageComposer.vue +13 -9
- package/core/client/components/messages/KMessagesTimeLine.vue +16 -8
- package/core/client/components/tags/KTagFilter.vue +99 -0
- package/core/client/components/tags/KTagItem.vue +65 -0
- package/core/client/components/tags/KTagManager.vue +198 -0
- package/core/client/components/tags/KTagSelection.vue +82 -0
- package/core/client/components/time/KDate.vue +3 -17
- package/core/client/components/time/KDateTime.vue +1 -1
- package/core/client/components/time/KTime.vue +0 -4
- package/core/client/composables/collection-filter.js +41 -2
- package/core/client/composables/collection.js +3 -3
- package/core/client/composables/index.js +1 -0
- package/core/client/composables/pwa.js +13 -0
- package/core/client/composables/session.js +7 -8
- package/core/client/composables/user.js +36 -0
- package/core/client/directives/index.js +1 -0
- package/core/client/directives/v-drop-file.js +174 -0
- package/core/client/document.js +2 -1
- package/core/client/exporter.js +17 -3
- package/core/client/i18n/core_en.json +34 -7
- package/core/client/i18n/core_fr.json +36 -9
- package/core/client/i18n.js +26 -11
- package/core/client/layout.js +5 -5
- package/core/client/mixins/mixin.base-activity.js +8 -5
- package/core/client/mixins/mixin.base-editor.js +2 -1
- package/core/client/mixins/mixin.base-field.js +3 -2
- package/core/client/mixins/mixin.base-item.js +12 -10
- package/core/client/mixins/mixin.service.js +3 -1
- package/core/client/platform.js +0 -3
- package/core/client/readers/reader.json.js +2 -2
- package/core/client/utils/index.js +2 -0
- package/core/client/utils/utils.collection.js +6 -6
- package/core/client/utils/utils.colors.js +473 -173
- package/core/client/utils/utils.files.js +19 -0
- package/core/client/utils/utils.locale.js +13 -17
- package/core/client/utils/utils.services.js +27 -0
- package/core/client/utils/utils.shapes.js +2 -2
- package/core/client/utils/utils.tags.js +17 -0
- package/core/client/utils/utils.tours.js +31 -0
- package/core/common/permissions.js +3 -0
- package/core/common/schemas/tags.update.json +35 -0
- package/core/common/schemas/users.update-profile.json +1 -1
- package/core/common/utils.js +5 -5
- package/coverage/core/api/application.js.html +464 -464
- package/coverage/core/api/authentication.js.html +219 -351
- package/coverage/core/api/db.js.html +194 -209
- package/coverage/core/api/hooks/hooks.authentication.js.html +208 -34
- package/coverage/core/api/hooks/hooks.authorisations.js.html +717 -432
- package/coverage/core/api/hooks/hooks.groups.js.html +52 -52
- package/coverage/core/api/hooks/hooks.logger.js.html +43 -43
- package/coverage/core/api/hooks/hooks.model.js.html +300 -312
- package/coverage/core/api/hooks/hooks.organisations.js.html +264 -264
- package/coverage/core/api/hooks/hooks.push.js.html +107 -119
- package/coverage/core/api/hooks/hooks.query.js.html +279 -279
- package/coverage/core/api/hooks/hooks.schemas.js.html +135 -135
- package/coverage/core/api/hooks/hooks.service.js.html +28 -28
- package/coverage/core/api/hooks/hooks.storage.js.html +7 -7
- package/coverage/core/api/hooks/hooks.users.js.html +478 -205
- package/coverage/core/api/hooks/index.html +132 -102
- package/coverage/core/api/hooks/index.js.html +19 -13
- package/coverage/core/api/index.html +69 -54
- package/coverage/core/api/index.js.html +25 -25
- package/coverage/core/api/marshall.js.html +127 -127
- package/coverage/core/api/models/groups.model.mongodb.js.html +26 -26
- package/coverage/core/api/models/index.html +66 -21
- package/coverage/core/api/models/messages.model.mongodb.js.html +27 -39
- package/coverage/core/api/models/organisations.model.mongodb.js.html +16 -16
- package/coverage/core/api/models/tags.model.mongodb.js.html +30 -30
- package/coverage/core/api/models/users.model.mongodb.js.html +11 -11
- package/coverage/core/api/services/account/account.hooks.js.html +46 -46
- package/coverage/core/api/services/account/account.service.js.html +139 -139
- package/coverage/core/api/services/account/index.html +22 -22
- package/coverage/core/api/services/authorisations/authorisations.hooks.js.html +34 -34
- package/coverage/core/api/services/authorisations/authorisations.service.js.html +230 -221
- package/coverage/core/api/services/authorisations/index.html +20 -20
- package/coverage/core/api/services/databases/databases.hooks.js.html +1 -1
- package/coverage/core/api/services/databases/databases.service.js.html +1 -1
- package/coverage/core/api/services/databases/index.html +1 -1
- package/coverage/core/api/services/groups/groups.hooks.js.html +72 -72
- package/coverage/core/api/services/groups/index.html +21 -21
- package/coverage/core/api/services/import-export/import-export.hooks.js.html +76 -76
- package/coverage/core/api/services/import-export/import-export.service.js.html +32 -32
- package/coverage/core/api/services/import-export/index.html +32 -32
- package/coverage/core/api/services/index.html +21 -21
- package/coverage/core/api/services/index.js.html +195 -171
- package/coverage/core/api/services/mailer/index.html +32 -32
- package/coverage/core/api/services/mailer/mailer.hooks.js.html +80 -80
- package/coverage/core/api/services/mailer/mailer.service.js.html +32 -32
- package/coverage/core/api/services/messages/index.html +21 -21
- package/coverage/core/api/services/messages/messages.hooks.js.html +76 -94
- package/coverage/core/api/services/organisations/index.html +32 -32
- package/coverage/core/api/services/organisations/organisations.hooks.js.html +72 -72
- package/coverage/core/api/services/organisations/organisations.service.js.html +163 -163
- package/coverage/core/api/services/push/index.html +32 -32
- package/coverage/core/api/services/push/push.hooks.js.html +80 -80
- package/coverage/core/api/services/push/push.service.js.html +34 -34
- package/coverage/core/api/services/storage/index.html +29 -29
- package/coverage/core/api/services/storage/storage.hooks.js.html +80 -80
- package/coverage/core/api/services/storage/storage.service.js.html +37 -37
- package/coverage/core/api/services/tags/index.html +21 -21
- package/coverage/core/api/services/tags/tags.hooks.js.html +72 -72
- package/coverage/core/api/services/users/index.html +12 -27
- package/coverage/core/api/services/users/users.hooks.js.html +84 -87
- package/coverage/core/api/utils.js.html +1 -1
- package/coverage/core/common/errors.js.html +2 -2
- package/coverage/core/common/index.html +32 -47
- package/coverage/core/common/index.js.html +11 -11
- package/coverage/core/common/permissions.js.html +579 -264
- package/coverage/core/common/schema.js.html +26 -26
- package/coverage/core/common/utils.js.html +59 -65
- package/coverage/index.html +286 -256
- package/coverage/lcov-report/core/api/application.js.html +464 -464
- package/coverage/lcov-report/core/api/authentication.js.html +219 -351
- package/coverage/lcov-report/core/api/db.js.html +194 -209
- package/coverage/lcov-report/core/api/hooks/hooks.authentication.js.html +208 -34
- package/coverage/lcov-report/core/api/hooks/hooks.authorisations.js.html +717 -432
- package/coverage/lcov-report/core/api/hooks/hooks.groups.js.html +52 -52
- package/coverage/lcov-report/core/api/hooks/hooks.logger.js.html +43 -43
- package/coverage/lcov-report/core/api/hooks/hooks.model.js.html +300 -312
- package/coverage/lcov-report/core/api/hooks/hooks.organisations.js.html +264 -264
- package/coverage/lcov-report/core/api/hooks/hooks.push.js.html +107 -119
- package/coverage/lcov-report/core/api/hooks/hooks.query.js.html +279 -279
- package/coverage/lcov-report/core/api/hooks/hooks.schemas.js.html +135 -135
- package/coverage/lcov-report/core/api/hooks/hooks.service.js.html +28 -28
- package/coverage/lcov-report/core/api/hooks/hooks.storage.js.html +7 -7
- package/coverage/lcov-report/core/api/hooks/hooks.users.js.html +478 -205
- package/coverage/lcov-report/core/api/hooks/index.html +132 -102
- package/coverage/lcov-report/core/api/hooks/index.js.html +19 -13
- package/coverage/lcov-report/core/api/index.html +69 -54
- package/coverage/lcov-report/core/api/index.js.html +25 -25
- package/coverage/lcov-report/core/api/marshall.js.html +127 -127
- package/coverage/lcov-report/core/api/models/groups.model.mongodb.js.html +26 -26
- package/coverage/lcov-report/core/api/models/index.html +66 -21
- package/coverage/lcov-report/core/api/models/messages.model.mongodb.js.html +27 -39
- package/coverage/lcov-report/core/api/models/organisations.model.mongodb.js.html +16 -16
- package/coverage/lcov-report/core/api/models/tags.model.mongodb.js.html +30 -30
- package/coverage/lcov-report/core/api/models/users.model.mongodb.js.html +11 -11
- package/coverage/lcov-report/core/api/services/account/account.hooks.js.html +46 -46
- package/coverage/lcov-report/core/api/services/account/account.service.js.html +139 -139
- package/coverage/lcov-report/core/api/services/account/index.html +22 -22
- package/coverage/lcov-report/core/api/services/authorisations/authorisations.hooks.js.html +34 -34
- package/coverage/lcov-report/core/api/services/authorisations/authorisations.service.js.html +230 -221
- package/coverage/lcov-report/core/api/services/authorisations/index.html +20 -20
- package/coverage/lcov-report/core/api/services/databases/databases.hooks.js.html +1 -1
- package/coverage/lcov-report/core/api/services/databases/databases.service.js.html +1 -1
- package/coverage/lcov-report/core/api/services/databases/index.html +1 -1
- package/coverage/lcov-report/core/api/services/groups/groups.hooks.js.html +72 -72
- package/coverage/lcov-report/core/api/services/groups/index.html +21 -21
- package/coverage/lcov-report/core/api/services/import-export/import-export.hooks.js.html +76 -76
- package/coverage/lcov-report/core/api/services/import-export/import-export.service.js.html +32 -32
- package/coverage/lcov-report/core/api/services/import-export/index.html +32 -32
- package/coverage/lcov-report/core/api/services/index.html +21 -21
- package/coverage/lcov-report/core/api/services/index.js.html +195 -171
- package/coverage/lcov-report/core/api/services/mailer/index.html +32 -32
- package/coverage/lcov-report/core/api/services/mailer/mailer.hooks.js.html +80 -80
- package/coverage/lcov-report/core/api/services/mailer/mailer.service.js.html +32 -32
- package/coverage/lcov-report/core/api/services/messages/index.html +21 -21
- package/coverage/lcov-report/core/api/services/messages/messages.hooks.js.html +76 -94
- package/coverage/lcov-report/core/api/services/organisations/index.html +32 -32
- package/coverage/lcov-report/core/api/services/organisations/organisations.hooks.js.html +72 -72
- package/coverage/lcov-report/core/api/services/organisations/organisations.service.js.html +163 -163
- package/coverage/lcov-report/core/api/services/push/index.html +32 -32
- package/coverage/lcov-report/core/api/services/push/push.hooks.js.html +80 -80
- package/coverage/lcov-report/core/api/services/push/push.service.js.html +34 -34
- package/coverage/lcov-report/core/api/services/storage/index.html +29 -29
- package/coverage/lcov-report/core/api/services/storage/storage.hooks.js.html +80 -80
- package/coverage/lcov-report/core/api/services/storage/storage.service.js.html +37 -37
- package/coverage/lcov-report/core/api/services/tags/index.html +21 -21
- package/coverage/lcov-report/core/api/services/tags/tags.hooks.js.html +72 -72
- package/coverage/lcov-report/core/api/services/users/index.html +12 -27
- package/coverage/lcov-report/core/api/services/users/users.hooks.js.html +84 -87
- package/coverage/lcov-report/core/api/utils.js.html +1 -1
- package/coverage/lcov-report/core/common/errors.js.html +2 -2
- package/coverage/lcov-report/core/common/index.html +32 -47
- package/coverage/lcov-report/core/common/index.js.html +11 -11
- package/coverage/lcov-report/core/common/permissions.js.html +579 -264
- package/coverage/lcov-report/core/common/schema.js.html +26 -26
- package/coverage/lcov-report/core/common/utils.js.html +59 -65
- package/coverage/lcov-report/index.html +286 -256
- package/coverage/lcov-report/map/api/hooks/hooks.catalog.js.html +257 -353
- package/coverage/lcov-report/map/api/hooks/hooks.features.js.html +218 -218
- package/coverage/lcov-report/map/api/hooks/hooks.query.js.html +810 -795
- package/coverage/lcov-report/map/api/hooks/index.html +54 -54
- package/coverage/lcov-report/map/api/hooks/index.js.html +16 -16
- package/coverage/lcov-report/map/api/index.html +32 -32
- package/coverage/lcov-report/map/api/index.js.html +46 -46
- package/coverage/lcov-report/map/api/marshall.js.html +72 -72
- package/coverage/lcov-report/map/api/models/alerts.model.mongodb.js.html +24 -24
- package/coverage/lcov-report/map/api/models/catalog.model.mongodb.js.html +27 -69
- package/coverage/lcov-report/map/api/models/features.model.mongodb.js.html +80 -80
- package/coverage/lcov-report/map/api/models/index.html +54 -69
- package/coverage/lcov-report/map/api/models/projects.model.mongodb.js.html +26 -26
- package/coverage/lcov-report/map/api/services/alerts/alerts.hooks.js.html +136 -136
- package/coverage/lcov-report/map/api/services/alerts/alerts.service.js.html +343 -343
- package/coverage/lcov-report/map/api/services/alerts/index.html +32 -32
- package/coverage/lcov-report/map/api/services/catalog/catalog.hooks.js.html +160 -178
- package/coverage/lcov-report/map/api/services/catalog/index.html +21 -21
- 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 +114 -183
- package/coverage/lcov-report/map/api/services/features/features.service.js.html +56 -359
- package/coverage/lcov-report/map/api/services/features/index.html +31 -31
- package/coverage/lcov-report/map/api/services/index.html +21 -21
- package/coverage/lcov-report/map/api/services/index.js.html +258 -495
- package/coverage/lcov-report/map/api/services/projects/index.html +21 -21
- package/coverage/lcov-report/map/api/services/projects/projects.hooks.js.html +237 -237
- package/coverage/lcov-report/map/common/dynamic-grid-source.js.html +68 -68
- package/coverage/lcov-report/map/common/errors.js.html +16 -16
- package/coverage/lcov-report/map/common/geotiff-grid-source.js.html +267 -270
- package/coverage/lcov-report/map/common/grid.js.html +554 -554
- package/coverage/lcov-report/map/common/index.html +158 -158
- package/coverage/lcov-report/map/common/index.js.html +68 -68
- package/coverage/lcov-report/map/common/meteo-model-grid-source.js.html +73 -73
- package/coverage/lcov-report/map/common/moment-utils.js.html +18 -18
- package/coverage/lcov-report/map/common/opendap-grid-source.js.html +484 -484
- package/coverage/lcov-report/map/common/opendap-utils.js.html +353 -353
- package/coverage/lcov-report/map/common/permissions.js.html +36 -42
- package/coverage/lcov-report/map/common/time-based-grid-source.js.html +59 -59
- package/coverage/lcov-report/map/common/tms-utils.js.html +6 -6
- package/coverage/lcov-report/map/common/wcs-grid-source.js.html +190 -190
- package/coverage/lcov-report/map/common/wcs-utils.js.html +339 -339
- package/coverage/lcov-report/map/common/weacast-grid-source.js.html +345 -345
- 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 +7793 -8564
- package/coverage/map/api/hooks/hooks.catalog.js.html +257 -353
- package/coverage/map/api/hooks/hooks.features.js.html +218 -218
- package/coverage/map/api/hooks/hooks.query.js.html +810 -795
- package/coverage/map/api/hooks/index.html +54 -54
- package/coverage/map/api/hooks/index.js.html +16 -16
- package/coverage/map/api/index.html +32 -32
- package/coverage/map/api/index.js.html +46 -46
- package/coverage/map/api/marshall.js.html +72 -72
- package/coverage/map/api/models/alerts.model.mongodb.js.html +24 -24
- package/coverage/map/api/models/catalog.model.mongodb.js.html +27 -69
- package/coverage/map/api/models/features.model.mongodb.js.html +80 -80
- package/coverage/map/api/models/index.html +54 -69
- package/coverage/map/api/models/projects.model.mongodb.js.html +26 -26
- package/coverage/map/api/services/alerts/alerts.hooks.js.html +136 -136
- package/coverage/map/api/services/alerts/alerts.service.js.html +343 -343
- package/coverage/map/api/services/alerts/index.html +32 -32
- package/coverage/map/api/services/catalog/catalog.hooks.js.html +160 -178
- package/coverage/map/api/services/catalog/index.html +21 -21
- 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 +114 -183
- package/coverage/map/api/services/features/features.service.js.html +56 -359
- package/coverage/map/api/services/features/index.html +31 -31
- package/coverage/map/api/services/index.html +21 -21
- package/coverage/map/api/services/index.js.html +258 -495
- package/coverage/map/api/services/projects/index.html +21 -21
- package/coverage/map/api/services/projects/projects.hooks.js.html +237 -237
- package/coverage/map/common/dynamic-grid-source.js.html +68 -68
- package/coverage/map/common/errors.js.html +16 -16
- package/coverage/map/common/geotiff-grid-source.js.html +267 -270
- package/coverage/map/common/grid.js.html +554 -554
- package/coverage/map/common/index.html +158 -158
- package/coverage/map/common/index.js.html +68 -68
- package/coverage/map/common/meteo-model-grid-source.js.html +73 -73
- package/coverage/map/common/moment-utils.js.html +18 -18
- package/coverage/map/common/opendap-grid-source.js.html +484 -484
- package/coverage/map/common/opendap-utils.js.html +353 -353
- package/coverage/map/common/permissions.js.html +36 -42
- package/coverage/map/common/time-based-grid-source.js.html +59 -59
- package/coverage/map/common/tms-utils.js.html +6 -6
- package/coverage/map/common/wcs-grid-source.js.html +190 -190
- package/coverage/map/common/wcs-utils.js.html +339 -339
- package/coverage/map/common/weacast-grid-source.js.html +345 -345
- 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-151166-1723543324307-0.json +1 -0
- package/coverage/tmp/coverage-151178-1723543324283-0.json +1 -0
- package/coverage/tmp/coverage-151189-1723543324271-0.json +1 -0
- package/coverage/tmp/coverage-151201-1723543324248-0.json +1 -0
- package/coverage/tmp/coverage-151208-1723543324227-0.json +1 -0
- package/extras/configs/panes.top.js +33 -11
- package/extras/configs/stickies.js +26 -16
- package/extras/configs/widgets.left.js +13 -1
- package/extras/libs/jsts.min.js +8 -0
- package/{test/client/core/account.js → extras/tests/core/account.mjs} +4 -4
- package/extras/tests/core/api.mjs +114 -0
- package/{test/client/core/collection.js → extras/tests/core/collection.mjs} +8 -8
- package/{test/client/core/dialogs.js → extras/tests/core/dialogs.mjs} +1 -1
- package/extras/tests/core/index.mjs +9 -0
- package/{test/client/core/layout.js → extras/tests/core/layout.mjs} +7 -3
- package/{test/client/core/runner.js → extras/tests/core/runner.mjs} +3 -3
- package/{test/client/core/screens.js → extras/tests/core/screens.mjs} +1 -1
- package/{test/client/core/utils.js → extras/tests/core/utils.mjs} +79 -26
- package/extras/tests/index.mjs +4 -0
- package/{test/client/map/api.js → extras/tests/map/api.mjs} +1 -1
- package/{test/client/map/catalog.js → extras/tests/map/catalog.mjs} +18 -18
- package/{test/client/map/controls.js → extras/tests/map/controls.mjs} +3 -3
- package/extras/tests/map/index.mjs +5 -0
- package/{test/client/map/time.js → extras/tests/map/time.mjs} +3 -3
- package/{test/client/map/utils.js → extras/tests/map/utils.mjs} +6 -5
- package/extras/tours/fab.js +36 -0
- package/extras/tours/layout.js +49 -0
- package/extras/tours/pane.left.js +78 -0
- package/extras/tours/pane.right.js +145 -0
- package/extras/tours/pane.top.js +239 -0
- package/map/api/config/layers.cjs +28 -13
- package/map/api/hooks/hooks.query.js +12 -7
- package/map/api/models/catalog.model.mongodb.js +17 -6
- package/map/api/services/catalog/catalog.hooks.js +1 -1
- package/map/api/services/index.js +18 -1
- package/map/client/cesium/utils/utils.cesium.js +25 -65
- package/map/client/cesium/utils/utils.features.js +1 -0
- package/map/client/cesium/utils/utils.geojson.js +1 -0
- package/map/client/cesium/utils/utils.style.js +7 -6
- package/map/client/components/KFeatureEditor.vue +3 -3
- package/map/client/components/KFeaturesChart.vue +4 -4
- package/map/client/components/KFeaturesFilterEditor.vue +19 -13
- package/map/client/components/KFeaturesFilterManager.vue +7 -4
- package/map/client/components/KFeaturesTable.vue +2 -2
- package/map/client/components/KLayerEditor.vue +6 -6
- package/map/client/components/KMeasureTool.vue +2 -1
- package/map/client/components/catalog/KBaseLayersSelector.vue +1 -1
- package/map/client/components/catalog/KCategoryItem.vue +15 -1
- package/map/client/components/catalog/KConnectLayer.vue +2 -2
- package/map/client/components/catalog/KCreateView.vue +3 -2
- package/map/client/components/catalog/KFilteredLayerItem.vue +26 -6
- package/map/client/components/catalog/KImportLayer.vue +6 -3
- package/map/client/components/catalog/KLayerCategories.vue +6 -6
- package/map/client/components/catalog/KLayerItem.vue +12 -2
- package/map/client/components/catalog/KLayersList.vue +180 -0
- package/map/client/components/catalog/KLayersPanel.vue +146 -36
- package/map/client/components/catalog/KLayersSelector.vue +96 -48
- package/map/client/components/catalog/KProjectEditor.vue +0 -9
- package/map/client/components/catalog/KProjectSelector.vue +3 -2
- package/map/client/components/catalog/KProjectsPanel.vue +23 -8
- package/map/client/components/catalog/KViewsPanel.vue +18 -8
- package/map/client/components/catalog/KWeatherLayersSelector.vue +3 -3
- package/map/client/components/form/KDirectionField.vue +3 -6
- package/map/client/components/form/KLayerCategoryField.vue +2 -2
- package/map/client/components/form/KOwsServiceField.vue +25 -24
- package/map/client/components/form/KSelectLayersField.vue +4 -4
- package/map/client/components/form/KSelectViewsField.vue +4 -4
- package/map/client/components/legend/KLayerLegend.vue +11 -2
- package/map/client/components/legend/KLegend.vue +44 -51
- package/map/client/components/location/KLocationCardSection.vue +6 -7
- package/map/client/components/location/KLocationMap.vue +23 -13
- package/map/client/components/stickies/KPosition.vue +5 -0
- package/map/client/components/stickies/KZoomControl.vue +70 -0
- package/map/client/components/styles/KLayerStyleAction.vue +59 -12
- package/map/client/components/styles/KStyleEditor.vue +71 -8
- package/map/client/components/styles/KStyleEditorSection.vue +82 -33
- package/map/client/components/styles/KStyleManager.vue +119 -59
- package/map/client/components/styles/KStylePreview.vue +9 -25
- package/map/client/components/styles/KStylePreviewItem.vue +22 -1
- package/map/client/components/tools/KSearchTool.vue +1 -1
- package/map/client/components/widget/KElevationProfile.vue +20 -17
- package/map/client/components/widget/KInformationBox.vue +5 -5
- package/map/client/components/widget/KMapillaryViewer.vue +2 -1
- package/map/client/components/widget/KTimeSeries.vue +11 -9
- package/map/client/globe.js +2 -0
- package/map/client/i18n/map_en.json +30 -7
- package/map/client/i18n/map_fr.json +30 -7
- package/map/client/leaflet/GradientPath.js +61 -24
- package/map/client/leaflet/ShapeMarker.js +12 -5
- package/map/client/leaflet/TiledMeshLayer.js +3 -3
- package/map/client/leaflet/utils/utils.geojson.js +66 -8
- package/map/client/leaflet/utils/utils.style.js +14 -15
- package/map/client/mixins/globe/mixin.base-globe.js +190 -34
- package/map/client/mixins/globe/mixin.file-layers.js +3 -0
- package/map/client/mixins/globe/mixin.geojson-layers.js +179 -31
- package/map/client/mixins/globe/mixin.opendap-layers.js +2 -1
- package/map/client/mixins/globe/mixin.style.js +23 -1
- package/map/client/mixins/globe/mixin.tooltip.js +14 -2
- package/map/client/mixins/map/mixin.base-map.js +156 -58
- package/map/client/mixins/map/mixin.edit-layers.js +18 -15
- package/map/client/mixins/map/mixin.geojson-layers.js +181 -106
- package/map/client/mixins/map/mixin.heatmap-layers.js +3 -2
- package/map/client/mixins/map/mixin.map-activity.js +6 -1
- package/map/client/mixins/map/mixin.mapillary-layers.js +2 -1
- package/map/client/mixins/map/mixin.pmtiles-layers.js +3 -3
- package/map/client/mixins/map/mixin.tiled-mesh-layers.js +3 -2
- package/map/client/mixins/map/mixin.tiled-wind-layers.js +3 -2
- package/map/client/mixins/mixin.activity.js +199 -55
- package/map/client/mixins/mixin.context.js +11 -11
- package/map/client/mixins/mixin.feature-service.js +11 -9
- package/map/client/mixins/mixin.weacast.js +5 -3
- package/map/client/readers/reader.geojson.js +3 -1
- package/map/client/utils/utils.capture.js +3 -3
- package/map/client/utils/utils.catalog.js +9 -5
- package/map/client/utils/utils.features.js +120 -54
- package/map/client/utils/utils.js +25 -10
- package/map/client/utils/utils.layers.js +148 -24
- package/map/client/utils/utils.location.js +26 -9
- package/map/client/utils/utils.schema.js +2 -1
- package/map/client/utils/utils.style.js +53 -9
- package/map/common/geotiff-grid-source.js +1 -3
- package/map/common/opendap-utils.js +0 -1
- package/map/common/tms-utils.js +0 -1
- package/map/common/wcs-utils.js +0 -1
- package/map/common/wfs-utils.js +0 -1
- package/map/common/wms-utils.js +7 -1
- package/map/common/wmts-utils.js +0 -1
- package/package.json +12 -12
- package/scripts/init_runner.sh +3 -3
- package/scripts/kash/CHANGELOG.md +27 -0
- package/scripts/kash/kash.sh +556 -237
- package/scripts/kash/scripts/run_tests.sh +44 -5
- package/scripts/setup_workspace.sh +23 -13
- package/test/api/core/config/default.cjs +2 -1
- package/test/api/core/tags.test.js +62 -0
- package/test/api/core/test-log-2024-04-22.log +84 -0
- package/test/api/core/{test-log-2025-02-05.log → test-log-2024-04-23.log} +3 -3
- package/test/api/core/test-log-2024-08-13.log +3 -0
- package/test/api/map/config/default.cjs +2 -1
- package/test/api/map/config/layers.json +9 -0
- package/test/api/map/data/openradiation.json +13811 -0
- package/test/api/map/grid-sources.test.js +1 -3
- package/test/api/map/index.test.js +60 -1
- package/test/api/map/style.test.js +30 -1
- package/test/api/map/test-log-2025-03-08.log +0 -0
- package/test.api.js +1 -1
- package/vite/App.vue +18 -0
- package/vite/AppWithGlobe.vue +84 -0
- package/vite/GlobeActivity.vue +58 -0
- package/vite/MapActivity.vue +63 -0
- package/vite/MapActivityWithGlobe.vue +63 -0
- package/vite/README.md +169 -0
- package/vite/config.js +221 -0
- package/vite/index_with_globe.html +50 -0
- package/vite/index_with_map.html +50 -0
- package/vite/package.json +173 -0
- package/vite/quasar.variables.scss +17 -0
- package/vite/vite.config.js +166 -0
- package/vite/yarn.lock +11641 -0
- package/core/client/components/media/KImageViewer.vue +0 -68
- package/core/client/components/media/KMarkdownViewer.vue +0 -55
- package/core/client/components/media/KMediaBrowser.vue +0 -301
- package/coverage/core/api/services/users/users.service.js.html +0 -100
- package/coverage/core/common/utils.offline.js.html +0 -199
- package/coverage/lcov-report/core/api/services/users/users.service.js.html +0 -100
- package/coverage/lcov-report/core/common/utils.offline.js.html +0 -199
- package/coverage/lcov-report/map/api/models/styles.model.mongodb.js.html +0 -112
- package/coverage/lcov-report/map/api/services/styles/index.html +0 -116
- package/coverage/lcov-report/map/api/services/styles/styles.hooks.js.html +0 -196
- package/coverage/map/api/models/styles.model.mongodb.js.html +0 -112
- package/coverage/map/api/services/styles/index.html +0 -116
- package/coverage/map/api/services/styles/styles.hooks.js.html +0 -196
- package/coverage/tmp/coverage-151198-1753351220086-0.json +0 -1
- package/coverage/tmp/coverage-151210-1753351220070-0.json +0 -1
- package/coverage/tmp/coverage-151221-1753351129816-0.json +0 -1
- package/coverage/tmp/coverage-151233-1753351129803-0.json +0 -1
- package/coverage/tmp/coverage-151240-1753351129770-0.json +0 -1
- package/coverage/tmp/coverage-151307-1753351220058-0.json +0 -1
- package/coverage/tmp/coverage-151319-1753351220044-0.json +0 -1
- package/coverage/tmp/coverage-151326-1753351220010-0.json +0 -1
- package/extras/tours/core/account-profile.js +0 -32
- package/extras/tours/core/account.js +0 -143
- package/extras/tours/core/add-member.js +0 -75
- package/extras/tours/core/add-tag.js +0 -13
- package/extras/tours/core/create-group.js +0 -19
- package/extras/tours/core/create-organisation.js +0 -19
- package/extras/tours/core/create-tag.js +0 -26
- package/extras/tours/core/edit-member-role.js +0 -13
- package/extras/tours/core/groups.js +0 -65
- package/extras/tours/core/join-group.js +0 -13
- package/extras/tours/core/login.js +0 -41
- package/extras/tours/core/members.js +0 -108
- package/extras/tours/core/register.js +0 -61
- package/extras/tours/core/send-reset-password.js +0 -14
- package/extras/tours/core/tags.js +0 -65
- package/extras/tours/map/catalog-panel.js +0 -112
- package/extras/tours/map/fab.js +0 -26
- package/extras/tours/map/navigation-bar.js +0 -187
- package/extras/tours/map/side-nav.js +0 -36
- package/test/api/core/test-log-2025-05-21.log +0 -15
- package/test/api/core/test-log-2025-06-25.log +0 -9
- package/test/api/core/test-log-2025-07-24.log +0 -44
- package/test/api/map/test-log-2025-05-27.log +0 -13
- package/test/api/map/test-log-2025-06-23.log +0 -7
- package/test/api/map/test-log-2025-07-24.log +0 -11
- package/test/client/core/api.js +0 -361
- package/test/client/core/index.js +0 -9
- package/test/client/index.js +0 -4
- package/test/client/map/index.js +0 -5
- package/test.client.js +0 -1
- /package/{test/client/core/time.js → extras/tests/core/time.mjs} +0 -0
- /package/extras/tours/{map/add-layer.js → add-layer.js} +0 -0
- /package/extras/tours/{map/catalog-categories.js → catalog-categories.js} +0 -0
- /package/extras/tours/{map/connect-layer.js → connect-layer.js} +0 -0
- /package/extras/tours/{map/create-layer.js → create-layer.js} +0 -0
- /package/extras/tours/{map/create-view.js → create-view.js} +0 -0
- /package/extras/tours/{map/import-layer.js → import-layer.js} +0 -0
- /package/extras/tours/{map/timeline.js → pane.bottom.js} +0 -0
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">66.89% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>194/290</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">61.22% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>30/49</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">52.94% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>9/17</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">66.89% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>194/290</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
</div>
|
|
62
62
|
</template>
|
|
63
63
|
</div>
|
|
64
|
-
<div class='status-line
|
|
64
|
+
<div class='status-line medium'></div>
|
|
65
65
|
<pre><table class="coverage">
|
|
66
66
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
67
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -353,84 +353,7 @@
|
|
|
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>
|
|
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">2x</span>
|
|
361
|
-
<span class="cline-any cline-yes">2x</span>
|
|
362
|
-
<span class="cline-any cline-yes">2x</span>
|
|
363
|
-
<span class="cline-any cline-yes">2x</span>
|
|
364
|
-
<span class="cline-any cline-yes">2x</span>
|
|
365
|
-
<span class="cline-any cline-yes">2x</span>
|
|
366
|
-
<span class="cline-any cline-yes">2x</span>
|
|
367
|
-
<span class="cline-any cline-yes">2x</span>
|
|
368
|
-
<span class="cline-any cline-yes">2x</span>
|
|
369
|
-
<span class="cline-any cline-yes">2x</span>
|
|
370
|
-
<span class="cline-any cline-yes">2x</span>
|
|
371
|
-
<span class="cline-any cline-yes">2x</span>
|
|
372
|
-
<span class="cline-any cline-yes">2x</span>
|
|
373
|
-
<span class="cline-any cline-yes">2x</span>
|
|
374
|
-
<span class="cline-any cline-yes">2x</span>
|
|
375
|
-
<span class="cline-any cline-yes">2x</span>
|
|
376
|
-
<span class="cline-any cline-yes">5x</span>
|
|
377
|
-
<span class="cline-any cline-yes">29x</span>
|
|
378
|
-
<span class="cline-any cline-yes">29x</span>
|
|
379
|
-
<span class="cline-any cline-yes">29x</span>
|
|
380
|
-
<span class="cline-any cline-yes">29x</span>
|
|
381
|
-
<span class="cline-any cline-yes">29x</span>
|
|
382
|
-
<span class="cline-any cline-yes">29x</span>
|
|
383
|
-
<span class="cline-any cline-yes">29x</span>
|
|
384
|
-
<span class="cline-any cline-yes">5x</span>
|
|
385
|
-
<span class="cline-any cline-yes">2x</span>
|
|
386
|
-
<span class="cline-any cline-yes">2x</span>
|
|
387
|
-
<span class="cline-any cline-yes">2x</span>
|
|
388
|
-
<span class="cline-any cline-yes">9x</span>
|
|
389
|
-
<span class="cline-any cline-yes">86x</span>
|
|
390
|
-
<span class="cline-any cline-yes">86x</span>
|
|
391
|
-
<span class="cline-any cline-yes">86x</span>
|
|
392
|
-
<span class="cline-any cline-yes">86x</span>
|
|
393
|
-
<span class="cline-any cline-yes">86x</span>
|
|
394
|
-
<span class="cline-any cline-yes">86x</span>
|
|
395
|
-
<span class="cline-any cline-yes">86x</span>
|
|
396
|
-
<span class="cline-any cline-yes">9x</span>
|
|
397
|
-
<span class="cline-any cline-yes">2x</span>
|
|
398
|
-
<span class="cline-any cline-yes">2x</span>
|
|
399
|
-
<span class="cline-any cline-yes">2x</span>
|
|
400
|
-
<span class="cline-any cline-yes">2x</span>
|
|
401
|
-
<span class="cline-any cline-yes">2x</span>
|
|
402
|
-
<span class="cline-any cline-yes">2x</span>
|
|
403
|
-
<span class="cline-any cline-yes">2x</span>
|
|
404
|
-
<span class="cline-any cline-yes">5x</span>
|
|
405
|
-
<span class="cline-any cline-yes">18x</span>
|
|
406
|
-
<span class="cline-any cline-yes">18x</span>
|
|
407
|
-
<span class="cline-any cline-yes">18x</span>
|
|
408
|
-
<span class="cline-any cline-yes">18x</span>
|
|
409
|
-
<span class="cline-any cline-yes">18x</span>
|
|
410
|
-
<span class="cline-any cline-yes">18x</span>
|
|
411
|
-
<span class="cline-any cline-yes">18x</span>
|
|
412
|
-
<span class="cline-any cline-yes">27x</span>
|
|
413
|
-
<span class="cline-any cline-yes">27x</span>
|
|
414
|
-
<span class="cline-any cline-yes">24x</span>
|
|
415
|
-
<span class="cline-any cline-yes">24x</span>
|
|
416
|
-
<span class="cline-any cline-yes">24x</span>
|
|
417
|
-
<span class="cline-any cline-yes">9x</span>
|
|
418
|
-
<span class="cline-any cline-yes">9x</span>
|
|
419
|
-
<span class="cline-any cline-yes">27x</span>
|
|
420
|
-
<span class="cline-any cline-no"> </span>
|
|
421
|
-
<span class="cline-any cline-no"> </span>
|
|
422
|
-
<span class="cline-any cline-yes">18x</span>
|
|
423
|
-
<span class="cline-any cline-yes">18x</span>
|
|
424
|
-
<span class="cline-any cline-yes">18x</span>
|
|
425
|
-
<span class="cline-any cline-yes">18x</span>
|
|
426
|
-
<span class="cline-any cline-yes">18x</span>
|
|
427
|
-
<span class="cline-any cline-yes">5x</span>
|
|
428
|
-
<span class="cline-any cline-yes">2x</span>
|
|
429
|
-
<span class="cline-any cline-yes">2x</span>
|
|
430
|
-
<span class="cline-any cline-yes">2x</span>
|
|
431
|
-
<span class="cline-any cline-yes">2x</span>
|
|
432
|
-
<span class="cline-any cline-yes">2x</span>
|
|
433
|
-
<span class="cline-any cline-yes">2x</span>
|
|
356
|
+
<a name='L291'></a><a href='#L291'>291</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
|
|
434
357
|
<span class="cline-any cline-yes">1x</span>
|
|
435
358
|
<span class="cline-any cline-yes">1x</span>
|
|
436
359
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -441,32 +364,32 @@
|
|
|
441
364
|
<span class="cline-any cline-yes">1x</span>
|
|
442
365
|
<span class="cline-any cline-yes">1x</span>
|
|
443
366
|
<span class="cline-any cline-yes">1x</span>
|
|
444
|
-
<span class="cline-any cline-yes">2x</span>
|
|
445
|
-
<span class="cline-any cline-yes">2x</span>
|
|
446
|
-
<span class="cline-any cline-yes">2x</span>
|
|
447
|
-
<span class="cline-any cline-yes">2x</span>
|
|
448
|
-
<span class="cline-any cline-yes">6x</span>
|
|
449
|
-
<span class="cline-any cline-yes">121x</span>
|
|
450
|
-
<span class="cline-any cline-yes">121x</span>
|
|
451
|
-
<span class="cline-any cline-yes">121x</span>
|
|
452
|
-
<span class="cline-any cline-yes">121x</span>
|
|
453
|
-
<span class="cline-any cline-yes">121x</span>
|
|
454
|
-
<span class="cline-any cline-yes">121x</span>
|
|
455
|
-
<span class="cline-any cline-yes">121x</span>
|
|
456
|
-
<span class="cline-any cline-yes">121x</span>
|
|
457
|
-
<span class="cline-any cline-yes">121x</span>
|
|
458
|
-
<span class="cline-any cline-yes">121x</span>
|
|
459
|
-
<span class="cline-any cline-yes">6x</span>
|
|
460
|
-
<span class="cline-any cline-yes">2x</span>
|
|
461
|
-
<span class="cline-any cline-yes">2x</span>
|
|
462
|
-
<span class="cline-any cline-yes">2x</span>
|
|
463
367
|
<span class="cline-any cline-yes">1x</span>
|
|
464
368
|
<span class="cline-any cline-yes">1x</span>
|
|
465
369
|
<span class="cline-any cline-yes">1x</span>
|
|
466
370
|
<span class="cline-any cline-yes">1x</span>
|
|
467
371
|
<span class="cline-any cline-yes">1x</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-yes">1x</span>
|
|
468
382
|
<span class="cline-any cline-yes">1x</span>
|
|
469
383
|
<span class="cline-any cline-yes">1x</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>
|
|
470
393
|
<span class="cline-any cline-yes">1x</span>
|
|
471
394
|
<span class="cline-any cline-yes">1x</span>
|
|
472
395
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -475,8 +398,28 @@
|
|
|
475
398
|
<span class="cline-any cline-yes">1x</span>
|
|
476
399
|
<span class="cline-any cline-yes">1x</span>
|
|
477
400
|
<span class="cline-any cline-yes">2x</span>
|
|
478
|
-
<span class="cline-any cline-
|
|
479
|
-
<span class="cline-any cline-
|
|
401
|
+
<span class="cline-any cline-no"> </span>
|
|
402
|
+
<span class="cline-any cline-no"> </span>
|
|
403
|
+
<span class="cline-any cline-no"> </span>
|
|
404
|
+
<span class="cline-any cline-no"> </span>
|
|
405
|
+
<span class="cline-any cline-no"> </span>
|
|
406
|
+
<span class="cline-any cline-no"> </span>
|
|
407
|
+
<span class="cline-any cline-no"> </span>
|
|
408
|
+
<span class="cline-any cline-no"> </span>
|
|
409
|
+
<span class="cline-any cline-no"> </span>
|
|
410
|
+
<span class="cline-any cline-no"> </span>
|
|
411
|
+
<span class="cline-any cline-no"> </span>
|
|
412
|
+
<span class="cline-any cline-no"> </span>
|
|
413
|
+
<span class="cline-any cline-no"> </span>
|
|
414
|
+
<span class="cline-any cline-no"> </span>
|
|
415
|
+
<span class="cline-any cline-no"> </span>
|
|
416
|
+
<span class="cline-any cline-no"> </span>
|
|
417
|
+
<span class="cline-any cline-no"> </span>
|
|
418
|
+
<span class="cline-any cline-no"> </span>
|
|
419
|
+
<span class="cline-any cline-no"> </span>
|
|
420
|
+
<span class="cline-any cline-no"> </span>
|
|
421
|
+
<span class="cline-any cline-no"> </span>
|
|
422
|
+
<span class="cline-any cline-no"> </span>
|
|
480
423
|
<span class="cline-any cline-yes">2x</span>
|
|
481
424
|
<span class="cline-any cline-yes">1x</span>
|
|
482
425
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -489,67 +432,6 @@
|
|
|
489
432
|
<span class="cline-any cline-yes">1x</span>
|
|
490
433
|
<span class="cline-any cline-yes">1x</span>
|
|
491
434
|
<span class="cline-any cline-yes">1x</span>
|
|
492
|
-
<span class="cline-any cline-yes">2x</span>
|
|
493
|
-
<span class="cline-any cline-yes">2x</span>
|
|
494
|
-
<span class="cline-any cline-yes">2x</span>
|
|
495
|
-
<span class="cline-any cline-yes">100x</span>
|
|
496
|
-
<span class="cline-any cline-yes">164x</span>
|
|
497
|
-
<span class="cline-any cline-yes">164x</span>
|
|
498
|
-
<span class="cline-any cline-yes">36x</span>
|
|
499
|
-
<span class="cline-any cline-yes">36x</span>
|
|
500
|
-
<span class="cline-any cline-yes">36x</span>
|
|
501
|
-
<span class="cline-any cline-yes">100x</span>
|
|
502
|
-
<span class="cline-any cline-yes">100x</span>
|
|
503
|
-
<span class="cline-any cline-yes">2x</span>
|
|
504
|
-
<span class="cline-any cline-yes">2x</span>
|
|
505
|
-
<span class="cline-any cline-yes">2x</span>
|
|
506
|
-
<span class="cline-any cline-yes">6x</span>
|
|
507
|
-
<span class="cline-any cline-yes">104x</span>
|
|
508
|
-
<span class="cline-any cline-yes">104x</span>
|
|
509
|
-
<span class="cline-any cline-yes">104x</span>
|
|
510
|
-
<span class="cline-any cline-yes">104x</span>
|
|
511
|
-
<span class="cline-any cline-yes">104x</span>
|
|
512
|
-
<span class="cline-any cline-yes">104x</span>
|
|
513
|
-
<span class="cline-any cline-yes">104x</span>
|
|
514
|
-
<span class="cline-any cline-yes">104x</span>
|
|
515
|
-
<span class="cline-any cline-yes">6x</span>
|
|
516
|
-
<span class="cline-any cline-yes">2x</span>
|
|
517
|
-
<span class="cline-any cline-yes">2x</span>
|
|
518
|
-
<span class="cline-any cline-yes">2x</span>
|
|
519
|
-
<span class="cline-any cline-yes">39x</span>
|
|
520
|
-
<span class="cline-any cline-yes">58x</span>
|
|
521
|
-
<span class="cline-any cline-yes">58x</span>
|
|
522
|
-
<span class="cline-any cline-yes">39x</span>
|
|
523
|
-
<span class="cline-any cline-yes">39x</span>
|
|
524
|
-
<span class="cline-any cline-yes">2x</span>
|
|
525
|
-
<span class="cline-any cline-yes">2x</span>
|
|
526
|
-
<span class="cline-any cline-yes">2x</span>
|
|
527
|
-
<span class="cline-any cline-yes">5x</span>
|
|
528
|
-
<span class="cline-any cline-yes">33x</span>
|
|
529
|
-
<span class="cline-any cline-yes">33x</span>
|
|
530
|
-
<span class="cline-any cline-yes">33x</span>
|
|
531
|
-
<span class="cline-any cline-yes">33x</span>
|
|
532
|
-
<span class="cline-any cline-yes">33x</span>
|
|
533
|
-
<span class="cline-any cline-yes">33x</span>
|
|
534
|
-
<span class="cline-any cline-yes">33x</span>
|
|
535
|
-
<span class="cline-any cline-yes">33x</span>
|
|
536
|
-
<span class="cline-any cline-yes">5x</span>
|
|
537
|
-
<span class="cline-any cline-yes">2x</span>
|
|
538
|
-
<span class="cline-any cline-yes">2x</span>
|
|
539
|
-
<span class="cline-any cline-yes">20x</span>
|
|
540
|
-
<span class="cline-any cline-no"> </span>
|
|
541
|
-
<span class="cline-any cline-no"> </span>
|
|
542
|
-
<span class="cline-any cline-yes">20x</span>
|
|
543
|
-
<span class="cline-any cline-yes">20x</span>
|
|
544
|
-
<span class="cline-any cline-yes">20x</span>
|
|
545
|
-
<span class="cline-any cline-yes">20x</span>
|
|
546
|
-
<span class="cline-any cline-yes">19x</span>
|
|
547
|
-
<span class="cline-any cline-yes">19x</span>
|
|
548
|
-
<span class="cline-any cline-yes">19x</span>
|
|
549
|
-
<span class="cline-any cline-yes">20x</span>
|
|
550
|
-
<span class="cline-any cline-yes">20x</span>
|
|
551
|
-
<span class="cline-any cline-yes">2x</span>
|
|
552
|
-
<span class="cline-any cline-yes">2x</span>
|
|
553
435
|
<span class="cline-any cline-yes">1x</span>
|
|
554
436
|
<span class="cline-any cline-yes">1x</span>
|
|
555
437
|
<span class="cline-any cline-yes">1x</span>
|
|
@@ -560,74 +442,184 @@
|
|
|
560
442
|
<span class="cline-any cline-yes">1x</span>
|
|
561
443
|
<span class="cline-any cline-yes">1x</span>
|
|
562
444
|
<span class="cline-any cline-yes">1x</span>
|
|
563
|
-
<span class="cline-any cline-yes">2x</span>
|
|
564
|
-
<span class="cline-any cline-yes">2x</span>
|
|
565
|
-
<span class="cline-any cline-yes">2x</span>
|
|
566
445
|
<span class="cline-any cline-yes">1x</span>
|
|
446
|
+
<span class="cline-any cline-yes">1x</span>
|
|
447
|
+
<span class="cline-any cline-yes">1x</span>
|
|
448
|
+
<span class="cline-any cline-yes">1x</span>
|
|
449
|
+
<span class="cline-any cline-yes">1x</span>
|
|
450
|
+
<span class="cline-any cline-yes">1x</span>
|
|
451
|
+
<span class="cline-any cline-yes">1x</span>
|
|
452
|
+
<span class="cline-any cline-yes">1x</span>
|
|
453
|
+
<span class="cline-any cline-yes">1x</span>
|
|
454
|
+
<span class="cline-any cline-yes">1x</span>
|
|
455
|
+
<span class="cline-any cline-yes">1x</span>
|
|
456
|
+
<span class="cline-any cline-yes">1x</span>
|
|
457
|
+
<span class="cline-any cline-yes">1x</span>
|
|
458
|
+
<span class="cline-any cline-yes">1x</span>
|
|
459
|
+
<span class="cline-any cline-yes">1x</span>
|
|
460
|
+
<span class="cline-any cline-yes">1x</span>
|
|
461
|
+
<span class="cline-any cline-yes">1x</span>
|
|
462
|
+
<span class="cline-any cline-yes">1x</span>
|
|
463
|
+
<span class="cline-any cline-yes">1x</span>
|
|
464
|
+
<span class="cline-any cline-yes">1x</span>
|
|
465
|
+
<span class="cline-any cline-yes">1x</span>
|
|
466
|
+
<span class="cline-any cline-yes">1x</span>
|
|
467
|
+
<span class="cline-any cline-yes">1x</span>
|
|
468
|
+
<span class="cline-any cline-yes">1x</span>
|
|
469
|
+
<span class="cline-any cline-yes">1x</span>
|
|
470
|
+
<span class="cline-any cline-yes">1x</span>
|
|
471
|
+
<span class="cline-any cline-yes">1x</span>
|
|
472
|
+
<span class="cline-any cline-yes">1x</span>
|
|
473
|
+
<span class="cline-any cline-yes">1x</span>
|
|
474
|
+
<span class="cline-any cline-yes">1x</span>
|
|
475
|
+
<span class="cline-any cline-yes">1x</span>
|
|
476
|
+
<span class="cline-any cline-yes">1x</span>
|
|
477
|
+
<span class="cline-any cline-yes">1x</span>
|
|
478
|
+
<span class="cline-any cline-yes">1x</span>
|
|
479
|
+
<span class="cline-any cline-yes">1x</span>
|
|
480
|
+
<span class="cline-any cline-yes">1x</span>
|
|
481
|
+
<span class="cline-any cline-yes">1x</span>
|
|
482
|
+
<span class="cline-any cline-yes">1x</span>
|
|
483
|
+
<span class="cline-any cline-yes">1x</span>
|
|
484
|
+
<span class="cline-any cline-yes">1x</span>
|
|
485
|
+
<span class="cline-any cline-yes">1x</span>
|
|
486
|
+
<span class="cline-any cline-yes">1x</span>
|
|
487
|
+
<span class="cline-any cline-yes">1x</span>
|
|
488
|
+
<span class="cline-any cline-yes">1x</span>
|
|
489
|
+
<span class="cline-any cline-yes">1x</span>
|
|
490
|
+
<span class="cline-any cline-yes">1x</span>
|
|
491
|
+
<span class="cline-any cline-no"> </span>
|
|
492
|
+
<span class="cline-any cline-no"> </span>
|
|
493
|
+
<span class="cline-any cline-no"> </span>
|
|
494
|
+
<span class="cline-any cline-no"> </span>
|
|
495
|
+
<span class="cline-any cline-no"> </span>
|
|
496
|
+
<span class="cline-any cline-no"> </span>
|
|
567
497
|
<span class="cline-any cline-no"> </span>
|
|
568
498
|
<span class="cline-any cline-no"> </span>
|
|
569
499
|
<span class="cline-any cline-yes">1x</span>
|
|
570
500
|
<span class="cline-any cline-yes">1x</span>
|
|
571
501
|
<span class="cline-any cline-yes">1x</span>
|
|
502
|
+
<span class="cline-any cline-no"> </span>
|
|
503
|
+
<span class="cline-any cline-no"> </span>
|
|
504
|
+
<span class="cline-any cline-no"> </span>
|
|
505
|
+
<span class="cline-any cline-no"> </span>
|
|
506
|
+
<span class="cline-any cline-no"> </span>
|
|
507
|
+
<span class="cline-any cline-no"> </span>
|
|
508
|
+
<span class="cline-any cline-no"> </span>
|
|
509
|
+
<span class="cline-any cline-no"> </span>
|
|
510
|
+
<span class="cline-any cline-no"> </span>
|
|
511
|
+
<span class="cline-any cline-no"> </span>
|
|
572
512
|
<span class="cline-any cline-yes">1x</span>
|
|
573
513
|
<span class="cline-any cline-yes">1x</span>
|
|
574
514
|
<span class="cline-any cline-yes">1x</span>
|
|
515
|
+
<span class="cline-any cline-no"> </span>
|
|
516
|
+
<span class="cline-any cline-no"> </span>
|
|
517
|
+
<span class="cline-any cline-no"> </span>
|
|
518
|
+
<span class="cline-any cline-no"> </span>
|
|
519
|
+
<span class="cline-any cline-no"> </span>
|
|
575
520
|
<span class="cline-any cline-yes">1x</span>
|
|
576
521
|
<span class="cline-any cline-yes">1x</span>
|
|
577
522
|
<span class="cline-any cline-yes">1x</span>
|
|
523
|
+
<span class="cline-any cline-no"> </span>
|
|
524
|
+
<span class="cline-any cline-no"> </span>
|
|
525
|
+
<span class="cline-any cline-no"> </span>
|
|
526
|
+
<span class="cline-any cline-no"> </span>
|
|
527
|
+
<span class="cline-any cline-no"> </span>
|
|
528
|
+
<span class="cline-any cline-no"> </span>
|
|
529
|
+
<span class="cline-any cline-no"> </span>
|
|
530
|
+
<span class="cline-any cline-no"> </span>
|
|
531
|
+
<span class="cline-any cline-no"> </span>
|
|
532
|
+
<span class="cline-any cline-no"> </span>
|
|
578
533
|
<span class="cline-any cline-yes">1x</span>
|
|
579
534
|
<span class="cline-any cline-yes">1x</span>
|
|
580
|
-
<span class="cline-any cline-
|
|
581
|
-
<span class="cline-any cline-
|
|
582
|
-
<span class="cline-any cline-
|
|
583
|
-
<span class="cline-any cline-
|
|
584
|
-
<span class="cline-any cline-
|
|
585
|
-
<span class="cline-any cline-
|
|
586
|
-
<span class="cline-any cline-
|
|
535
|
+
<span class="cline-any cline-no"> </span>
|
|
536
|
+
<span class="cline-any cline-no"> </span>
|
|
537
|
+
<span class="cline-any cline-no"> </span>
|
|
538
|
+
<span class="cline-any cline-no"> </span>
|
|
539
|
+
<span class="cline-any cline-no"> </span>
|
|
540
|
+
<span class="cline-any cline-no"> </span>
|
|
541
|
+
<span class="cline-any cline-no"> </span>
|
|
542
|
+
<span class="cline-any cline-no"> </span>
|
|
543
|
+
<span class="cline-any cline-no"> </span>
|
|
544
|
+
<span class="cline-any cline-no"> </span>
|
|
545
|
+
<span class="cline-any cline-no"> </span>
|
|
546
|
+
<span class="cline-any cline-no"> </span>
|
|
547
|
+
<span class="cline-any cline-yes">1x</span>
|
|
548
|
+
<span class="cline-any cline-yes">1x</span>
|
|
549
|
+
<span class="cline-any cline-yes">1x</span>
|
|
550
|
+
<span class="cline-any cline-yes">1x</span>
|
|
551
|
+
<span class="cline-any cline-yes">1x</span>
|
|
552
|
+
<span class="cline-any cline-yes">1x</span>
|
|
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>
|
|
563
|
+
<span class="cline-any cline-no"> </span>
|
|
564
|
+
<span class="cline-any cline-no"> </span>
|
|
565
|
+
<span class="cline-any cline-yes">1x</span>
|
|
566
|
+
<span class="cline-any cline-yes">1x</span>
|
|
567
|
+
<span class="cline-any cline-yes">1x</span>
|
|
568
|
+
<span class="cline-any cline-yes">1x</span>
|
|
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>
|
|
580
|
+
<span class="cline-any cline-no"> </span>
|
|
581
|
+
<span class="cline-any cline-no"> </span>
|
|
582
|
+
<span class="cline-any cline-no"> </span>
|
|
583
|
+
<span class="cline-any cline-no"> </span>
|
|
584
|
+
<span class="cline-any cline-no"> </span>
|
|
585
|
+
<span class="cline-any cline-no"> </span>
|
|
586
|
+
<span class="cline-any cline-no"> </span>
|
|
587
587
|
<span class="cline-any cline-yes">1x</span>
|
|
588
588
|
<span class="cline-any cline-yes">1x</span>
|
|
589
589
|
<span class="cline-any cline-yes">1x</span>
|
|
590
|
-
<span class="cline-any cline-yes">55x</span>
|
|
591
|
-
<span class="cline-any cline-yes">2x</span>
|
|
592
|
-
<span class="cline-any cline-yes">2x</span>
|
|
593
|
-
<span class="cline-any cline-yes">2x</span>
|
|
594
|
-
<span class="cline-any cline-yes">10x</span>
|
|
595
|
-
<span class="cline-any cline-yes">20x</span>
|
|
596
|
-
<span class="cline-any cline-yes">16x</span>
|
|
597
|
-
<span class="cline-any cline-yes">16x</span>
|
|
598
|
-
<span class="cline-any cline-yes">16x</span>
|
|
599
|
-
<span class="cline-any cline-yes">20x</span>
|
|
600
|
-
<span class="cline-any cline-yes">20x</span>
|
|
601
|
-
<span class="cline-any cline-yes">20x</span>
|
|
602
|
-
<span class="cline-any cline-yes">20x</span>
|
|
603
|
-
<span class="cline-any cline-yes">20x</span>
|
|
604
|
-
<span class="cline-any cline-yes">11x</span>
|
|
605
|
-
<span class="cline-any cline-yes">11x</span>
|
|
606
|
-
<span class="cline-any cline-yes">11x</span>
|
|
607
|
-
<span class="cline-any cline-yes">11x</span>
|
|
608
|
-
<span class="cline-any cline-yes">11x</span>
|
|
609
|
-
<span class="cline-any cline-yes">11x</span>
|
|
610
|
-
<span class="cline-any cline-yes">11x</span>
|
|
611
|
-
<span class="cline-any cline-yes">4x</span>
|
|
612
590
|
<span class="cline-any cline-yes">4x</span>
|
|
613
591
|
<span class="cline-any cline-yes">4x</span>
|
|
614
592
|
<span class="cline-any cline-yes">4x</span>
|
|
615
593
|
<span class="cline-any cline-yes">4x</span>
|
|
616
594
|
<span class="cline-any cline-yes">4x</span>
|
|
617
595
|
<span class="cline-any cline-yes">4x</span>
|
|
596
|
+
<span class="cline-any cline-yes">2x</span>
|
|
597
|
+
<span class="cline-any cline-yes">2x</span>
|
|
598
|
+
<span class="cline-any cline-yes">2x</span>
|
|
599
|
+
<span class="cline-any cline-yes">2x</span>
|
|
600
|
+
<span class="cline-any cline-yes">2x</span>
|
|
601
|
+
<span class="cline-any cline-yes">2x</span>
|
|
602
|
+
<span class="cline-any cline-yes">2x</span>
|
|
603
|
+
<span class="cline-any cline-yes">2x</span>
|
|
604
|
+
<span class="cline-any cline-yes">2x</span>
|
|
605
|
+
<span class="cline-any cline-yes">2x</span>
|
|
606
|
+
<span class="cline-any cline-yes">2x</span>
|
|
607
|
+
<span class="cline-any cline-yes">2x</span>
|
|
608
|
+
<span class="cline-any cline-yes">2x</span>
|
|
609
|
+
<span class="cline-any cline-yes">2x</span>
|
|
618
610
|
<span class="cline-any cline-yes">1x</span>
|
|
619
|
-
<span class="cline-any cline-yes">4x</span>
|
|
620
|
-
<span class="cline-any cline-yes">4x</span>
|
|
621
|
-
<span class="cline-any cline-yes">4x</span>
|
|
622
|
-
<span class="cline-any cline-yes">11x</span>
|
|
623
|
-
<span class="cline-any cline-yes">16x</span>
|
|
624
|
-
<span class="cline-any cline-yes">20x</span>
|
|
625
|
-
<span class="cline-any cline-yes">10x</span>
|
|
626
611
|
<span class="cline-any cline-yes">2x</span>
|
|
627
612
|
<span class="cline-any cline-yes">2x</span>
|
|
628
613
|
<span class="cline-any cline-yes">2x</span>
|
|
629
614
|
<span class="cline-any cline-yes">2x</span>
|
|
630
615
|
<span class="cline-any cline-yes">2x</span>
|
|
616
|
+
<span class="cline-any cline-yes">4x</span>
|
|
617
|
+
<span class="cline-any cline-yes">4x</span>
|
|
618
|
+
<span class="cline-any cline-yes">1x</span>
|
|
619
|
+
<span class="cline-any cline-yes">1x</span>
|
|
620
|
+
<span class="cline-any cline-yes">1x</span>
|
|
621
|
+
<span class="cline-any cline-yes">1x</span>
|
|
622
|
+
<span class="cline-any cline-yes">1x</span>
|
|
631
623
|
<span class="cline-any cline-yes">3x</span>
|
|
632
624
|
<span class="cline-any cline-yes">3x</span>
|
|
633
625
|
<span class="cline-any cline-no"> </span>
|
|
@@ -666,28 +658,28 @@ const sift = siftModule.default
|
|
|
666
658
|
const debug = makeDebug('kdk:core:model:hooks')
|
|
667
659
|
|
|
668
660
|
// Need to convert from server side types (moment dates) to basic JS types when "writing" to DB adapters
|
|
669
|
-
export function processTimes (properties) {
|
|
670
|
-
return function (hook) {
|
|
671
|
-
let items = getItems(hook)
|
|
672
|
-
const isArray = Array.isArray(items)
|
|
673
|
-
items = (isArray ? items : [items])
|
|
674
|
-
items.forEach(item => marshallTimes(item, properties))
|
|
675
|
-
replaceItems(hook, isArray ? items : items[0])
|
|
676
|
-
return hook
|
|
677
|
-
}
|
|
678
|
-
}
|
|
661
|
+
export <span class="fstat-no" title="function not covered" >function processTimes (properties) {</span>
|
|
662
|
+
<span class="cstat-no" title="statement not covered" > return function (hook) {</span>
|
|
663
|
+
<span class="cstat-no" title="statement not covered" > let items = getItems(hook)</span>
|
|
664
|
+
<span class="cstat-no" title="statement not covered" > const isArray = Array.isArray(items)</span>
|
|
665
|
+
<span class="cstat-no" title="statement not covered" > items = (isArray ? items : [items])</span>
|
|
666
|
+
<span class="cstat-no" title="statement not covered" > items.forEach(item => marshallTimes(item, properties))</span>
|
|
667
|
+
<span class="cstat-no" title="statement not covered" > replaceItems(hook, isArray ? items : items[0])</span>
|
|
668
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
669
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
670
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
679
671
|
|
|
680
672
|
// Need to convert back to server side types (moment dates) from basic JS types when "reading" from DB adapters
|
|
681
|
-
export function unprocessTimes (properties) {
|
|
682
|
-
return function (hook) {
|
|
683
|
-
let items = getItems(hook)
|
|
684
|
-
const isArray = Array.isArray(items)
|
|
685
|
-
items = (isArray ? items : [items])
|
|
686
|
-
items.forEach(item => unmarshallTimes(item, properties))
|
|
687
|
-
replaceItems(hook, isArray ? items : items[0])
|
|
688
|
-
return hook
|
|
689
|
-
}
|
|
690
|
-
}
|
|
673
|
+
export <span class="fstat-no" title="function not covered" >function unprocessTimes (properties) {</span>
|
|
674
|
+
<span class="cstat-no" title="statement not covered" > return function (hook) {</span>
|
|
675
|
+
<span class="cstat-no" title="statement not covered" > let items = getItems(hook)</span>
|
|
676
|
+
<span class="cstat-no" title="statement not covered" > const isArray = Array.isArray(items)</span>
|
|
677
|
+
<span class="cstat-no" title="statement not covered" > items = (isArray ? items : [items])</span>
|
|
678
|
+
<span class="cstat-no" title="statement not covered" > items.forEach(item => unmarshallTimes(item, properties))</span>
|
|
679
|
+
<span class="cstat-no" title="statement not covered" > replaceItems(hook, isArray ? items : items[0])</span>
|
|
680
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
681
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
682
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
691
683
|
|
|
692
684
|
// The hook serialize allows to copy/move some properties within the objects holded by the hook
|
|
693
685
|
// It applies an array of rules defined by:
|
|
@@ -696,28 +688,28 @@ export function unprocessTimes (properties) {
|
|
|
696
688
|
// - delete: a flag to define whether the hook has to delete the source property
|
|
697
689
|
export function serialize (rules, options = {}) {
|
|
698
690
|
return function (hook) {
|
|
699
|
-
// Retrieve the items from the hook
|
|
700
|
-
let items = getItems(hook)
|
|
701
|
-
const isArray = Array.isArray(items)
|
|
702
|
-
|
|
703
|
-
// Apply the rules for each item
|
|
704
|
-
items.forEach(item => {
|
|
705
|
-
rules.forEach(rule => {
|
|
706
|
-
let source = _.get(item, rule.source)
|
|
707
|
-
if (!_.isNil(source)) {
|
|
708
|
-
|
|
709
|
-
_.set(item, rule.target, source)
|
|
710
|
-
if (rule.delete) {
|
|
711
|
-
_.unset(item, rule.source)
|
|
712
|
-
}
|
|
713
|
-
|
|
691
|
+
<span class="cstat-no" title="statement not covered" > // Retrieve the items from the hook</span>
|
|
692
|
+
<span class="cstat-no" title="statement not covered" > let items = getItems(hook)</span>
|
|
693
|
+
<span class="cstat-no" title="statement not covered" > const isArray = Array.isArray(items)</span>
|
|
694
|
+
<span class="cstat-no" title="statement not covered" > items = (isArray ? items : [items])</span>
|
|
695
|
+
<span class="cstat-no" title="statement not covered" > // Apply the rules for each item</span>
|
|
696
|
+
<span class="cstat-no" title="statement not covered" > items.forEach(item => {</span>
|
|
697
|
+
<span class="cstat-no" title="statement not covered" > rules.forEach(rule => {</span>
|
|
698
|
+
<span class="cstat-no" title="statement not covered" > let source = _.get(item, rule.source)</span>
|
|
699
|
+
<span class="cstat-no" title="statement not covered" > if (!_.isNil(source)) {</span>
|
|
700
|
+
<span class="cstat-no" title="statement not covered" > if (rule.filter) source = source.filter(sift(rule.filter))</span>
|
|
701
|
+
<span class="cstat-no" title="statement not covered" > _.set(item, rule.target, source)</span>
|
|
702
|
+
<span class="cstat-no" title="statement not covered" > if (rule.delete) {</span>
|
|
703
|
+
<span class="cstat-no" title="statement not covered" > _.unset(item, rule.source)</span>
|
|
704
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
705
|
+
<span class="cstat-no" title="statement not covered" > } else if (options.throwOnNotFound || rule.throwOnNotFound) {</span>
|
|
714
706
|
<span class="cstat-no" title="statement not covered" > throw new Error('Cannot find valid input value for property ' + rule.target)</span>
|
|
715
707
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
716
|
-
})
|
|
717
|
-
})
|
|
718
|
-
// Replace the items within the hook
|
|
719
|
-
|
|
720
|
-
}
|
|
708
|
+
<span class="cstat-no" title="statement not covered" > })</span>
|
|
709
|
+
<span class="cstat-no" title="statement not covered" > })</span>
|
|
710
|
+
<span class="cstat-no" title="statement not covered" > // Replace the items within the hook</span>
|
|
711
|
+
<span class="cstat-no" title="statement not covered" > replaceItems(hook, isArray ? items : items[0])</span>
|
|
712
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
721
713
|
}
|
|
722
714
|
|
|
723
715
|
// This hook allows to transform the values bound to '_id' like keys or
|
|
@@ -742,9 +734,9 @@ export function convertObjectIDs (properties) {
|
|
|
742
734
|
return function (hook) {
|
|
743
735
|
let items = getItems(hook)
|
|
744
736
|
const isArray = Array.isArray(items)
|
|
745
|
-
items = (isArray
|
|
737
|
+
items = (isArray <span class="branch-0 cbranch-no" title="branch not covered" >? items </span>: [items])
|
|
746
738
|
items.forEach(item => toObjectIDs(item, properties))
|
|
747
|
-
replaceItems(hook, isArray
|
|
739
|
+
replaceItems(hook, isArray <span class="branch-0 cbranch-no" title="branch not covered" >? items </span>: items[0])
|
|
748
740
|
|
|
749
741
|
if (hook.params.query) toObjectIDs(hook.params.query, properties)
|
|
750
742
|
|
|
@@ -785,63 +777,63 @@ export function convertDates (properties, asMoment) {
|
|
|
785
777
|
}
|
|
786
778
|
|
|
787
779
|
// Utility function used to convert from string to JSON a fixed set of properties on a given object
|
|
788
|
-
export function toJson (object, properties) {
|
|
789
|
-
properties.forEach(property => {
|
|
790
|
-
const string = _.get(object, property)
|
|
791
|
-
if (string && (typeof string === 'string')) {
|
|
792
|
-
const json = JSON.parse(string)
|
|
793
|
-
_.set(object, property, json)
|
|
794
|
-
}
|
|
795
|
-
})
|
|
796
|
-
}
|
|
780
|
+
export <span class="fstat-no" title="function not covered" >function toJson (object, properties) {</span>
|
|
781
|
+
<span class="cstat-no" title="statement not covered" > properties.forEach(property => {</span>
|
|
782
|
+
<span class="cstat-no" title="statement not covered" > const string = _.get(object, property)</span>
|
|
783
|
+
<span class="cstat-no" title="statement not covered" > if (string && (typeof string === 'string')) {</span>
|
|
784
|
+
<span class="cstat-no" title="statement not covered" > const json = JSON.parse(string)</span>
|
|
785
|
+
<span class="cstat-no" title="statement not covered" > _.set(object, property, json)</span>
|
|
786
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
787
|
+
<span class="cstat-no" title="statement not covered" > })</span>
|
|
788
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
797
789
|
|
|
798
790
|
// The hook allows to transform a set of input properties as strings into JSON objects
|
|
799
|
-
export function convertToJson (properties) {
|
|
800
|
-
return function (hook) {
|
|
801
|
-
let items = getItems(hook)
|
|
802
|
-
const isArray = Array.isArray(items)
|
|
803
|
-
items = (isArray ? items : [items])
|
|
804
|
-
items.forEach(item => toJson(item, properties))
|
|
805
|
-
replaceItems(hook, isArray ? items : items[0])
|
|
806
|
-
|
|
807
|
-
return hook
|
|
808
|
-
}
|
|
809
|
-
}
|
|
791
|
+
export <span class="fstat-no" title="function not covered" >function convertToJson (properties) {</span>
|
|
792
|
+
<span class="cstat-no" title="statement not covered" > return function (hook) {</span>
|
|
793
|
+
<span class="cstat-no" title="statement not covered" > let items = getItems(hook)</span>
|
|
794
|
+
<span class="cstat-no" title="statement not covered" > const isArray = Array.isArray(items)</span>
|
|
795
|
+
<span class="cstat-no" title="statement not covered" > items = (isArray ? items : [items])</span>
|
|
796
|
+
<span class="cstat-no" title="statement not covered" > items.forEach(item => toJson(item, properties))</span>
|
|
797
|
+
<span class="cstat-no" title="statement not covered" > replaceItems(hook, isArray ? items : items[0])</span>
|
|
798
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
799
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
800
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
801
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
810
802
|
|
|
811
803
|
// Utility function used to convert from string to JSON a fixed set of properties on a given object
|
|
812
|
-
export function toString (object, properties) {
|
|
813
|
-
properties.forEach(property => {
|
|
814
|
-
const json = _.get(object, property)
|
|
815
|
-
if (json && (typeof json === 'object')) _.set(object, property, JSON.stringify(json))
|
|
816
|
-
})
|
|
817
|
-
}
|
|
804
|
+
export <span class="fstat-no" title="function not covered" >function toString (object, properties) {</span>
|
|
805
|
+
<span class="cstat-no" title="statement not covered" > properties.forEach(property => {</span>
|
|
806
|
+
<span class="cstat-no" title="statement not covered" > const json = _.get(object, property)</span>
|
|
807
|
+
<span class="cstat-no" title="statement not covered" > if (json && (typeof json === 'object')) _.set(object, property, JSON.stringify(json))</span>
|
|
808
|
+
<span class="cstat-no" title="statement not covered" > })</span>
|
|
809
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
818
810
|
|
|
819
811
|
// The hook allows to transform a set of input properties from JSON objects into strings
|
|
820
|
-
export function convertToString (properties) {
|
|
821
|
-
return function (hook) {
|
|
822
|
-
let items = getItems(hook)
|
|
823
|
-
const isArray = Array.isArray(items)
|
|
824
|
-
items = (isArray ? items : [items])
|
|
825
|
-
items.forEach(item => toString(item, properties))
|
|
826
|
-
replaceItems(hook, isArray ? items : items[0])
|
|
827
|
-
|
|
828
|
-
return hook
|
|
829
|
-
}
|
|
830
|
-
}
|
|
812
|
+
export <span class="fstat-no" title="function not covered" >function convertToString (properties) {</span>
|
|
813
|
+
<span class="cstat-no" title="statement not covered" > return function (hook) {</span>
|
|
814
|
+
<span class="cstat-no" title="statement not covered" > let items = getItems(hook)</span>
|
|
815
|
+
<span class="cstat-no" title="statement not covered" > const isArray = Array.isArray(items)</span>
|
|
816
|
+
<span class="cstat-no" title="statement not covered" > items = (isArray ? items : [items])</span>
|
|
817
|
+
<span class="cstat-no" title="statement not covered" > items.forEach(item => toString(item, properties))</span>
|
|
818
|
+
<span class="cstat-no" title="statement not covered" > replaceItems(hook, isArray ? items : items[0])</span>
|
|
819
|
+
<span class="cstat-no" title="statement not covered" ></span>
|
|
820
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
821
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
822
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
831
823
|
|
|
832
|
-
export async function populatePreviousObject (hook) {
|
|
833
|
-
|
|
824
|
+
export <span class="fstat-no" title="function not covered" >async function populatePreviousObject (hook) {</span>
|
|
825
|
+
<span class="cstat-no" title="statement not covered" > if (hook.type !== 'before') {</span>
|
|
834
826
|
<span class="cstat-no" title="statement not covered" > throw new Error('The \'populatePreviousObject\' hook should only be used as a \'before\' hook.')</span>
|
|
835
827
|
<span class="cstat-no" title="statement not covered" > }</span>
|
|
836
|
-
const item = getItems(hook)
|
|
837
|
-
const id = (hook.id ? hook.id : _.get(item, '_id'))
|
|
838
|
-
// Retrieve previous version of the item and make it available to next hooks
|
|
839
|
-
if (id) {
|
|
840
|
-
hook.params.previousItem = await hook.service.get(id.toString())
|
|
841
|
-
debug('Populated previous object', hook.params.previousItem)
|
|
842
|
-
}
|
|
843
|
-
return hook
|
|
844
|
-
}
|
|
828
|
+
<span class="cstat-no" title="statement not covered" > const item = getItems(hook)</span>
|
|
829
|
+
<span class="cstat-no" title="statement not covered" > const id = (hook.id ? hook.id : _.get(item, '_id'))</span>
|
|
830
|
+
<span class="cstat-no" title="statement not covered" > // Retrieve previous version of the item and make it available to next hooks</span>
|
|
831
|
+
<span class="cstat-no" title="statement not covered" > if (id) {</span>
|
|
832
|
+
<span class="cstat-no" title="statement not covered" > hook.params.previousItem = await hook.service.get(id.toString())</span>
|
|
833
|
+
<span class="cstat-no" title="statement not covered" > debug('Populated previous object', hook.params.previousItem)</span>
|
|
834
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
835
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
836
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
845
837
|
|
|
846
838
|
export function setAsDeleted (hook) {
|
|
847
839
|
// Retrieve the items from the hook
|
|
@@ -874,22 +866,18 @@ export function setExpireAfter (delayInSeconds) {
|
|
|
874
866
|
}
|
|
875
867
|
|
|
876
868
|
// Allow to use the distinct function of MongoDB
|
|
877
|
-
export async function distinct (hook) {
|
|
878
|
-
const params = hook.params
|
|
879
|
-
const query = params.query
|
|
880
|
-
if (!query
|
|
881
|
-
const collection = hook.service.Model
|
|
882
|
-
hook.result = await collection.distinct(query.$distinct, _.omit(query, ['$distinct']))
|
|
883
|
-
return hook
|
|
884
|
-
}
|
|
869
|
+
export <span class="fstat-no" title="function not covered" >async function distinct (hook) {</span>
|
|
870
|
+
<span class="cstat-no" title="statement not covered" > const params = hook.params</span>
|
|
871
|
+
<span class="cstat-no" title="statement not covered" > const query = params.query</span>
|
|
872
|
+
<span class="cstat-no" title="statement not covered" > if (!query.$distinct) return hook</span>
|
|
873
|
+
<span class="cstat-no" title="statement not covered" > const collection = hook.service.Model</span>
|
|
874
|
+
<span class="cstat-no" title="statement not covered" > hook.result = await collection.distinct(query.$distinct, _.omit(query, ['$distinct']))</span>
|
|
875
|
+
<span class="cstat-no" title="statement not covered" > return hook</span>
|
|
876
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
885
877
|
|
|
886
878
|
// Check for already existing object according to given service/id field
|
|
887
879
|
export function checkUnique (options = {}) {
|
|
888
880
|
return async (hook) => {
|
|
889
|
-
if (hook.app) {
|
|
890
|
-
const serviceConfig = hook.app.get(hook.service.name)
|
|
891
|
-
if (serviceConfig && serviceConfig.checkUnique) <span class="branch-0 cbranch-no" title="branch not covered" >options = serviceConfig.checkUnique</span>
|
|
892
|
-
}
|
|
893
881
|
const service = (options.service <span class="branch-0 cbranch-no" title="branch not covered" >? hook.app.getService(options.service) </span>: hook.service)
|
|
894
882
|
const field = options.field <span class="branch-0 cbranch-no" title="branch not covered" >|| 'name'</span>
|
|
895
883
|
const id = _.get(hook, `data.${field}`)
|
|
@@ -897,7 +885,7 @@ export function checkUnique (options = {}) {
|
|
|
897
885
|
if (id) {
|
|
898
886
|
const query = { [options.field]: id }
|
|
899
887
|
// Apply processing if required
|
|
900
|
-
if (typeof options.query === 'function') options.query(query, hook)
|
|
888
|
+
if (typeof options.query === 'function') <span class="branch-0 cbranch-no" title="branch not covered" >options.query(query, hook)</span>
|
|
901
889
|
const result = await service.find({ query })
|
|
902
890
|
// Pagination on/off ?
|
|
903
891
|
const total = (Array.isArray(result) <span class="branch-0 cbranch-no" title="branch not covered" >? result.length </span>: result.total)
|
|
@@ -952,7 +940,7 @@ export function preventChanges (ifThrow, fieldNames) {
|
|
|
952
940
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
953
941
|
Code coverage generated by
|
|
954
942
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
955
|
-
at
|
|
943
|
+
at 2024-08-13T10:02:04.872Z
|
|
956
944
|
</div>
|
|
957
945
|
<script src="../../../prettify.js"></script>
|
|
958
946
|
<script>
|