import { i18n } from './utils'; const baseApiPath = '/api/public/com/highcapable/yukihookapi/'; const navigationLinks = { start: [ '/guide/home', '/guide/knowledge', '/guide/quick-start', '/guide/example', '/guide/move-to-new-api' ], config: [ '/config/api-example', '/config/api-exception', '/config/xposed-using', '/config/api-using', '/config/r8-proguard' ], tools: '/tools/yukihookapi-projectbuilder', apiDocs: [ '/api/home', '/api/public/', '/api/special-features/' ], publicApi: [ baseApiPath + 'YukiHookAPI', baseApiPath + 'hook/param/PackageParam', baseApiPath + 'hook/param/HookParam', baseApiPath + 'annotation/xposed/InjectYukiHookWithXposed', baseApiPath + 'hook/xposed/proxy/IYukiHookXposedInit', baseApiPath + 'hook/xposed/prefs/YukiHookModulePrefs', baseApiPath + 'hook/xposed/prefs/ui/ModulePreferenceFragment', baseApiPath + 'hook/xposed/prefs/data/PrefsData', baseApiPath + 'hook/xposed/channel/YukiHookDataChannel', baseApiPath + 'hook/xposed/channel/data/ChannelData', baseApiPath + 'hook/xposed/application/ModuleApplication', baseApiPath + 'hook/xposed/parasitic/activity/base/ModuleAppActivity', baseApiPath + 'hook/xposed/parasitic/activity/base/ModuleAppCompatActivity', baseApiPath + 'hook/xposed/parasitic/context/wrapper/ModuleContextThemeWrapper', baseApiPath + 'hook/xposed/bridge/dummy/YukiModuleResources', baseApiPath + 'hook/xposed/bridge/dummy/YukiResources', baseApiPath + 'hook/xposed/bridge/dummy/YukiResForwarder', baseApiPath + 'hook/xposed/bridge/event/YukiXposedEvent', baseApiPath + 'hook/type/android/ComponentTypeFactory', baseApiPath + 'hook/type/android/GraphicsTypeFactory', baseApiPath + 'hook/type/android/ViewTypeFactory', baseApiPath + 'hook/type/java/VariableTypeFactory', baseApiPath + 'hook/type/defined/DefinedTypeFactory', baseApiPath + 'hook/log/LoggerFactory', baseApiPath + 'hook/factory/ReflectionFactory', baseApiPath + 'hook/factory/YukiHookFactory', baseApiPath + 'hook/entity/YukiBaseHooker', baseApiPath + 'hook/core/YukiMemberHookCreator', baseApiPath + 'hook/core/YukiResourcesHookCreator', baseApiPath + 'hook/core/finder/members/MethodFinder', baseApiPath + 'hook/core/finder/members/ConstructorFinder', baseApiPath + 'hook/core/finder/members/FieldFinder', baseApiPath + 'hook/core/finder/base/BaseFinder', baseApiPath + 'hook/core/finder/base/rules/CountRules', baseApiPath + 'hook/core/finder/base/rules/ModifierRules', baseApiPath + 'hook/core/finder/base/rules/NameRules', baseApiPath + 'hook/bean/HookClass', baseApiPath + 'hook/bean/VariousClass', baseApiPath + 'hook/bean/CurrentClass', baseApiPath + 'hook/bean/HookResources' ], specialFeature: [ '/api/special-features/reflection', '/api/special-features/logger', '/api/special-features/xposed-prefs', '/api/special-features/xposed-channel', '/api/special-features/host-lifecycle', '/api/special-features/host-inject' ], about: [ '/about/changelog', '/about/future', '/about/contacts', '/about/about' ] }; export const configs = { dev: { dest: '../docs/', port: 9000 }, website: { base: '/YukiHookAPI/', icon: '/images/logo.png', title: 'Yuki Hook API', locales: { '/en/': { lang: 'en-US', description: 'An efficient Kotlin version of the Xposed Hook API' }, '/zh-cn/': { lang: 'zh-CN', description: '一个使用 Kotlin 重构的轻量、高效、稳定的 Xposed Hook API' } } }, github: { repo: 'https://github.com/fankes/YukiHookAPI', branch: 'master', dir: 'docs/src' } }; export const navBarItems = { '/en/': [{ text: 'Navigation', children: [{ text: 'Get Started', children: [ { text: 'Introduce', link: i18n.string(navigationLinks.start[0], 'en') }, { text: 'Basic Knowledge', link: i18n.string(navigationLinks.start[1], 'en') }, { text: 'Quick Start', link: i18n.string(navigationLinks.start[2], 'en') }, { text: 'Usage Example', link: i18n.string(navigationLinks.start[3], 'en') }, { text: 'Migrate from Xposed API', link: i18n.string(navigationLinks.start[4], 'en') } ] }, { text: 'Configs', children: [ { text: 'API Basic Configs', link: i18n.string(navigationLinks.config[0], 'en') }, { text: 'API Exception Handling', link: i18n.string(navigationLinks.config[1], 'en') }, { text: 'Use as Xposed Module Configs', link: i18n.string(navigationLinks.config[2], 'en') }, { text: 'Use as Hook API Configs', link: i18n.string(navigationLinks.config[3], 'en') }, { text: 'R8 & Proguard Obfuscate', link: i18n.string(navigationLinks.config[4], 'en') } ] }, { text: 'Tools', children: [ { text: 'YukiHookAPI Project Builder', link: i18n.string(navigationLinks.tools, 'en') } ] }, { text: 'API Document', children: [{ text: 'Document Introduction', link: i18n.string(navigationLinks.apiDocs[0], 'en') }, { text: 'Public API', link: i18n.string(navigationLinks.publicApi[0], 'en'), activeMatch: i18n.string(navigationLinks.apiDocs[1], 'en') }, { text: 'Special Features', link: i18n.string(navigationLinks.specialFeature[0], 'en'), activeMatch: i18n.string(navigationLinks.apiDocs[2], 'en') }] }, { text: 'About', children: [ { text: 'Changelog', link: i18n.string(navigationLinks.about[0], 'en') }, { text: 'Looking for future', link: i18n.string(navigationLinks.about[1], 'en') }, { text: 'Contact Us', link: i18n.string(navigationLinks.about[2], 'en') }, { text: 'About this document', link: i18n.string(navigationLinks.about[3], 'en') } ] }] }, { text: 'Contact Us', link: i18n.string(navigationLinks.about[2], 'en') }], '/zh-cn/': [{ text: '导航', children: [{ text: '入门', children: [ { text: '介绍', link: i18n.string(navigationLinks.start[0], 'zh-cn') }, { text: '基础知识', link: i18n.string(navigationLinks.start[1], 'zh-cn') }, { text: '快速开始', link: i18n.string(navigationLinks.start[2], 'zh-cn') }, { text: '用法示例', link: i18n.string(navigationLinks.start[3], 'zh-cn') }, { text: '从 Xposed API 迁移', link: i18n.string(navigationLinks.start[4], 'zh-cn') } ] }, { text: '配置', children: [ { text: 'API 基本配置', link: i18n.string(navigationLinks.config[0], 'zh-cn') }, { text: 'API 异常处理', link: i18n.string(navigationLinks.config[1], 'zh-cn') }, { text: '作为 Xposed 模块使用的相关配置', link: i18n.string(navigationLinks.config[2], 'zh-cn') }, { text: '作为 Hook API 使用的相关配置', link: i18n.string(navigationLinks.config[3], 'zh-cn') }, { text: 'R8 与 Proguard 混淆', link: i18n.string(navigationLinks.config[4], 'zh-cn') } ] }, { text: '工具', children: [ { text: 'YukiHookAPI 构建工具', link: i18n.string(navigationLinks.tools, 'zh-cn') } ] }, { text: 'API 文档', children: [{ text: '文档介绍', link: i18n.string(navigationLinks.apiDocs[0], 'zh-cn') }, { text: 'Public API', link: i18n.string(navigationLinks.publicApi[0], 'zh-cn'), activeMatch: i18n.string(navigationLinks.apiDocs[1], 'zh-cn') }, { text: '特色功能', link: i18n.string(navigationLinks.specialFeature[0], 'zh-cn'), activeMatch: i18n.string(navigationLinks.apiDocs[2], 'zh-cn') }] }, { text: '关于', children: [ { text: '更新日志', link: i18n.string(navigationLinks.about[0], 'zh-cn') }, { text: '展望未来', link: i18n.string(navigationLinks.about[1], 'zh-cn') }, { text: '联系我们', link: i18n.string(navigationLinks.about[2], 'zh-cn') }, { text: '关于此文档', link: i18n.string(navigationLinks.about[3], 'zh-cn') } ] }] }, { text: '联系我们', link: i18n.string(navigationLinks.about[2], 'zh-cn') }] }; export const sideBarItems = { '/en/': [{ text: 'Get Started', collapsible: true, children: i18n.array(navigationLinks.start, 'en') }, { text: 'Configs', collapsible: true, children: i18n.array(navigationLinks.config, 'en') }, { text: 'Tools', collapsible: true, children: [i18n.string(navigationLinks.tools, 'en')] }, { text: 'API Document', collapsible: true, children: [i18n.string(navigationLinks.apiDocs[0], 'en'), { text: 'Public API' + i18n.space, collapsible: true, children: i18n.array(navigationLinks.publicApi, 'en') }, { text: 'Special Features' + i18n.space, collapsible: true, children: i18n.array(navigationLinks.specialFeature, 'en') }] }, { text: 'About', collapsible: true, children: i18n.array(navigationLinks.about, 'en') }], '/zh-cn/': [{ text: '入门', collapsible: true, children: i18n.array(navigationLinks.start, 'zh-cn') }, { text: '配置', collapsible: true, children: i18n.array(navigationLinks.config, 'zh-cn') }, { text: '工具', collapsible: true, children: [i18n.string(navigationLinks.tools, 'zh-cn')] }, { text: 'API 文档', collapsible: true, children: [i18n.string(navigationLinks.apiDocs[0], 'zh-cn'), { text: 'Public API' + i18n.space, collapsible: true, children: i18n.array(navigationLinks.publicApi, 'zh-cn') }, { text: '特色功能' + i18n.space, collapsible: true, children: i18n.array(navigationLinks.specialFeature, 'zh-cn') }] }, { text: '关于', collapsible: true, children: i18n.array(navigationLinks.about, 'zh-cn') }] };