diff --git a/apps/roam/src/components/settings/SuggestiveModeSettings.tsx b/apps/roam/src/components/settings/SuggestiveModeSettings.tsx index 81556cdd..8b457e7c 100644 --- a/apps/roam/src/components/settings/SuggestiveModeSettings.tsx +++ b/apps/roam/src/components/settings/SuggestiveModeSettings.tsx @@ -1,6 +1,6 @@ /* eslint-disable @typescript-eslint/naming-convention */ import React, { useEffect, useState } from "react"; -import { Button, Intent } from "@blueprintjs/core"; +import { Button, Intent, Tabs, Tab, TabId } from "@blueprintjs/core"; import { getFormattedConfigTree } from "~/utils/discourseConfigRef"; import FlagPanel from "roamjs-components/components/ConfigPanels/FlagPanel"; import PageGroupsPanel from "./PageGroupPanel"; @@ -16,89 +16,122 @@ const SuggestiveModeSettings = () => { const [suggestiveModeUid, setSuggestiveModeUid] = useState( settings.suggestiveMode.parentUid, ); - const [pageGroupsUid, setPageGroupsUid] = useState( - settings.suggestiveMode.pageGroups.uid, + const pageGroupsUid = settings.suggestiveMode.pageGroups.uid; + + const [includePageRelations, setIncludePageRelations] = useState( + settings.suggestiveMode.includePageRelations.value, ); + useEffect(() => { - if (pageGroupsUid) return; + if (suggestiveModeUid) return; void (async () => { const smUid = await createBlock({ parentUid: getPageUidByPageTitle(DISCOURSE_CONFIG_PAGE_TITLE), node: { text: "Suggestive Mode" }, }); - const pgUid = await createBlock({ - parentUid: smUid, - node: { text: "Page Groups" }, - }); setSuggestiveModeUid(smUid); - setPageGroupsUid(pgUid); })(); - }, [pageGroupsUid]); + }, [suggestiveModeUid]); const effectiveSuggestiveModeUid = suggestiveModeUid || settings.suggestiveMode.parentUid; + const [selectedTabId, setSelectedTabId] = useState("page-groups"); + return ( -
-
-
} - intent={Intent.PRIMARY} - className={"mt-2"} - /> -
-
- + +
+ { + setIncludePageRelations(checked); + }, + }} + /> - {/* TODO: if "Include Current Page Relations" is checked "Include Parent and Child Blocks" - should be checked and disabled, use `selection` instead */} - -
-
- +
+
+
+
+ } /> - - + + ); };