Commit graph

31 commits

Author SHA1 Message Date
Your Name
6d948b0873 feat: implement automatic format inference service with candidate generation and prediction model
- Add formatCandidateRules.ts to define rules for generating format candidates based on file features.
- Introduce formatPredictionModel.ts to predict the most likely target format based on user behavior and file features.
- Create inferenceService.ts to integrate all inference modules and provide a unified inference API.
- Develop inference.tsx as an API endpoint for frontend calls to predict formats and engines based on file extensions.
- Implement logging for conversion events and dismissals, along with user profile retrieval.
- Ensure warmup management for engine predictions and provide status checks.
2026-01-26 12:47:16 +08:00
Your Name
d38505f6fa feat: 更新 robots.txt、base.tsx 和 sitemap.xml,增強 SEO 設定與多語言支援 2026-01-25 15:03:57 +08:00
Your Name
506340ecda fix: 更新 site.webmanifest 和 base.tsx,新增多語言支持及應用元數據 2026-01-24 15:03:34 +08:00
Your Name
944fe18b75 Add unit tests for PDF Packager converter functionality
- Implement tests for converter properties, ensuring correct input and output formats.
- Add tests for chip parsing, covering various image, pdf_image, and pdfa chip formats.
- Include tests for the isArchiveOutput and getOutputFileName functions.
- Mock execFile for testing the convert function, verifying command execution and output file creation.
- Ensure all chips are parseable and validate the completeness of chip categories.
2026-01-24 14:39:22 +08:00
Your Name
79fc6f7067 fix: resolve lint issues (XSS K601, knip unused exports, eslint errors)
- Fix XSS warnings in user.tsx by adding safe attribute to elements
- Remove unused exports: ChunkUploadRequest, getArchiveInfo,
  getFileForDirectDownload, createDirectDownloadHeaders, createConverterArchive
- Fix eslint no-unused-vars errors across multiple files
- Fix pdfmathtranslate async Promise executor issue
- Update tests to use toThrow instead of toMatch for Error objects
- Apply prettier formatting
2026-01-21 16:00:26 +08:00
Your Name
db5f47586e feat: add theme toggle functionality and update localization files
- Implemented a theme toggle feature allowing users to switch between light and dark modes.
- Added a new ThemeToggle component for the theme switching button.
- Updated theme CSS to support dark mode variables and system preference detection.
- Enhanced localization files to include translations for the "toggleTheme" key across multiple languages.
2026-01-21 15:00:34 +08:00
Your Name
d943771f36 feat: add PDFMathTranslate converter for PDF translation with mathematical content
- Introduced PDFMathTranslate converter to handle PDF translations while preserving mathematical formulas.
- Updated Dockerfile to include necessary dependencies and pre-download models during build.
- Enhanced README.md to document the new converter and its features.
- Added tests for PDFMathTranslate to ensure correct functionality and error handling.
2026-01-21 14:31:19 +08:00
Your Name
5322f85721 feat: 實作全域檔案傳輸機制與 .tar 封裝規範
## 主要變更

### 新增全域檔案傳輸模組 (src/transfer/)
- constants.ts: 定義傳輸常數(10MB 門檻、5MB chunk 大小)
- types.ts: 傳輸類型定義
- uploadManager.ts: 後端上傳管理器(支援直傳與 chunk)
- downloadManager.ts: 後端下載管理器(支援直傳與 chunk)
- archiveManager.ts: 封裝管理器(僅允許 .tar)
- index.ts: 統一匯出

### 新增 API 端點
- uploadChunk.tsx: Chunk 上傳 API
- downloadChunk.tsx: Chunk 下載 API

### 前端更新
- public/script.js: 整合智慧傳輸策略(≤10MB 直傳,>10MB chunk)
- public/transfer.js: 前端傳輸管理模組

### 轉換器更新
- mineru.ts: 改用 .tar 格式(不壓縮),禁止 .tar.gz
- download.tsx: 使用統一的封裝管理器

### 測試
- tests/transfer/: 完整傳輸機制測試套件
- tests/converters/mineru.test.ts: 更新以符合 .tar 規範

### 文件
- README.md: 新增檔案傳輸機制說明

## 設計原則
- 檔案 ≤10MB:直接傳輸
- 檔案 >10MB:使用 5MB chunks 分段傳輸
- 多檔輸出:僅允許 .tar 封裝(禁止 .tar.gz/.zip)
- 引擎層不感知 chunk(僅傳輸層處理)
2026-01-21 13:58:01 +08:00
Your Name
d0388066a5 docs: 優化全頁拖曳上傳支援,增加防重複檢查機制 2026-01-21 11:13:21 +08:00
Your Name
a45a049fe2 feat: v0.1.9 - 全頁拖曳上傳 + i18n 修正 + 文件更新
 Features:
