feat(web): фильтры VPS в стиле reui.io + ReUI-компоненты в форме

- Регистр @reui в components.json (URL https://reui.io/r/{style}/{name}.json)
- Установлены @reui/filters, @reui/autocomplete, @reui/number-field,
  @reui/date-selector и shadcn slider через shadcn CLI
- Поправлены TS-импорты в ReUI-исходниках (type-only) и удалены неиспользуемые
  объявления; в packages/ui добавлены react-day-picker и date-fns для calendar
- Новый VpsFiltersToolbar: тулбар с поиском, кнопкой «Фильтр» (ReUI Filters),
  chips с операторами, Popover «Вид» (группировка/компактность/пресеты)
- vps-filters.tsx переписан под массивы значений (мультивыбор) с поддержкой
  операторов is_any_of / contains / gte; applyVpsFilters принимает как state,
  так и Filter[] (stateToActiveFilters)
- В форме VPS vcpu/ramGb/diskGb/monthlyRate/dailyRate — @reui/number-field
  через Controller, paidUntil — @reui/date-selector (одиночная дата)
- AutoCompleteInput: отступы флага size-4 leading-none, CommandList py-1,
  CommandItem gap-2.5, PopoverContent min-w-[220px]
- build + tsc --noEmit без ошибок

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Denozordec
2026-06-26 23:53:16 +07:00
co-authored by Cursor
parent b87d7c6fad
commit 63da57687d
22 changed files with 5122 additions and 454 deletions
+48 -3
View File
@@ -86,7 +86,7 @@ importers:
dependencies:
'@base-ui/react':
specifier: ^1.0.0
version: 1.6.0(@types/[email protected])([email protected]([email protected]))([email protected])
version: 1.6.0(@date-fns/[email protected])(@types/[email protected])([email protected])([email protected]([email protected]))([email protected])
'@cfdm/shared':
specifier: workspace:*
version: link:../../packages/shared
@@ -108,9 +108,15 @@ importers:
'@tanstack/react-router-devtools':
specifier: ^1.130.2
version: 1.167.0(@tanstack/[email protected]([email protected]([email protected]))([email protected]))(@tanstack/[email protected])([email protected])([email protected]([email protected]))([email protected])
class-variance-authority:
specifier: ^0.7.1
version: 0.7.1
cmdk:
specifier: ^1.1.1
version: 1.1.1(@types/[email protected](@types/[email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])
date-fns:
specifier: ^4.4.0
version: 4.4.0
lucide-react:
specifier: ^0.468.0
version: 0.468.0([email protected])
@@ -120,6 +126,9 @@ importers:
react:
specifier: ^19.2.0
version: 19.2.7
react-day-picker:
specifier: ^10.0.1
version: 10.0.1(@types/[email protected])([email protected])
react-dom:
specifier: ^19.2.0
version: 19.2.7([email protected])
@@ -196,7 +205,7 @@ importers:
dependencies:
'@base-ui/react':
specifier: ^1.0.0
version: 1.6.0(@types/[email protected])([email protected]([email protected]))([email protected])
version: 1.6.0(@date-fns/[email protected])(@types/[email protected])([email protected])([email protected]([email protected]))([email protected])
class-variance-authority:
specifier: ^0.7.1
version: 0.7.1
@@ -206,6 +215,9 @@ importers:
cmdk:
specifier: ^1.1.1
version: 1.1.1(@types/[email protected](@types/[email protected]))(@types/[email protected])([email protected]([email protected]))([email protected])
date-fns:
specifier: ^4.4.0
version: 4.4.0
lucide-react:
specifier: ^0.468.0
version: 0.468.0([email protected])
@@ -215,6 +227,9 @@ importers:
react:
specifier: ^19.0.0
version: 19.2.7
react-day-picker:
specifier: ^10.0.1
version: 10.0.1(@types/[email protected])([email protected])
react-dom:
specifier: ^19.0.0
version: 19.2.7([email protected])
@@ -351,6 +366,9 @@ packages:
'@types/react':
optional: true
'@date-fns/[email protected]':
resolution: {integrity: sha512-lwYN/vDPeNRULcepoE/LO2Pgx+7/RV+S9ARfbc9lr2DtGkOD7pAiruHvbR1RX3Qyf6ja47EWJDMsNK5vK08DJg==}
'@drizzle-team/[email protected]':
resolution: {integrity: sha512-z33Il7l5dKjUgGULTqBsQBQwckHh5AbIuxhdsIxDDiZAzBOrZO6q9ogcWC65kU382AfynTfgNumVcNIjuIua6w==}
@@ -1848,6 +1866,9 @@ packages:
resolution: {integrity: sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==}
engines: {node: '>=12'}
[email protected]:
resolution: {integrity: sha512-+1UMbeh68lH1SegH83CGWwpb6OHHbpSgr3+s5Eww5M4CAgswBpoWS0AjTOfEJ33HiYKz1hdj/KTFprzXHmq/6w==}
[email protected]:
resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
peerDependencies:
@@ -2770,6 +2791,16 @@ packages:
resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
hasBin: true
[email protected]:
resolution: {integrity: sha512-eNh6BlwcYInWaJtRv18mXQ06Ys/H6rdTZAnTaSdOYJuTpwP1JMCHNd1FDRadA+gbeinq+psdULN5Xnowy9mV8w==}
engines: {node: '>=18'}
peerDependencies:
'@types/react': '>=16.8.0'
react: '>=16.8.0'
peerDependenciesMeta:
'@types/react':
optional: true
[email protected]:
resolution: {integrity: sha512-t0BRVXvbiE/o20Hfw669rLbMCDWtYZLvmJigy2f0MxsXF+71pxhR3xOkspmsO8h3ZlNzyibAmtCa3l4lYKk6gQ==}
peerDependencies:
@@ -3460,7 +3491,7 @@ snapshots:
'@babel/helper-string-parser': 7.29.7
'@babel/helper-validator-identifier': 7.29.7
'@base-ui/[email protected](@types/[email protected])([email protected]([email protected]))([email protected])':
'@base-ui/[email protected](@date-fns/[email protected])(@types/[email protected])([email protected])([email protected]([email protected]))([email protected])':
dependencies:
'@babel/runtime': 7.29.7
'@base-ui/utils': 0.3.1(@types/[email protected])([email protected]([email protected]))([email protected])
@@ -3470,7 +3501,9 @@ snapshots:
react-dom: 19.2.7([email protected])
use-sync-external-store: 1.6.0([email protected])
optionalDependencies:
'@date-fns/tz': 1.5.0
'@types/react': 19.2.17
date-fns: 4.4.0
'@base-ui/[email protected](@types/[email protected])([email protected]([email protected]))([email protected])':
dependencies:
@@ -3483,6 +3516,8 @@ snapshots:
optionalDependencies:
'@types/react': 19.2.17
'@date-fns/[email protected]': {}
'@drizzle-team/[email protected]': {}
'@esbuild-kit/[email protected]':
@@ -4740,6 +4775,8 @@ snapshots:
[email protected]: {}
[email protected]: {}
[email protected]:
dependencies:
ms: 2.0.0
@@ -5607,6 +5644,14 @@ snapshots:
minimist: 1.2.8
strip-json-comments: 2.0.1
[email protected](@types/[email protected])([email protected]):
dependencies:
'@date-fns/tz': 1.5.0
date-fns: 4.4.0
react: 19.2.7
optionalDependencies:
'@types/react': 19.2.17
[email protected]([email protected]):
dependencies:
react: 19.2.7