diff --git a/assets/apps/dashboard.js b/assets/apps/dashboard.js index 3bc65d9d03756dfbd3018cb7bf67b362b696dd37..926a1a70769dd6528492ff74f1f6c43a7e49f725 100644 --- a/assets/apps/dashboard.js +++ b/assets/apps/dashboard.js @@ -6,17 +6,15 @@ export default { created() { if (this.storedFilters !== null) { Object.entries(this.storedFilters).forEach(([filter, value]) => { - this.$set(this.filters, filter, value); + this.filters[filter] = value; }); } Object.values(this.qmLabels).concat(['status', 'mr_status']).forEach(abbr => { if (this.filters[abbr] === undefined) { - this.$set(this.filters, abbr, null); + this.filters[abbr] = null; } }); - - this.$watch('filters', this.storeFilters, {deep: true}); }, methods: { getStateForIssueAndQmLabel(issue, qm) { @@ -102,5 +100,13 @@ export default { return filtered; } + }, + watch: { + filters: { + handler(current) { + this.storeFilters(current); + }, + deep: true + } } } diff --git a/assets/script.js b/assets/script.js index c09f62e932e8094eb7099ce50baf5201469e9489..719b9a8353190e1163c89a5e98e3b1b0879a846a 100644 --- a/assets/script.js +++ b/assets/script.js @@ -27,7 +27,10 @@ ...originalData, ...vueAppData }); - createApp(app).$mount(node); + + app.el = node; + + createApp(app); }) }); }); diff --git a/plugin.manifest b/plugin.manifest index dd10aa52fb6549d47aa56d2b2d6ca5aa019a30a8..304efcd59f532c41c16bbbfb10515826da3f805f 100644 --- a/plugin.manifest +++ b/plugin.manifest @@ -2,6 +2,6 @@ pluginname=Trac to gitlab converter pluginclassname=TracToGitlabPlugin pluginclassname=StudipReleasesPlugin origin=UOL -version=1.4.7 -studipMinVersion=5.3 +version=1.5 +studipMinVersion=6.0 localedomain=trac2gitlab diff --git a/views/dashboard/index.php b/views/dashboard/index.php index f9a5985911db403980fae20f8220fb6ddabce2d9..c77dfe6e62062e66bcac950f50788ba7f6489f6c 100644 --- a/views/dashboard/index.php +++ b/views/dashboard/index.php @@ -108,7 +108,7 @@ $vueData = [ </tbody> </table> - <mounting-portal mount-to="#sidebar" name="sidebar-filter" append> + <Teleport to="#sidebar"> <div class="sidebar-widget sidebar-search"> <div class="sidebar-widget-header"><?= _('Suche') ?></div> <div class="sidebar-widget-content"> @@ -157,5 +157,5 @@ $vueData = [ </label> </div> </div> - </mounting-portal> + </Teleport> </div>