- 全頁拖曳上傳:檔案可拖曳到頁面任何位置上傳
- 原本的上傳框視覺效果保持不變

🌍 i18n:
- 刪除任務的 confirm/alert 訊息改用 i18n
- 隨語言切換即時更新顯示內容

📚 Documentation:
- README 新增「如何更新 ConvertX-CN 版本」章節
- 新增 deployment.md(Reverse Proxy、HTTPS)
- 新增 Docker Compose 範例分層
- 更新 environment-variables.md
2026-01-20 15:09:30 +08:00
Your Name
569c572e62 fix(ci): resolve all lint errors for GitHub Actions
- Remove unused SupportedLocale import in results.tsx
- Remove unused webroot variable in public/i18n.js
- Configure knip.json to ignore i18n public API exports
- Add language-selector and language-option to ESLint ignore list
- Auto-fix Prettier formatting across all files
- Fix better-tailwindcss line wrapping issues
2026-01-20 12:16:13 +08:00
Your Name
558d638df8 feat(v0.1.4): Fix i18n imports + Default open registration
## Changes

### i18n Module Fixes
- Fix import paths in service.ts, languageSelector.tsx, header.tsx, base.tsx, results.tsx
- Change from '../i18n' to '../i18n/index' or './index' for proper module resolution

### Registration (Breaking Change)
- Change ACCOUNT_REGISTRATION default from false to true (out-of-box ready)
- Login and Register pages now both visible by default

### Version Bump
- Update package.json to v0.1.4
- Update CHANGELOG.md with v0.1.4 release notes
- Update README.md and docs with new version numbers

### Build Verification
- bun run build: PASSED
- Docker build: PASSED
- TypeScript compilation: PASSED (no errors)
2026-01-20 11:41:43 +08:00
Your Name
33301033ae feat(i18n): add multi-language UI support with 5 languages
- Add i18n framework with locale detection and cookie persistence
- Support English, Traditional Chinese (zh-TW), Simplified Chinese (zh-CN), Japanese (ja), Korean (ko)
- Add LanguageSelector component in navigation header
- Create locale JSON files with full translations
- Update all page components (root, user, results, history) with i18n support
- Add client-side translation helpers for dynamic content
- Auto-detect user's preferred language from browser settings
- Bump version to v0.1.3
2026-01-20 10:01:55 +08:00
Emrik Östling
3e7e95b53c
feature: add download all file by file alongside the tar download (#415) 2025-10-07 21:27:31 +02:00
C4illin
17325a6e6d chore: fix lint 2025-10-05 14:19:13 +00:00
C4illin
d984891791 chore: add devcontainer 2025-10-05 13:57:54 +00:00
Emrik Östling
a9bc9d7e8d
Merge pull request #342 from Netzz0/FEAT/better-handling-of-multiples-files
Better handling of multiples files (Added Archive downloads and env var to set maximum concurrent processes)
2025-07-22 18:15:01 +02:00
C4illin
827f22e2fc fix: update favicon
issue: #158

Co-authored-by: clockwinder <54368516+clockwinder@users.noreply.github.com>
Co-authored-by: Denny Subke <155585746+dennysubke@users.noreply.github.com>
2025-06-26 00:38:59 +02:00
Maxime
2ce3fee70b added tar creation when using Download All 2025-06-25 14:34:27 +02:00
C4illin
1be11708c4 chore: format all files 2025-06-03 19:19:28 +02:00
C4illin
ff2c0057e8 fix: progress bars on firefox 2025-06-03 18:23:26 +02:00
aidanjacobson
ff2ef74135 feat: add support for drag/drop of images 2025-05-13 19:19:57 -07:00
C4illin
19970fc132 chore: fix lint 2025-03-06 21:09:02 +01:00
lacni
dc82a438d4 fix: refactored uploadFile to only accept a single file instead of multiple 2025-02-27 21:11:52 -05:00
lacni
cc54bdcbe7 feat: made every upload file independent 2025-02-27 19:18:13 -05:00
lacni
ae4bbc8baa fix: added onerror log 2025-02-27 19:15:58 -05:00
lacni
db60f355b2 feat: added progress bar for file upload 2025-02-26 23:31:31 -05:00
C4illin
4c05fd72bb fix: wait for both upload and selection
issue #177
2024-11-21 22:44:13 +01:00
C4illin
58e220e82d feat: disable convert when uploading
issue #177
2024-11-12 22:30:16 +01:00
C4illin
36cb6cc589 feat: Allow to chose webroot
issue #180
2024-11-06 08:49:53 +01:00
C4illin
d2cd6706c9 chore: update @elysiajs/static 2024-10-18 19:32:42 +02:00