Open
Conversation
- 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.
feat: add optional custom 404 redirect when slug is not found
Replaces intersection observer with requestIdleCallback for simpler deferred globe initialization, reducing complexity and improving initial page load. Extracts sphere tessellation logic into a separate module and prebuilds geometry at build time, loading it as a binary asset at runtime. This eliminates redundant computation during page initialization. Scales texture resolution based on container size to avoid generating unnecessarily large textures on smaller viewports, reducing memory usage and GPU processing time. Adds OffscreenCanvas support for texture generation where available, enabling background rendering without blocking the main thread. Fixes texture seam artifacts by adjusting shader UV wrapping and clamping horizontal wrap mode to edge instead of repeat. Adds build:sphere script to generate precomputed sphere geometry binary.
Sets notFoundRedirect to empty string by default instead of reading from environment variable, effectively disabling custom 404 redirects unless explicitly configured. Updates example configuration to show a placeholder value and removes redundant documentation example to simplify configuration guidance.
Synchronizes filter selection with URL parameters to ensure proper state restoration when filters are cleared or updated from the store. Prevents desync between UI and URL state. Corrects date range restoration logic to prioritize custom time ranges over presets, preventing preset values from overriding explicit time selections. Adds cache headers for static geographic data files to improve performance and reduce server load for immutable resources. Prevents infinite redirect loops by bypassing redirect check when already on the not-found redirect path. Updates cache control for cloaking responses to use no-store directive for better privacy compliance. Expands API documentation to include missing link configuration options for cloaking, query parameter handling, and password protection.
Increments package version for new release
Replaces invalid 'ubuntu-slim' runner with 'ubuntu-latest' to ensure the duplicate issues workflow executes properly. The ubuntu-slim runner type does not exist in GitHub Actions, causing workflow failures.
Enhances the version update notification by displaying both the available new version and the currently installed version. This provides users with complete context about their upgrade path, making it easier to understand the version delta at a glance.
Updates all locale files (de-DE, en-US, fr-FR, vi-VN, zh-CN, zh-TW) to include a {current} placeholder in the update message string, and modifies the sidebar component to pass the current version value to the translation function.
Replaces the duplicate-issues workflow with a more comprehensive issue-assistant that combines multiple functions into one. The new workflow checks both documentation and existing issues, then posts a single consolidated comment when relevant information is found. This reduces noise by avoiding multiple comments and provides a better user experience with documentation references alongside duplicate detection.
feat(i18n): add Portuguese (PT) and Portuguese (BR) translations
Co-authored-by: miantiao-me <2959393+miantiao-me@users.noreply.github.com>
feat: add Italian (it-IT) language support
feat(migrate): add manual backup button to R2
…-issue fix: allow removing a password from a link on edit
Fixes an issue where optional fields (comment, title, description, image, cloaking, redirectWithQuery, password, expiration) could not be removed from links during editing. Previously, only the password field was explicitly deleted when undefined. Now all optional fields are properly removed from the link object when not provided in the edit request, allowing users to clear these fields through the UI. Also adds translations for manual backup feature in Italian and Portuguese locales.
Introduces a new "unsafe" flag for links that displays a warning page before redirecting visitors. Users must explicitly confirm to continue to the destination. Adds optional automatic detection via DNS over HTTPS (DoH) when NUXT_SAFE_BROWSING_DOH is configured. If a destination domain resolves to 0.0.0.0, the link is automatically marked as unsafe during creation or editing. Implements warning page UI with options to go back or confirm continuation. For password-protected links, the unsafe warning appears after successful password entry. Includes API parameter support for manual unsafe marking, localization updates across all supported languages, and visual indicators in the dashboard link list.
Defines proper TypeScript prop interface for the error page to receive NuxtError object, enabling proper type checking and access to error details within the component.
Introduces internationalization for password protection and unsafe warning pages by resolving the user's locale from the Accept-Language header. Refactors HTML generation functions to accept locale options and use translated strings from REDIRECT_TRANSLATIONS. Updates page styling to use a dark theme with improved visual hierarchy and accessibility. Extracts repeated header-setting logic into a reusable sendNoStoreHtml helper function to reduce code duplication across password and unsafe warning flows.
Improves AI-generated URL slugs by incorporating page content alongside the URL itself. Fetches page markdown and includes it in the AI prompt context, enabling more meaningful and descriptive slug generation based on actual page content rather than URL alone. Updates the AI prompt to clarify that SLUG derivation should consider both URL and page content when available, removing the strict limitation of using only URL information.
Removes markdown code block wrappers that may surround AI-generated content before parsing. This prevents deserialization errors when the AI model returns valid JSON wrapped in triple backticks with language identifiers.
Extracts the actual content from patterns like ```json\n{...}\n``` to ensure clean parsing of the response data.
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
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.