- Extracts language switcher into separate component
- Updates locale display to use country flag emojis
- Improves header responsiveness and spacing
- Removes embedded i18n logic for better separation of concerns
- Adjusts menu items alignment and margins for better visual balance
Reduces the preview link time-to-live from 24 hours to 5 minutes for improved security. Updates related user-facing message in the dashboard editor to reflect this change.
Implemented multi-language support for the application:
- Added @nuxtjs/i18n plugin configuration
- Created locale files for English (en-US) and Chinese (zh-CN)
- Updated components to use translation keys
- Added language switcher in header
- Configured VSCode i18n-ally settings
- Prepared translation infrastructure for future language expansions
Adds viewport meta tag with mobile-specific settings to improve responsive behavior
- Disables user scaling for better mobile experience
- Adjusts filter component padding and text styles
- Removes redundant font-normal class
Replaces desktop-only popover components with responsive alternatives:
- Adds drawer component for mobile view using vaul-vue
- Extracts shared templates for reusability
- Adjusts layout and height based on viewport size
- Maintains desktop popover behavior on larger screens
Improves mobile user experience while preserving desktop functionality
Enhances dropdown performance by implementing virtual scrolling with VList from virtua/vue library. This optimization improves rendering efficiency for large link lists by only rendering visible items.
Adds URL search params synchronization for dashboard filters and date range
- Stores selected date range in URL for restoration on page reload
- Removes old Filter component in favor of new implementation
- Preserves filter state across page navigation
This change improves user experience by maintaining dashboard state through browser navigation and page reloads.
Updates query filter to support multiple values by splitting on commas.
Removes debug logging statement for cleaner code.
The change allows for more flexible query filtering by accepting
comma-separated values instead of single values only.
Refactors time-based filtering by combining startAt/endAt into a single time object
Adds support for additional filter types in stats API queries
Implements deep watching for both time and filter changes
Improves code organization and maintainability while enabling more flexible data filtering