forked from miantiao-me/Sink
-
Notifications
You must be signed in to change notification settings - Fork 0
Merge latest changes #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
timweine
wants to merge
106
commits into
timweine:master
Choose a base branch
from
miantiao-me:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- Upgrade Nuxt from 3.17.4 to 4.0.3 - Remove future.compatibilityVersion configuration
build(nuxt): upgrade Nuxt version
… Search component
Added instructions for naming datasets and updating wrangler.jsonc.
Streamlines project documentation by replacing verbose AGENT.md with a more focused AGENTS.md guide that: - Simplifies project structure explanation - Clarifies development workflow and commands - Updates coding standards and conventions - Provides clearer testing and PR guidelines - Reorganizes security and configuration guidance Removes redundant symlinks to create a single source of truth for project guidelines.
Nuxt v4 and Tailwind V4
Updates package version for next release iteration.
Resolves layout inconsistencies by converting main content areas to proper flexbox containers with column direction. This ensures child components expand correctly to fill available space. Removes extraneous whitespace in login alert message for cleaner text rendering. Suppresses hydration warning on hero illustration image to prevent console errors during client-side hydration when server and client rendered attributes differ.
Adds explicit width and height attributes to logo images to prevent layout shifts during page load and improves Core Web Vitals scores. Sets fetchpriority="high" to prioritize loading of above-the-fold brand logos, reducing perceived load time for users.
Updates the avatar service endpoint from unavatar.io to unavatar.webp.se across all components to ensure continued service availability and potentially improve performance with WebP format support. Affects avatar displays in referer metrics, link icons, and testimonials sections.
Revise and improve the Traditional Chinese translation
Enhances link management with device-specific redirects and custom OpenGraph metadata for improved social media sharing. Adds collapsible sections in the link editor for device redirects (Google Play/App Store URLs), OpenGraph settings (title, description, image upload), and advanced options (comment, expiration). Implements bot detection to serve custom OpenGraph HTML for social media crawlers when metadata is configured, while applying device-based redirects for actual users based on their platform. Updates deployment documentation to include optional R2 bucket binding for image upload support. Refactors validation logic with a generic validator factory and extends link schema to support new optional fields for device URLs and OpenGraph metadata. Adds i18n translations across all supported locales for new form fields and image upload functionality.
Enhances README and homepage with additional feature descriptions including device routing, OpenGraph previews, real-time analytics, QR codes, import/export, multi-language support, and dark mode. Updates API documentation to reference OpenAPI endpoints and provide comprehensive examples of link creation with all available fields. Adds corresponding i18n translations across all supported languages (en, zh-CN, zh-TW, de, fr, vi) for new feature descriptions. Includes visual improvements with emoji icons for better feature discoverability.
Changes the QR code rendering type from the default canvas/image format to SVG format for better scalability and quality across different display sizes and resolutions.
Migrates DatePicker, Metric details view, and link editor to use the new ResponsiveModal component, which provides adaptive UX with centered dialogs on desktop and bottom drawers on mobile. Adds ResponsiveModal documentation to AGENTS.md with usage patterns, props reference, and implementation guidelines. Documents when to use ResponsiveModal versus AlertDialog or dedicated components. Removes standalone links Editor.vue component as functionality is now modularized. Adds "more_options" translation key across all locales. Improves mobile usability for modal-heavy interfaces by providing native bottom sheet experience on smaller screens while maintaining familiar dialog patterns on desktop.
Improves UX by replacing the single collapsible advanced options section with an accordion that organizes settings into three logical groups: expiration, OpenGraph settings, and device redirects. Automatically expands accordion items when they contain existing values, making it easier for users to see and edit previously configured settings without manual expansion. Strengthens type safety by introducing LinkFormData type and using Component type instead of any, ensuring better compile-time checks and IDE support. Relocates comment field from advanced section to main form for better visibility and access to this commonly used field.
Reorganizes package structure by moving runtime dependencies to devDependencies, reflecting that this is a build-time bundled application where all dependencies are compiled into the final output. Updates minimum Node.js version requirement from 20.11 to 22 to align with modern runtime requirements. Adds test script for Vitest integration and updates Wrangler configuration to use standard .output directory instead of dist.
Removes file copy operations from test setup function that were copying .env to .dev.vars and cleaning up afterward Simplifies test configuration by eliminating unnecessary file system operations during test initialization
Refactors time range handling by replacing switch statements with configuration objects, reducing code duplication and improving maintainability across DatePicker, TimePicker, and realtime store. Simplifies component logic by removing unnecessary watchers, intermediate variables, and try-catch blocks where error handling wasn't beneficial. Consolidates download functionality in Import component by extracting common logic into a reusable helper function. Improves type safety by adding proper TypeScript interfaces for slot items and removing unsafe any types. Optimizes utility functions by inlining simple Intl.DateTimeFormat operations and using more efficient object spreading patterns. Cleans up formatting inconsistencies in documentation and removes redundant code patterns throughout the codebase.
Moves ImageUploader component into editor subdirectory and renames QRCode component to follow consistent naming convention. Improves component organization by grouping related editor components together and establishes clearer component hierarchy through standardized naming patterns.
Prevents users from uploading images before entering a slug to avoid orphaned files. Adds validation that checks for slug presence before allowing upload interactions, displays appropriate error messages, and visually disables the uploader when no slug exists. Improves image preview layout by switching from fixed height to proper aspect ratio (1200:630) for better responsive design. Fixes form reactivity issue by using store subscription instead of computed getter for slug value. Adds minor UI spacing improvements to accordion content areas and removes redundant og:url meta tag from template generation.
Prevents image uploads when no valid slug is provided by introducing a computed property that checks for a trimmed slug value. Ensures users cannot attempt to upload images without a proper destination context, improving data integrity and user experience.
Adds observability configuration to enable both logging and tracing capabilities in the Cloudflare Worker. This improves monitoring and debugging capabilities for the application by providing visibility into runtime behavior and performance metrics.
Consolidates duplicate GitHub API fetching logic into the existing useGithubStats composable. Removes redundant code from the sidebar component that was fetching star counts independently. Improves cache key access pattern with optional chaining to safely handle missing payload or static data, preventing potential runtime errors. Simplifies component logic by delegating data fetching and formatting to a reusable composable, making the codebase more maintainable.
Adds standard description meta tag alongside OG description for better SEO coverage. Includes og:type and og:url properties to improve social media preview compatibility and sharing behavior. Delays meta refresh redirect from 0 to 1 second and moves it after meta tags to ensure crawlers and social media bots have sufficient time to read OG metadata before redirect occurs.
Refactors ImportLinkSchema to reuse LinkSchema instead of duplicating field definitions, improving maintainability and reducing code duplication. Removes the expiration refinement for imports since imported links may have past expiration dates that should be preserved. Also reduces title max length from 2048 to 256 characters in LinkSchema for consistency.
Relocates ImportResult, ImportResultItem, and ExportData interfaces from API route files to their respective schema files (import.ts and link.ts) for better code organization and reusability. Enhances test coverage with additional test cases for edge cases, error conditions, and validation scenarios across link, location, and verify API endpoints. Adds utility functions postJson and putJson to reduce test code duplication and improves type safety by adding explicit return types and response interfaces. Removes unused test setup file and cleans up tsconfig by removing redundant types declaration.
Consolidates AGENTS.md by removing verbose explanations and replacing with concise formatting. Updates Node.js requirement from 20.11+ to 22+. Reorganizes command documentation and code style sections for improved readability. Simplifies device detection in redirect middleware by replacing UAParser library with native user agent string matching for iOS/Android detection, reducing dependencies and improving performance. Removes unnecessary path check in auth middleware to simplify authorization logic. Adds comprehensive Sink API skill documentation (SKILL.md) covering authentication, endpoints, link management operations, analytics, and cURL examples for AI assistant integration.
Introduces a tabbed interface allowing users to toggle between trend and heatmap visualizations for analytics data. Adds a metric selector for heatmap view to choose between visits and visitors. Implements timezone validation on the server side to prevent invalid timezone errors in date formatting queries. Refactors the Views component to remove redundant title and legend elements for better integration. Adds utility function for generating localized weekday names and defines HeatmapDataPoint type for the new visualization format. Updates translations across all supported locales (en, de, fr, vi, zh-CN, zh-TW) to include new UI labels for trend and weekly trend views.
Increments the package version in preparation for a new release
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Note
Removes Tailwind config, adds two packages to onlyBuiltDependencies, and performs minor code/comment and JSON formatting updates.
tailwind.config.js.pnpm-workspace.yamlonlyBuiltDependenciesto include@tailwindcss/oxideandmaplibre-gl.server/utils/access-log.tsusing@ts-expect-error.public/colos.jsonto pretty JSON.Written by Cursor Bugbot for commit 342da35. This will update automatically on new commits. Configure here.