Files
Denis Pisarev d0ed5cc11c chore(deps): bump Next.js, React, and Tailwind CSS to their current majors (#140)
* chore(deps)(deps): bump the nextjs group across 1 directory with 2 updates

Bumps the nextjs group with 2 updates in the / directory: next and
eslint-config-next.

Updates next from 15.2.4 to 16.2.9
Updates eslint-config-next from 15.1.7 to 16.2.9

* fix(ci): replace removed next lint, fix invalid eslint config option

- Switch lint script from 'next lint' (removed in Next.js 15.3+) to 'eslint .'
- Remove invalid 'eslint' property from NextConfig (removed in 15.2+)
- Add ignores for generated dirs in eslint flat config
- Downgrade no-explicit-any to warning for sane CI enforcement
- Convert require() to ESM import in tailwind.config.ts
- Prefix unused catch variables with underscore

* fix(lint): use native flat config from eslint-config-next 16

FlatCompat crashes with circular structure error on eslint-config-next 16
which exports native flat config arrays. Import directly instead.

Downgrade React Compiler rules (purity, set-state-in-effect, immutability)
to warnings — they flag existing patterns across the codebase.

* fix(deps): bump @sentry/nextjs for next 16 peer compatibility

@sentry/nextjs 9.11.0 only accepts next ^13-15 as a peer, so npm ci/install
fails after the next 16 bump. Bump to 10.62.0 (first line with a next
^16.0.0-0 peer range that predates the local registry's release-age cutoff).

Also keeps tsconfig.json's jsx setting at "react-jsx": npm run build
reproducibly rewrites it from "preserve" to "react-jsx" on every build in
this environment, so leaving "preserve" committed just produces working-tree
drift on the next build. Note: this repo's own upstream main, already on the
same next/sentry versions, still has "preserve" committed, so this rewrite
may be environment-specific rather than a hard Next 16 requirement — worth a
second look before merging.

* chore(deps)(deps): bump the react group across 1 directory with 4 updates

Bumps react and react-dom from 19.0.0 to 19.2.7, react-day-picker from
8.10.1 to 10.0.1, and react-resizable-panels from 2.1.7 to 4.11.2.

* fix: migrate to react-day-picker v10 and react-resizable-panels v4

react-day-picker v10:
- Replace initialFocus prop with autoFocus
- Migrate classNames from string keys to UI/SelectionState/DayFlag enums
- Replace IconLeft/IconRight components with single Chevron component

react-resizable-panels v4:
- PanelGroup -> Group
- PanelResizeHandle -> Separator

* chore(deps): bump date-fns to pair with react-day-picker v10

date-fns v4 conflicts with react-day-picker@8.10.1's peer range
(date-fns@^2.28.0||^3.0.0), so it can't land as a standalone bump. This
branch already bumps react-day-picker to v10, whose peer range accepts
date-fns v4, so pairing them here keeps both bumps independently
installable via a plain npm ci.

* fix: migrate to Tailwind CSS v4

- Bump tailwindcss 3.4 -> 4.3.1, tailwind-merge -> 3.6.0, add
  @tailwindcss/postcss; switch PostCSS plugin to @tailwindcss/postcss
- Replace @tailwind directives with @import "tailwindcss"; add
  @custom-variant dark for class-based dark mode and reference the JS
  config via @config "../tailwind.config.ts"
- Remove darkMode from tailwind.config.ts (now declared in CSS)
- Replace tailwindcss-animate (v3 JS plugin) with tw-animate-css (v4
  CSS import) and drop the plugin from tailwind.config.ts

* fix: update utilities removed in Tailwind v4

- Replace the CSS-variable bracket shorthand (w-[--var]) with the v4
  parentheses syntax (w-(--var)) in the sidebar components; the bracket
  form emits literal invalid CSS in v4
- Replace bg-opacity-20 with bg-black/20 in the drag/upload overlays;
  the bg-opacity-* utility was removed in v4, leaving overlays with no
  background

* fix: center unsorted layout and fix Add Manually button variant

- Add mx-auto to the unsorted layout to center its max-w-6xl content
- Change the Add Manually button from outline to the default variant
  for visual consistency with the Analyze New Invoice button
2026-07-06 18:11:35 +02:00
..
2025-03-16 21:29:20 +01:00
2025-04-03 14:36:16 +02:00
2025-05-07 14:53:13 +02:00
2025-04-03 13:07:54 +02:00