mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
Remove reactControllerFactory
This commit is contained in:
parent
11256c0171
commit
5c25741329
3 changed files with 3 additions and 24 deletions
|
@ -9,7 +9,6 @@ import loading from './loading/loading';
|
||||||
import viewManager from './viewManager/viewManager';
|
import viewManager from './viewManager/viewManager';
|
||||||
import ServerConnections from './ServerConnections';
|
import ServerConnections from './ServerConnections';
|
||||||
import alert from './alert';
|
import alert from './alert';
|
||||||
import reactControllerFactory from './reactControllerFactory';
|
|
||||||
|
|
||||||
export const history = createHashHistory();
|
export const history = createHashHistory();
|
||||||
|
|
||||||
|
@ -264,9 +263,7 @@ class AppRouter {
|
||||||
this.#sendRouteToViewManager(ctx, next, route, controllerFactory);
|
this.#sendRouteToViewManager(ctx, next, route, controllerFactory);
|
||||||
};
|
};
|
||||||
|
|
||||||
if (route.pageComponent) {
|
if (route.controller) {
|
||||||
onInitComplete(reactControllerFactory);
|
|
||||||
} else if (route.controller) {
|
|
||||||
import('../controllers/' + route.controller).then(onInitComplete);
|
import('../controllers/' + route.controller).then(onInitComplete);
|
||||||
} else {
|
} else {
|
||||||
onInitComplete();
|
onInitComplete();
|
||||||
|
@ -293,7 +290,6 @@ class AppRouter {
|
||||||
fullscreen: route.fullscreen,
|
fullscreen: route.fullscreen,
|
||||||
controllerFactory: controllerFactory,
|
controllerFactory: controllerFactory,
|
||||||
options: {
|
options: {
|
||||||
pageComponent: route.pageComponent,
|
|
||||||
supportsThemeMedia: route.supportsThemeMedia || false,
|
supportsThemeMedia: route.supportsThemeMedia || false,
|
||||||
enableMediaControl: route.enableMediaControl !== false
|
enableMediaControl: route.enableMediaControl !== false
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
import React from 'react';
|
|
||||||
import ReactDOM from 'react-dom';
|
|
||||||
|
|
||||||
export default (view, params, { detail }) => {
|
|
||||||
if (detail.options?.pageComponent) {
|
|
||||||
// Fetch and render the page component to the view
|
|
||||||
import(/* webpackChunkName: "[request]" */ `./pages/${detail.options.pageComponent}`)
|
|
||||||
.then(({ default: component }) => {
|
|
||||||
ReactDOM.render(React.createElement(component, params), view);
|
|
||||||
});
|
|
||||||
|
|
||||||
// Unmount component when view is destroyed
|
|
||||||
view.addEventListener('viewdestroy', () => {
|
|
||||||
ReactDOM.unmountComponentAtNode(view);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
};
|
|
|
@ -21,9 +21,9 @@ viewContainer.setOnBeforeChange(function (newView, isRestored, options) {
|
||||||
newView.initComplete = true;
|
newView.initComplete = true;
|
||||||
|
|
||||||
if (typeof options.controllerFactory === 'function') {
|
if (typeof options.controllerFactory === 'function') {
|
||||||
new options.controllerFactory(newView, eventDetail.detail.params, eventDetail);
|
new options.controllerFactory(newView, eventDetail.detail.params);
|
||||||
} else if (options.controllerFactory && typeof options.controllerFactory.default === 'function') {
|
} else if (options.controllerFactory && typeof options.controllerFactory.default === 'function') {
|
||||||
new options.controllerFactory.default(newView, eventDetail.detail.params, eventDetail);
|
new options.controllerFactory.default(newView, eventDetail.detail.params);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!options.controllerFactory || dispatchPageEvents) {
|
if (!options.controllerFactory || dispatchPageEvents) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue