From 53e80f55b800f0e5f5fe31a2f0bc3d8de5c7bd44 Mon Sep 17 00:00:00 2001 From: Aleix Soler Date: Thu, 19 Mar 2026 11:52:32 +0100 Subject: [PATCH] feat(ui): distinguish predefined vs community templates in marketplace --- components/SettingsUI/MarketplaceBrowseModal.tsx | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/components/SettingsUI/MarketplaceBrowseModal.tsx b/components/SettingsUI/MarketplaceBrowseModal.tsx index f3bfa65..67709e2 100644 --- a/components/SettingsUI/MarketplaceBrowseModal.tsx +++ b/components/SettingsUI/MarketplaceBrowseModal.tsx @@ -1,6 +1,9 @@ import React, { useState, useMemo } from "react"; import { StatusTemplate } from "@/types/pluginSettings"; -import { PREDEFINED_TEMPLATES } from "@/constants/predefinedTemplates"; +import { + PREDEFINED_TEMPLATES, + COMMUNITY_TEMPLATES, +} from "@/constants/predefinedTemplates"; import { StatusDisplay } from "../atoms/StatusDisplay"; import { ObsidianIcon } from "../atoms/ObsidianIcon"; import { SearchFilter } from "../atoms/SearchFilter"; @@ -19,7 +22,8 @@ export const MarketplaceBrowseModal: React.FC = ({ const [searchQuery, setSearchQuery] = useState(""); const filteredTemplates = useMemo(() => { - return PREDEFINED_TEMPLATES.filter( + const allTemplates = [...PREDEFINED_TEMPLATES, ...COMMUNITY_TEMPLATES]; + return allTemplates.filter( (t) => t.name.toLowerCase().includes(searchQuery.toLowerCase()) || t.description.toLowerCase().includes(searchQuery.toLowerCase()), @@ -54,8 +58,12 @@ export const MarketplaceBrowseModal: React.FC = ({ {template.name}
- - Marketplace + + {template.isPredefined + ? "Built-in" + : "Community"} {template.authorGithub && (