Some checks failed
docker-images / resolve-build-targets (push) Successful in 7s
ui-regression / playwright-regression (push) Failing after 13m4s
docker-images / build-and-push (admin) (push) Successful in 1m17s
docker-images / build-and-push (backend) (push) Successful in 28m13s
docker-images / build-and-push (frontend) (push) Successful in 47s
docker-images / submit-indexnow (push) Successful in 13s
style: enhance global CSS for better responsiveness of terminal chips and navigation pills test: remove inline subscription test and add maintenance mode access code test feat: implement media library picker dialog for selecting images from the media library feat: add media URL controls for uploading and managing media assets feat: add migration for music_enabled and maintenance_mode settings in site settings feat: implement maintenance mode functionality with access control feat: create maintenance page with access code input and error handling chore: add TypeScript declaration for QR code module
168 lines
4.3 KiB
TypeScript
168 lines
4.3 KiB
TypeScript
export interface TerminalConfig {
|
||
defaultCategory: string;
|
||
welcomeMessage: string;
|
||
prompt: {
|
||
prefix: string;
|
||
separator: string;
|
||
path: string;
|
||
suffix: string;
|
||
mobile: string;
|
||
};
|
||
asciiArt: string;
|
||
title: string;
|
||
welcome: {
|
||
title: string;
|
||
subtitle: string;
|
||
};
|
||
navLinks: Array<{
|
||
icon: string;
|
||
text: string;
|
||
href: string;
|
||
}>;
|
||
categories: {
|
||
[key: string]: {
|
||
title: string;
|
||
description: string;
|
||
items: Array<{
|
||
command: string;
|
||
description: string;
|
||
shortDesc?: string;
|
||
url?: string;
|
||
}>;
|
||
};
|
||
};
|
||
postTypes: {
|
||
article: { color: string; label: string };
|
||
tweet: { color: string; label: string };
|
||
};
|
||
pinnedPost?: {
|
||
title: string;
|
||
description: string;
|
||
date: string;
|
||
readTime: string;
|
||
type: 'article' | 'tweet';
|
||
tags: string[];
|
||
link: string;
|
||
};
|
||
socialLinks: {
|
||
github: string;
|
||
twitter: string;
|
||
email: string;
|
||
};
|
||
tools: Array<{
|
||
icon: string;
|
||
href: string;
|
||
title: string;
|
||
}>;
|
||
search?: {
|
||
placeholders: {
|
||
default: string;
|
||
small: string;
|
||
medium: string;
|
||
};
|
||
promptText: string;
|
||
emptyResultText: string;
|
||
};
|
||
terminal?: {
|
||
defaultWindowTitle: string;
|
||
controls: {
|
||
colors: {
|
||
close: string;
|
||
minimize: string;
|
||
expand: string;
|
||
};
|
||
};
|
||
animation?: {
|
||
glowDuration: string;
|
||
};
|
||
};
|
||
branding?: {
|
||
name: string;
|
||
shortName?: string;
|
||
};
|
||
}
|
||
|
||
export const terminalConfig: TerminalConfig = {
|
||
defaultCategory: 'blog',
|
||
welcomeMessage: '欢迎来到 InitCool!',
|
||
prompt: {
|
||
prefix: 'user@blog',
|
||
separator: ':',
|
||
path: '~/',
|
||
suffix: '$',
|
||
mobile: '~$'
|
||
},
|
||
asciiArt: `
|
||
I N N I TTTTT CCCC OOO OOO L
|
||
I NN N I T C O O O O L
|
||
I N N N I T C O O O O L
|
||
I N NN I T C O O O O L
|
||
I N N I T CCCC OOO OOO LLLLL`,
|
||
title: '~/blog',
|
||
welcome: {
|
||
title: '欢迎来到 InitCool',
|
||
subtitle: '记录开发实践、产品观察与长期积累,分享清晰、耐读、可回看的内容。'
|
||
},
|
||
navLinks: [
|
||
{ icon: 'fa-file-code', text: '文章', href: '/articles' },
|
||
{ icon: 'fa-folder', text: '分类', href: '/categories' },
|
||
{ icon: 'fa-tags', text: '标签', href: '/tags' },
|
||
{ icon: 'fa-stream', text: '时间轴', href: '/timeline' },
|
||
{ icon: 'fa-star', text: '评价', href: '/reviews' },
|
||
{ icon: 'fa-link', text: '友链', href: '/friends' },
|
||
{ icon: 'fa-user-secret', text: '关于', href: '/about' }
|
||
],
|
||
categories: {
|
||
blog: {
|
||
title: '博客',
|
||
description: '我的个人博客文章',
|
||
items: [
|
||
{
|
||
command: 'help',
|
||
description: '显示帮助信息',
|
||
shortDesc: '显示帮助信息'
|
||
}
|
||
]
|
||
}
|
||
},
|
||
postTypes: {
|
||
article: { color: '#00ff9d', label: '博客文章' },
|
||
tweet: { color: '#00b8ff', label: '推文' }
|
||
},
|
||
socialLinks: {
|
||
github: '',
|
||
twitter: '',
|
||
email: ''
|
||
},
|
||
tools: [
|
||
{ icon: 'fa-sitemap', href: '/sitemap.xml', title: '站点地图' },
|
||
{ icon: 'fa-rss', href: '/rss.xml', title: 'RSS订阅' }
|
||
],
|
||
search: {
|
||
placeholders: {
|
||
default: "'关键词' 文章 / 标签 / 分类",
|
||
small: "搜索...",
|
||
medium: "搜索文章..."
|
||
},
|
||
promptText: "搜索",
|
||
emptyResultText: "输入关键词搜索文章"
|
||
},
|
||
terminal: {
|
||
defaultWindowTitle: 'user@terminal: ~/blog',
|
||
controls: {
|
||
colors: {
|
||
close: '#ff5f56',
|
||
minimize: '#ffbd2e',
|
||
expand: '#27c93f'
|
||
}
|
||
},
|
||
animation: {
|
||
glowDuration: '4s'
|
||
}
|
||
},
|
||
branding: {
|
||
name: 'InitCool',
|
||
shortName: 'Termi'
|
||
}
|
||
};
|