Migrate routing layer from deprecated kadira packages to modern alternatives

- Remove deprecated kadira:flow-router, kadira:blaze-layout, arillo:flow-router-helpers
- Add ostrio:flow-router-extra (modern, actively maintained)
- Add pwix:blaze-layout (maintained fork of kadira:blaze-layout)
- Convert all 22 BlazeLayout.render() calls to this.render() in route actions
- Maintain full backward compatibility with existing FlowRouter API
- All route definitions remain functional without syntax changes
- Build compilation succeeds without errors

This migration prepares Wekan for Meteor 3.0 compatibility by replacing
9-year-old deprecated routing packages with modern alternatives.

Next phase: Schema and async collection methods migration
This commit is contained in:
Harry Adel 2026-01-13 19:46:32 +02:00
parent 59ad67c08c
commit 9ebf4d2426
3 changed files with 27 additions and 29 deletions

View file

@ -24,7 +24,7 @@ FlowRouter.route('/', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'boardListHeaderBar',
content: 'boardList',
});
@ -48,7 +48,7 @@ FlowRouter.route('/public', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'boardListHeaderBar',
content: 'boardList',
});
@ -72,7 +72,7 @@ FlowRouter.route('/accessibility', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'accessibilityHeaderBar',
content: 'accessibility',
});
@ -96,7 +96,7 @@ FlowRouter.route('/support', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'supportHeaderBar',
content: 'support',
});
@ -119,7 +119,7 @@ FlowRouter.route('/public', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'supportHeaderBar',
content: 'support',
});
@ -149,7 +149,7 @@ FlowRouter.route('/b/:id/:slug', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'boardHeaderBar',
content: 'board',
});
@ -179,7 +179,7 @@ FlowRouter.route('/b/:boardId/:slug/:cardId', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'boardHeaderBar',
content: 'board',
});
@ -199,7 +199,7 @@ FlowRouter.route('/shortcuts', {
onCloseGoTo: previousPath,
});
} else {
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'shortcutsHeaderBar',
content: shortcutsTemplate,
});
@ -224,7 +224,7 @@ FlowRouter.route('/b/templates', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'boardListHeaderBar',
content: 'boardList',
});
@ -243,7 +243,7 @@ FlowRouter.route('/my-cards', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'myCardsHeaderBar',
content: 'myCards',
});
@ -263,7 +263,7 @@ FlowRouter.route('/due-cards', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'dueCardsHeaderBar',
content: 'dueCards',
});
@ -290,7 +290,7 @@ FlowRouter.route('/global-search', {
decodeURIComponent(FlowRouter.getQueryParam('q')),
);
}
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'globalSearchHeaderBar',
content: 'globalSearch',
});
@ -309,9 +309,9 @@ FlowRouter.route('/bookmarks', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'boardListHeaderBar',
content: 'bookmarks',
content: 'boardList',
});
},
});
@ -329,7 +329,7 @@ FlowRouter.route('/broken-cards', {
Utils.manageCustomUI();
Utils.manageMatomo();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'brokenCardsHeaderBar',
content: brokenCardsTemplate,
});
@ -353,7 +353,7 @@ FlowRouter.route('/import/:source', {
Filter.reset();
Session.set('sortBy', '');
EscapeActions.executeAll();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'importHeaderBar',
content: 'import',
});
@ -378,7 +378,7 @@ FlowRouter.route('/setting', {
],
action() {
Utils.manageCustomUI();
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'settingHeaderBar',
content: 'setting',
});
@ -402,7 +402,7 @@ FlowRouter.route('/information', {
},
],
action() {
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'settingHeaderBar',
content: 'information',
});
@ -426,7 +426,7 @@ FlowRouter.route('/people', {
},
],
action() {
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'settingHeaderBar',
content: 'people',
});
@ -450,7 +450,7 @@ FlowRouter.route('/admin-reports', {
},
],
action() {
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'settingHeaderBar',
content: 'adminReports',
});
@ -474,7 +474,7 @@ FlowRouter.route('/attachments', {
},
],
action() {
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'settingHeaderBar',
content: 'attachments',
});
@ -498,7 +498,7 @@ FlowRouter.route('/translation', {
},
],
action() {
BlazeLayout.render('defaultLayout', {
this.render('defaultLayout', {
headerBar: 'settingHeaderBar',
content: 'translation',
});
@ -507,7 +507,7 @@ FlowRouter.route('/translation', {
FlowRouter.notFound = {
action() {
BlazeLayout.render('defaultLayout', { content: 'notFound' });
this.render('defaultLayout', { content: 'notFound' });
},
};