diff options
author | dizzy <diosmosis@users.noreply.github.com> | 2022-06-21 10:19:29 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-21 10:19:29 +0300 |
commit | 3fbdf872e3d52e6d781bd6891f73ae43a988f8cc (patch) | |
tree | 34a0624b9d423263eb58e6bc780b7a986a85c834 /plugins/CoreHome/vue/src | |
parent | 3f9a00f1447450b5fa3fb18170ed5943b5c83f50 (diff) |
[Vue] Make sure default value for modelValue in SiteSelector is reflected in v-model value. (#19369)
* Make sure default value for modelValue is reflected in v-model value.
* forgot to commit
* built vue files
Diffstat (limited to 'plugins/CoreHome/vue/src')
-rw-r--r-- | plugins/CoreHome/vue/src/SiteSelector/SiteSelector.vue | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/plugins/CoreHome/vue/src/SiteSelector/SiteSelector.vue b/plugins/CoreHome/vue/src/SiteSelector/SiteSelector.vue index 5d115f8136..ab537111ab 100644 --- a/plugins/CoreHome/vue/src/SiteSelector/SiteSelector.vue +++ b/plugins/CoreHome/vue/src/SiteSelector/SiteSelector.vue @@ -143,19 +143,7 @@ interface SiteSelectorState { export default defineComponent({ props: { - modelValue: { - type: Object, - default: (props: { modelValue?: SiteRef }): SiteRef|undefined => { - if (props.modelValue) { - return props.modelValue; - } - - return (Matomo.idSite ? { - id: Matomo.idSite, - name: Matomo.helper.htmlDecode(Matomo.siteName), - } : undefined); - }, - }, + modelValue: Object, showSelectedSite: { type: Boolean, default: false, @@ -185,6 +173,7 @@ export default defineComponent({ default: 'bottom', }, placeholder: String, + defaultToFirstSite: Boolean, }, emits: ['update:modelValue', 'blur'], components: { @@ -211,12 +200,22 @@ export default defineComponent({ }, created() { this.searchSite = debounce(this.searchSite); + + if (!this.modelValue && Matomo.idSite) { + this.$emit('update:modelValue', { + id: Matomo.idSite, + name: Matomo.helper.htmlDecode(Matomo.siteName), + }); + } }, mounted() { window.initTopControls(); this.loadInitialSites().then(() => { - if ((!this.modelValue || !this.modelValue.id) && !this.hasMultipleSites && this.sites[0]) { + if ((!this.modelValue || !this.modelValue.id) + && (!this.hasMultipleSites || this.defaultToFirstSite) + && this.sites[0] + ) { this.$emit('update:modelValue', { id: this.sites[0].idsite, name: this.sites[0].name }); } }); |