diff --git a/src/plugins/_core/settings.tsx b/src/plugins/_core/settings.tsx
index e107ca9c..6bd2e6ca 100644
--- a/src/plugins/_core/settings.tsx
+++ b/src/plugins/_core/settings.tsx
@@ -35,7 +35,7 @@ let LayoutTypes = {
PANEL: 3,
PANE: 4
};
-waitFor(["SECTION", "SIDEBAR_ITEM", "PANEL", "PANE"], v => LayoutTypes = v);
+waitFor(["SECTION", "SIDEBAR_ITEM", "PANEL"], v => LayoutTypes = v);
const FallbackSectionTypes = {
HEADER: "HEADER",
@@ -164,6 +164,34 @@ export default definePlugin({
buildEntry(options: EntryOptions): SettingsLayoutNode {
const { key, title, panelTitle = title, Component, Icon } = options;
+ const panel: SettingsLayoutNode = {
+ key: key + "_panel",
+ type: LayoutTypes.PANEL,
+ useTitle: () => panelTitle,
+ };
+
+ const render = {
+ // FIXME
+ StronglyDiscouragedCustomComponent: () => ,
+ render: () => ,
+ };
+
+ // FIXME
+ if (LayoutTypes.PANE) {
+ panel.buildLayout = () => [
+ {
+ key: key + "_pane",
+ type: LayoutTypes.PANE,
+ useTitle: () => panelTitle,
+ buildLayout: () => [],
+ ...render
+ }
+ ];
+ } else {
+ Object.assign(panel, render);
+ panel.buildLayout = () => [];
+ }
+
return ({
key,
type: LayoutTypes.SIDEBAR_ITEM,
@@ -172,24 +200,7 @@ export default definePlugin({
getLegacySearchKey: () => title.toUpperCase(),
useTitle: () => title,
icon: () => ,
- buildLayout: () => [
- {
- key: key + "_panel",
- type: LayoutTypes.PANEL,
- useTitle: () => panelTitle,
- buildLayout: () => [
- {
- key: key + "_pane",
- type: LayoutTypes.PANE,
- buildLayout: () => [],
- // FIXME
- StronglyDiscouragedCustomComponent: () => ,
- render: () => ,
- useTitle: () => panelTitle
- }
- ]
- }
- ]
+ buildLayout: () => [panel]
});
},