fix: 调整 Link to instance 点击范围,修复 sitename 和 price tag

This commit is contained in:
Montia37
2025-08-15 20:57:29 +08:00
parent 51d2430bb9
commit 45091a973b
5 changed files with 35 additions and 34 deletions

View File

@@ -2,7 +2,7 @@
"name": "Komari Theme PurCart", "name": "Komari Theme PurCart",
"short": "PurCarte", "short": "PurCarte",
"description": "A frosted glass theme for Komari", "description": "A frosted glass theme for Komari",
"version": "1.0.0", "version": "1.0.1",
"author": "Montia & Gemini", "author": "Montia & Gemini",
"url": "https://github.com/Montia37/Komari-theme-purcarte", "url": "https://github.com/Montia37/Komari-theme-purcarte",
"preview": "preview.png", "preview": "preview.png",

View File

@@ -39,6 +39,7 @@ export const NodeCard = ({ node }: NodeCardProps) => {
: "striped-bg-red-translucent-diagonal ring-2 ring-red-500/50" : "striped-bg-red-translucent-diagonal ring-2 ring-red-500/50"
}`}> }`}>
<CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2"> <CardHeader className="flex flex-row items-center justify-between space-y-0 pb-2">
<Link to={`/instance/${node.uuid}`}>
<div className="flex items-center gap-2"> <div className="flex items-center gap-2">
<Flag flag={node.region}></Flag> <Flag flag={node.region}></Flag>
<img <img
@@ -47,10 +48,9 @@ export const NodeCard = ({ node }: NodeCardProps) => {
className="w-6 h-6 rounded-full" className="w-6 h-6 rounded-full"
loading="lazy" loading="lazy"
/> />
<CardTitle className="text-base font-bold"> <CardTitle className="text-base font-bold">{node.name}</CardTitle>
<Link to={`/instance/${node.uuid}`}>{node.name}</Link>
</CardTitle>
</div> </div>
</Link>
</CardHeader> </CardHeader>
<CardContent className="flex-grow space-y-3 text-sm"> <CardContent className="flex-grow space-y-3 text-sm">
<div className="flex flex-wrap gap-1"> <div className="flex flex-wrap gap-1">

View File

@@ -32,10 +32,9 @@ export const NodeListItem = ({ node }: NodeListItemProps) => {
} text-secondary-foreground transition-colors duration-200`}> } text-secondary-foreground transition-colors duration-200`}>
<div className="col-span-3 flex items-center text-left"> <div className="col-span-3 flex items-center text-left">
<Flag flag={node.region} /> <Flag flag={node.region} />
<Link to={`/instance/${node.uuid}`}>
<div className="ml-2 w-full"> <div className="ml-2 w-full">
<div className="text-base font-bold"> <div className="text-base font-bold">{node.name}</div>
<Link to={`/instance/${node.uuid}`}>{node.name}</Link>
</div>
<Tag className="text-xs" tags={tagList} /> <Tag className="text-xs" tags={tagList} />
<div className="flex text-xs"> <div className="flex text-xs">
<div className="flex"> <div className="flex">
@@ -51,6 +50,7 @@ export const NodeListItem = ({ node }: NodeListItemProps) => {
</div> </div>
</div> </div>
</div> </div>
</Link>
</div> </div>
<div className="col-span-1"> <div className="col-span-1">
<div className="gap-1 flex items-center justify-center whitespace-nowrap"> <div className="gap-1 flex items-center justify-center whitespace-nowrap">

View File

@@ -44,7 +44,8 @@ export function ConfigProvider({
enableLogo: theme.enableLogo ?? DEFAULT_CONFIG.enableLogo, enableLogo: theme.enableLogo ?? DEFAULT_CONFIG.enableLogo,
logoUrl: theme.logoUrl || DEFAULT_CONFIG.logoUrl, logoUrl: theme.logoUrl || DEFAULT_CONFIG.logoUrl,
enableTitle: theme.enableTitle ?? DEFAULT_CONFIG.enableTitle, enableTitle: theme.enableTitle ?? DEFAULT_CONFIG.enableTitle,
titleText: theme.titleText || DEFAULT_CONFIG.titleText, titleText:
theme.titleText || publicSettings?.sitename || DEFAULT_CONFIG.titleText,
enableSearchButton: enableSearchButton:
theme.enableSearchButton ?? DEFAULT_CONFIG.enableSearchButton, theme.enableSearchButton ?? DEFAULT_CONFIG.enableSearchButton,
selectedDefaultView: selectedDefaultView:
@@ -64,7 +65,7 @@ export function ConfigProvider({
theme.pingChartMaxPoints || DEFAULT_CONFIG.pingChartMaxPoints, theme.pingChartMaxPoints || DEFAULT_CONFIG.pingChartMaxPoints,
backgroundImage, backgroundImage,
}), }),
[theme, backgroundImage] [theme, backgroundImage, publicSettings?.sitename]
); );
return ( return (

View File

@@ -55,10 +55,10 @@ export const useNodeCommons = (node: NodeWithStatus) => {
? "长期" ? "长期"
: node.expired_at : node.expired_at
? new Date(node.expired_at).toLocaleDateString() ? new Date(node.expired_at).toLocaleDateString()
: "N/A"; : "未设置";
const tagList = [ const tagList = [
price, ...(price ? [price] : []),
...(daysLeftTag ? [daysLeftTag] : []), ...(daysLeftTag ? [daysLeftTag] : []),
...(typeof node.tags === "string" ...(typeof node.tags === "string"
? node.tags ? node.tags