From e6c0d1d49c54059a3fd5c18ed3ce620e64c43240 Mon Sep 17 00:00:00 2001 From: Philippe Serhal Date: Wed, 11 Feb 2026 20:59:35 -0500 Subject: [PATCH] feat: add input to filter package versions by semver Add a text input to the versions section that filters displayed versions by any valid npm semver range (e.g. `^3.0.0`, `>=2.0.0 <3.0.0`, `~1.5.0`). It filters tag rows, expanded child versions, and "other versions" groups as-you-type. It shows an indication when the input is not a valid range, and a "no matches" message when nothing matches. It has a tooltip linking to a new docs page explaining npm semver ranges --- app/components/AppFooter.vue | 8 +- app/components/AppHeader.vue | 3 +- app/components/Package/Versions.vue | 155 +++++++++++++-- app/utils/versions.ts | 30 ++- docs/content/2.guide/5.semver-ranges.md | 58 ++++++ i18n/locales/en.json | 8 +- i18n/locales/fr-FR.json | 8 +- i18n/schema.json | 18 ++ lunaria/files/en-GB.json | 8 +- lunaria/files/en-US.json | 8 +- lunaria/files/fr-FR.json | 8 +- shared/utils/constants.ts | 1 + test/nuxt/components/PackageVersions.spec.ts | 187 +++++++++++++++++++ test/unit/app/utils/versions.spec.ts | 45 +++++ 14 files changed, 523 insertions(+), 22 deletions(-) create mode 100644 docs/content/2.guide/5.semver-ranges.md diff --git a/app/components/AppFooter.vue b/app/components/AppFooter.vue index b7e745377..ad0c82daf 100644 --- a/app/components/AppFooter.vue +++ b/app/components/AppFooter.vue @@ -1,4 +1,6 @@