Commit Graph

37 Commits

Author SHA1 Message Date
Innei
42c217e2f8 chore(deps): update package versions across the project
- Bumped versions for several dependencies including `@types/node`, `eslint`, `sharp`, `vite`, and various `@tanstack/react-query` packages to their latest releases for improved stability and features.
- Updated Tailwind CSS related packages to version 4.1.17 for consistency across the project.
- Adjusted other dependencies such as `jotai`, `lucide-react`, and `tailwind-merge` to their latest versions to ensure compatibility and access to new features.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-12 23:57:37 +08:00
Innei
e27b45ec49 feat(builder): upload thumbnails via storage plugin (#137)
Signed-off-by: Innei <tukon479@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2025-10-31 21:49:31 +08:00
Innei
ba68be802e feat: revamp dashboard photo management (#136)
Signed-off-by: Innei <tukon479@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-31 02:07:13 +08:00
Innei
d6ad6d17ab refactor: component move to monorepo (#128)
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-25 00:59:25 +08:00
Innei
b918d65fb9 chore: update license
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-20 16:52:07 +08:00
Innei
32af836f42 chore: update deps
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-19 00:18:22 +08:00
MaxtuneLee
6b16b83e72 fix(webglviewer): fix tile render strategy and tile update inspector (#114) 2025-10-13 00:16:20 +08:00
Innei
791fccf244 chore: update deps
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-08 20:21:11 +08:00
Innei
bfe1537602 chore: update deps
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-02 17:58:43 +08:00
Innei
793ed1ae14 chore: update package manager and dependencies across multiple packages
- Upgraded the package manager to pnpm@10.17.1 in package.json files for apps and packages.
- Updated eslint-plugin-react-refresh to version 0.4.21 in packages/docs/package.json.
- Upgraded typescript-eslint and vite to versions 8.44.1 and 7.1.7 respectively in packages/docs/package.json.
- Ensured consistency in package versions across the project.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-24 00:51:37 +08:00
Innei
6fafb5710e chore: update react version in pnpm-lock.yaml and package.json
- Updated the react dependency version to 19.1.1 in both pnpm-lock.yaml and package.json for consistency and to ensure compatibility with the latest features and fixes.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-22 00:18:13 +08:00
Innei
d98049ded6 Revert "perf: image webgl perf"
This reverts commit 444468b862.
2025-09-21 18:29:31 +08:00
Innei
84b6c0f438 chore: update dependencies and improve configurations
- Upgraded various dependencies across the project, including dotenv, eslint, prettier, and typescript.
- Updated package versions in package.json and pnpm-lock.yaml for better compatibility and performance.
- Adjusted tailwindcss and related plugins to the latest versions.
- Enhanced the S3 client configuration in the builder package.
- Fixed import statements in CSS files to use @import instead of @plugin for tailwindcss-safe-area.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-21 17:49:49 +08:00
Innei
444468b862 perf: image webgl perf
- Added total pixel calculation to the ExifPanel, displaying the total pixel count based on image dimensions.
- Updated the rendering logic to use the new total pixel value instead of formatted EXIF data for pixel information.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-15 21:03:02 +08:00
Innei
f5cd5d800c chore: update deps
Signed-off-by: Innei <tukon479@gmail.com>
2025-08-31 01:36:08 +08:00
Innei
6ed3e86dc1 feat: implement texture worker for image loading and tile creation
- Added a new texture worker to handle image loading and LOD (Level of Detail) tile creation.
- Replaced the previous TypeScript worker with a JavaScript version for improved performance and compatibility.
- Introduced message handling for loading images, creating tiles, and managing LOD levels.
- Updated the WebGLImageViewerEngine to communicate with the new worker, enhancing image processing efficiency.

Signed-off-by: Innei <tukon479@gmail.com>
2025-07-02 16:28:56 +08:00
Innei
c8315c29b0 refactor: update WebGL image viewer and improve loading state handling
- Enhanced the ProgressiveImage component to utilize the new LoadingState enum for better loading state management.
- Updated the WebGLImageViewerEngine to notify loading states using the LoadingState enum, improving clarity in loading messages.
- Refactored spring animations to use the Transition type for better type safety.
- Updated localization files to include new loading messages for WebGL operations in both English and Chinese.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-26 21:08:16 +08:00
Innei
be6fdce89a feat: enhance EXIF data processing and worker initialization
- Updated the EXIF data formatting logic to conditionally include GPS information only when latitude and longitude are available.
- Introduced a new worker initialization message structure to facilitate the transfer of shared data between the main process and workers.
- Enhanced the worker process to handle initialization messages and deserialize shared data for improved task management.
- Refactored the manifest loading and saving functions to support a new manifest structure, ensuring compatibility with the updated data handling.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-17 16:37:42 +08:00
Innei
8f28d75266 chore: change namespace
Signed-off-by: Innei <tukon479@gmail.com>
2025-06-12 21:51:25 +08:00
Innei
ac52350b6d chore: update package dependencies across multiple packages
- Bumped versions of several packages including zod (3.25.63), tailwindcss (4.1.10), tsx (4.20.2), and others to their latest releases for improved performance and security.
- Updated @types/node and @types/react to 24.0.1 and 19.1.8 respectively in various package.json files to ensure compatibility with the latest TypeScript features.
- Adjusted dependencies in the builder and webgl-viewer packages to reflect the latest versions.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-12 18:34:08 +08:00
Innei
71ec6fefbb feat(WebGLImageViewer): add resize observer for canvas resizing
Signed-off-by: Innei <tukon479@gmail.com>
2025-06-11 15:52:45 +08:00
Innei
898bd18c44 Refactor code structure for improved readability and maintainability
Signed-off-by: Innei <tukon479@gmail.com>
2025-06-10 14:45:38 +08:00
Innei
caa09110dd feat: add SlidingNumber component and integrate scale indicator in ProgressiveImage
Signed-off-by: Innei <tukon479@gmail.com>
2025-06-09 00:52:26 +08:00
Innei
2eb3020daa release: v0.1.0 2025-06-09 00:39:15 +08:00
Innei
945a8ebe1a refactor: simplify LOD levels and remove unused device detection constants
Signed-off-by: Innei <tukon479@gmail.com>
2025-06-09 00:28:03 +08:00
Innei
972893b2da Refactor WebGL viewer interfaces and remove LOD worker
- Updated DebugInfo interface to replace tiling properties with a new tileSystem structure for better management of tile-related data.
- Deleted the lodWorker.ts file, which contained the LOD processing logic, as it is no longer needed.
- Introduced a new texture.worker.ts file to handle tile creation using OffscreenCanvas, improving performance and memory management.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-09 00:12:15 +08:00
Innei
b990bd5f65 feat: enhance ProgressiveImage with mobile support and improved image handling
- Added mobile detection to conditionally render either WebGLImageViewer or DOMImageViewer based on device type.
- Refactored image copying logic to improve reliability and user feedback during the copy process.
- Introduced DOMImageViewer component for better handling of image interactions on mobile devices.
- Updated WebGLImageViewer to streamline image loading and context menu interactions.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-07 17:04:10 +08:00
Innei
3a0153d564 feat: enhance WebGL image viewer with new engine and improved LOD management
- Introduced WebGLImageViewerEngine2 for optimized image rendering and interaction.
- Added support for on-demand LOD management, allowing for efficient memory usage and improved performance.
- Updated WebGLImageViewer to utilize the new engine based on image dimensions.
- Enhanced DebugInfo interface to include additional visibility region information.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 22:43:30 +08:00
Innei
3907a9c732 refactor: optimize image loading and rendering in PhotoViewer and WebGLImageViewer
- Removed the getImageDisplaySize function to directly use original image dimensions, improving WebGL loading efficiency.
- Updated ProgressiveImage and WebGLImageViewer components to accept optional width and height props for better image handling.
- Enhanced WebGLImageViewerEngine to utilize preknown dimensions for optimized loading and rendering strategies.
- Implemented logic to handle dimension mismatches and adjust rendering strategies accordingly.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 16:03:43 +08:00
Innei
3a64e62124 feat: enhance device detection and performance estimation in WebGLImageViewerEngine
- Added utility functions for detecting mobile, iOS, Android, and tablet devices, improving responsiveness based on device type.
- Implemented performance estimation methods to assess device capabilities, allowing for optimized loading strategies.
- Updated WebGLImageViewerEngine to utilize new device detection and performance estimation features, enhancing memory management and loading behavior for large images.
- Refactored image loading and texture creation processes to avoid blocking the main thread, improving overall user experience.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 15:49:52 +08:00
Innei
8f2abb330b feat: implement on-demand LOD management in WebGLImageViewerEngine
- Introduced a new strategy for managing Level of Detail (LOD) textures, allowing only the currently needed LOD to be retained, which optimizes memory usage.
- Updated the image loading method to accept ImageData, enhancing flexibility in image processing.
- Refactored texture creation and cleanup processes to support the new LOD management strategy, ensuring efficient memory handling.
- Removed preloading logic in favor of on-demand LOD creation to further reduce memory pressure.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 14:31:08 +08:00
Innei
08a58b4486 feat: enhance WebGLImageViewerEngine with drag optimization and tile management
- Introduced drag optimization features to improve performance during image dragging.
- Added methods for throttled tile updates and predictive loading based on drag direction.
- Enhanced tile priority calculation to ensure better loading of visible tiles.
- Adjusted tile loading strategies based on drag state and device type for improved responsiveness.
- Implemented cleanup and state management for drag events to maintain rendering quality.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 02:35:12 +08:00
Innei
0c9784acd7 feat: enhance DebugInfo component with collapsible sections and improved layout
- Introduced CollapsibleSection and StatusIndicator components for better organization of debug information.
- Updated DebugInfoComponent to support collapsible sections for transform, image, memory, and tiling information.
- Improved styling and layout for better readability and user interaction.
- Adjusted debug information display logic to handle null state and added quality and memory pressure indicators.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 01:58:31 +08:00
Innei
25521e2af6 feat: enhance ProgressiveImage and WebGLImageViewerEngine with memory management and tiled rendering
- Updated ProgressiveImage component to conditionally render high-resolution images based on the current image state.
- Enhanced DebugInfo component to include detailed memory usage statistics.
- Introduced a tiled rendering system in WebGLImageViewerEngine for efficient handling of large images, including memory management and cleanup strategies.
- Implemented logic to dynamically adjust loading strategies based on image size and device type.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 01:50:45 +08:00
Innei
26c93dbf9d backup
Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 00:53:35 +08:00
Innei
b51d81bd47 chore: update package dependencies and versions
- Upgraded `eslint-config-hyoban` from 4.0.7 to 4.0.8.
- Updated AWS SDK packages `@aws-sdk/client-s3` and `@aws-sdk/s3-request-presigner` from 3.823.0 to 3.824.0.
- Bumped `@tanstack/react-query` from 5.80.2 to 5.80.5.
- Updated `@types/react-dom` from 19.1.5 to 19.1.6.
- Incremented `tsdown` version from 0.12.6 to 0.12.7.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-05 18:43:36 +08:00
Innei
f841d2ada2 feat: init 2025-06-05 13:27:09 +08:00