Show extension preferences in separate page (#5284)

Co-authored-by: Alex Andreev <alex.andreev.email@gmail.com>
Co-authored-by: Janne Savolainen <janne.savolainen@live.fi>
This commit is contained in:
Alex AndreevandJanne Savolainen authored and GitHub committed 2022-06-21 11:11:31 -04:00
1 parent 91ee7bd785
commit 0784085bf4
39 files changed
+2535 -204

No files matched your search

@@ -5,12 +5,18 @@
import { getInjectable } from "@ogre-tools/injectable";
import { computed } from "mobx";
import { frontEndRouteInjectionToken } from "../../../front-end-route-injection-token";
import type { Route } from "../../../front-end-route-injection-token";
interface ExtensionPreferenceRouteParams {
extensionId: string;
tabId?: string;
}
const extensionPreferencesRouteInjectable = getInjectable({
id: "extension-preferences-route",
instantiate: () => ({
path: "/preferences/extensions",
instantiate: (): Route<ExtensionPreferenceRouteParams> => ({
path: "/preferences/extension/:extensionId/:tabId?",
clusterFrame: false,
isEnabled: computed(() => true),
}),
@@ -13,7 +13,10 @@ const navigateToExtensionPreferencesInjectable = getInjectable({
const navigateToRoute = di.inject(navigateToRouteInjectionToken);
const route = di.inject(extensionPreferencesRouteInjectable);
return () => navigateToRoute(route);
return (extensionId: string, tabId?: string) => navigateToRoute(route, { parameters: {
extensionId,
tabId,
}});
},
});