* refactor(main): 使用枚举管理 IPC 通道 - 新增 IpcChannel 枚举,用于统一管理所有的 IPC 通道 - 修改相关代码,使用 IpcChannel 枚举替代硬编码的字符串通道名称 - 此改动有助于提高代码的可维护性和可读性,避免因通道名称变更导致的错误 * refactor(ipc): 将字符串通道名称替换为 IpcChannel 枚举 - 在多个文件中将硬编码的字符串通道名称替换为 IpcChannel 枚举值 - 更新了相关文件的导入,增加了对 IpcChannel 的引用 - 通过使用枚举来管理 IPC 通道名称,提高了代码的可维护性和可读性 * refactor(ipc): 调整 IPC 通道枚举和预加载脚本 - 移除了 IpcChannel 枚举中的未使用注释 - 更新了预加载脚本中 IpcChannel 的导入路径 * refactor(ipc): 更新 IpcChannel导入路径 - 将 IpcChannel 的导入路径从 @main/enum/IpcChannel 修改为 @shared/IpcChannel - 此修改涉及多个文件,包括 AppUpdater、BackupManager、EditMcpJsonPopup 等 - 同时移除了 tsconfig.web.json 中对 src/main/**/* 的引用 * refactor(ipc): 添加 ReduxStoreReady 事件并更新事件监听 - 在 IpcChannel 枚举中添加 ReduxStoreReady 事件 - 更新 ReduxService 中的事件监听,使用新的枚举值 * refactor(main): 重构 ReduxService 中的状态变化事件处理 - 将状态变化事件名称定义为常量 STATUS_CHANGE_EVENT - 更新事件监听和触发使用新的常量 - 优化了代码结构,提高了可维护性 * refactor(i18n): 优化国际化配置和语言选择逻辑 - 在多个文件中引入 defaultLanguage 常量,统一默认语言设置 - 调整 i18n 初始化和语言变更逻辑,使用新配置 - 更新相关组件和 Hook 中的语言选择逻辑 * refactor(ConfigManager): 重构配置管理器 - 添加 ConfigKeys 枚举,用于统一配置项的键名 - 引入 defaultLanguage,作为默认语言设置 - 重构 get 和 set 方法,使用 ConfigKeys 枚举作为键名 - 优化类型定义和方法签名,提高代码可读性和可维护性 * refactor(ConfigManager): 重命名配置键 ZoomFactor 将配置键 zoomFactor 重命名为 ZoomFactor,以符合命名规范。 更新了相关方法和属性以反映这一变更。 * refactor(shared): 重构常量定义并优化文件大小格式化逻辑 - 在 constant.ts 中添加 KB、MB、GB 常量定义 - 将 defaultLanguage 移至 constant.ts - 更新 ConfigManager、useAppInit、i18n、GeneralSettings 等文件中的导入路径 - 优化 formatFileSize 函数,使用新定义的常量 * refactor(FileSize): 使用 GB/MB/KB 等常量处理文件大小计算 * refactor(ipc): 将字符串通道名称替换为 IpcChannel 枚举 - 在多个文件中将硬编码的字符串通道名称替换为 IpcChannel 枚举值 - 更新了相关文件的导入,增加了对 IpcChannel 的引用 - 通过使用枚举来管理 IPC 通道名称,提高了代码的可维护性和可读性 * refactor(ipc): 更新 IpcChannel导入路径 - 将 IpcChannel 的导入路径从 @main/enum/IpcChannel 修改为 @shared/IpcChannel - 此修改涉及多个文件,包括 AppUpdater、BackupManager、EditMcpJsonPopup 等 - 同时移除了 tsconfig.web.json 中对 src/main/**/* 的引用 * refactor(i18n): 优化国际化配置和语言选择逻辑 - 在多个文件中引入 defaultLanguage 常量,统一默认语言设置 - 调整 i18n 初始化和语言变更逻辑,使用新配置 - 更新相关组件和 Hook 中的语言选择逻辑 * refactor(shared): 重构常量定义并优化文件大小格式化逻辑 - 在 constant.ts 中添加 KB、MB、GB 常量定义 - 将 defaultLanguage 移至 constant.ts - 更新 ConfigManager、useAppInit、i18n、GeneralSettings 等文件中的导入路径 - 优化 formatFileSize 函数,使用新定义的常量 * refactor: 移除重复的导入语句 - 在 HomeWindow.tsx 和 useAppInit.ts 文件中移除了重复的 defaultLanguage导入语句 - 这个改动简化了代码结构,提高了代码的可读性和维护性
165 lines
5.3 KiB
TypeScript
165 lines
5.3 KiB
TypeScript
export const imageExts = ['.jpg', '.jpeg', '.png', '.gif', '.bmp', '.webp']
|
|
export const videoExts = ['.mp4', '.avi', '.mov', '.wmv', '.flv', '.mkv']
|
|
export const audioExts = ['.mp3', '.wav', '.ogg', '.flac', '.aac']
|
|
export const documentExts = ['.pdf', '.docx', '.pptx', '.xlsx', '.odt', '.odp', '.ods']
|
|
export const thirdPartyApplicationExts = ['.draftsExport']
|
|
export const bookExts = ['.epub']
|
|
export const textExts = [
|
|
'.txt', // 普通文本文件
|
|
'.md', // Markdown 文件
|
|
'.mdx', // Markdown 文件
|
|
'.html', // HTML 文件
|
|
'.htm', // HTML 文件的另一种扩展名
|
|
'.xml', // XML 文件
|
|
'.json', // JSON 文件
|
|
'.yaml', // YAML 文件
|
|
'.yml', // YAML 文件的另一种扩展名
|
|
'.csv', // 逗号分隔值文件
|
|
'.tsv', // 制表符分隔值文件
|
|
'.ini', // 配置文件
|
|
'.log', // 日志文件
|
|
'.rtf', // 富文本格式文件
|
|
'.org', // org-mode 文件
|
|
'.wiki', // VimWiki 文件
|
|
'.tex', // LaTeX 文件
|
|
'.bib', // BibTeX 文件
|
|
'.srt', // 字幕文件
|
|
'.xhtml', // XHTML 文件
|
|
'.nfo', // 信息文件(主要用于场景发布)
|
|
'.conf', // 配置文件
|
|
'.config', // 配置文件
|
|
'.env', // 环境变量文件
|
|
'.rst', // reStructuredText 文件
|
|
'.php', // PHP 脚本文件,包含嵌入的 HTML
|
|
'.js', // JavaScript 文件(部分是文本,部分可能包含代码)
|
|
'.ts', // TypeScript 文件
|
|
'.jsp', // JavaServer Pages 文件
|
|
'.aspx', // ASP.NET 文件
|
|
'.bat', // Windows 批处理文件
|
|
'.sh', // Unix/Linux Shell 脚本文件
|
|
'.py', // Python 脚本文件
|
|
'.ipynb', // Jupyter 笔记本格式
|
|
'.rb', // Ruby 脚本文件
|
|
'.pl', // Perl 脚本文件
|
|
'.sql', // SQL 脚本文件
|
|
'.css', // Cascading Style Sheets 文件
|
|
'.less', // Less CSS 预处理器文件
|
|
'.scss', // Sass CSS 预处理器文件
|
|
'.sass', // Sass 文件
|
|
'.styl', // Stylus CSS 预处理器文件
|
|
'.coffee', // CoffeeScript 文件
|
|
'.ino', // Arduino 代码文件
|
|
'.asm', // Assembly 语言文件
|
|
'.go', // Go 语言文件
|
|
'.scala', // Scala 语言文件
|
|
'.swift', // Swift 语言文件
|
|
'.kt', // Kotlin 语言文件
|
|
'.rs', // Rust 语言文件
|
|
'.lua', // Lua 语言文件
|
|
'.groovy', // Groovy 语言文件
|
|
'.dart', // Dart 语言文件
|
|
'.hs', // Haskell 语言文件
|
|
'.clj', // Clojure 语言文件
|
|
'.cljs', // ClojureScript 语言文件
|
|
'.elm', // Elm 语言文件
|
|
'.erl', // Erlang 语言文件
|
|
'.ex', // Elixir 语言文件
|
|
'.exs', // Elixir 脚本文件
|
|
'.pug', // Pug (formerly Jade) 模板文件
|
|
'.haml', // Haml 模板文件
|
|
'.slim', // Slim 模板文件
|
|
'.tpl', // 模板文件(通用)
|
|
'.ejs', // Embedded JavaScript 模板文件
|
|
'.hbs', // Handlebars 模板文件
|
|
'.mustache', // Mustache 模板文件
|
|
'.jade', // Jade 模板文件 (已重命名为 Pug)
|
|
'.twig', // Twig 模板文件
|
|
'.blade', // Blade 模板文件 (Laravel)
|
|
'.vue', // Vue.js 单文件组件
|
|
'.jsx', // React JSX 文件
|
|
'.tsx', // React TSX 文件
|
|
'.graphql', // GraphQL 查询语言文件
|
|
'.gql', // GraphQL 查询语言文件
|
|
'.proto', // Protocol Buffers 文件
|
|
'.thrift', // Thrift 文件
|
|
'.toml', // TOML 配置文件
|
|
'.edn', // Clojure 数据表示文件
|
|
'.cake', // CakePHP 配置文件
|
|
'.ctp', // CakePHP 视图文件
|
|
'.cfm', // ColdFusion 标记语言文件
|
|
'.cfc', // ColdFusion 组件文件
|
|
'.m', // Objective-C 或 MATLAB 源文件
|
|
'.mm', // Objective-C++ 源文件
|
|
'.gradle', // Gradle 构建文件
|
|
'.groovy', // Gradle 构建文件
|
|
'.kts', // Kotlin Script 文件
|
|
'.java', // Java 代码文件
|
|
'.cs', // C# 代码文件
|
|
'.cpp', // C++ 代码文件
|
|
'.c', // C++ 代码文件
|
|
'.h', // C++ 头文件
|
|
'.hpp', // C++ 头文件
|
|
'.cc', // C++ 源文件
|
|
'.cxx', // C++ 源文件
|
|
'.cppm', // C++20 模块接口文件
|
|
'.ipp', // 模板实现文件
|
|
'.ixx', // C++20 模块实现文件
|
|
'.f90', // Fortran 90 源文件
|
|
'.f', // Fortran 固定格式源代码文件
|
|
'.f03', // Fortran 2003+ 源代码文件
|
|
'.ahk', // AutoHotKey 语言文件
|
|
'.tcl', // Tcl 脚本
|
|
'.do', // Questa 或 Modelsim Tcl 脚本
|
|
'.v', // Verilog 源文件
|
|
'.sv', // SystemVerilog 源文件
|
|
'.svh', // SystemVerilog 头文件
|
|
'.vhd', // VHDL 源文件
|
|
'.vhdl', // VHDL 源文件
|
|
'.lef', // Library Exchange Format
|
|
'.def', // Design Exchange Format
|
|
'.edif', // Electronic Design Interchange Format
|
|
'.sdf', // Standard Delay Format
|
|
'.sdc', // Synopsys Design Constraints
|
|
'.xdc', // Xilinx Design Constraints
|
|
'.rpt', // 报告文件
|
|
'.lisp', // Lisp 脚本
|
|
'.il', // Cadence SKILL 脚本
|
|
'.ils', // Cadence SKILL++ 脚本
|
|
'.sp', // SPICE netlist 文件
|
|
'.spi', // SPICE netlist 文件
|
|
'.cir', // SPICE netlist 文件
|
|
'.net', // SPICE netlist 文件
|
|
'.scs', // Spectre netlist 文件
|
|
'.asc', // LTspice netlist schematic 文件
|
|
'.tf' // Technology File
|
|
]
|
|
|
|
export const ZOOM_SHORTCUTS = [
|
|
{
|
|
key: 'zoom_in',
|
|
shortcut: ['CommandOrControl', '='],
|
|
editable: false,
|
|
enabled: true,
|
|
system: true
|
|
},
|
|
{
|
|
key: 'zoom_out',
|
|
shortcut: ['CommandOrControl', '-'],
|
|
editable: false,
|
|
enabled: true,
|
|
system: true
|
|
},
|
|
{
|
|
key: 'zoom_reset',
|
|
shortcut: ['CommandOrControl', '0'],
|
|
editable: false,
|
|
enabled: true,
|
|
system: true
|
|
}
|
|
]
|
|
|
|
export const KB = 1024
|
|
export const MB = 1024 * KB
|
|
export const GB = 1024 * MB
|
|
export const defaultLanguage = 'en-US'
|