state-in-url 6.1.2 → 6.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -108,6 +108,7 @@ This library is a good alternative for NUQS.
108
108
  - [installation](#installation)
109
109
  - [1. Install package](#1-install-package)
110
110
  - [2. Edit tsconfig.json](#2-edit-tsconfigjson)
111
+ - [Using with AI coding agents](#using-with-ai-coding-agents)
111
112
  - [useUrlState](#useurlstate)
112
113
  - [useUrlState hook for Next.js](#useurlstate-hook-for-nextjs)
113
114
  - [Usage examples](#usage-examples)
@@ -159,6 +160,16 @@ pnpm add state-in-url
159
160
  In `tsconfig.json` in `compilerOptions` set `"moduleResolution": "Bundler"`, or`"moduleResolution": "Node16"`, or `"moduleResolution": "NodeNext"`.
160
161
  Possibly need to set `"module": "ES2022"`, or `"module": "ESNext"`
161
162
 
163
+ ## Using with AI coding agents
164
+
165
+ `state-in-url` ships skill files for [@tanstack/intent](https://tanstack.com/intent/latest/docs/overview), so AI agents (Claude Code, Cursor, Copilot, Codex, etc.) load the right patterns and avoid common mistakes when using the library. After installing `state-in-url`, run once in your project:
166
+
167
+ ```sh
168
+ npx @tanstack/intent@latest install
169
+ ```
170
+
171
+ This wires your installed agent to discover the skills from `node_modules/state-in-url/skills/`. List available skills with `npx @tanstack/intent@latest list`.
172
+
162
173
  ## useUrlState
163
174
 
164
175
  Main hook that takes initial state as parameter and returns state object, callback to update url, and callback to update only state.
@@ -0,0 +1,579 @@
1
+ {
2
+ "name": "state-in-url",
3
+ "version": "6.2.0",
4
+ "description": "Store state in URL as in object, types and structure are preserved, with TS validation. Same API as React.useState, wthout any hasssle or boilerplate. Next.js@14-15, react-router@6-7, and remix@2.",
5
+ "homepage": "https://state-in-url.dev",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/asmyshlyaev177/state-in-url.git"
9
+ },
10
+ "author": {
11
+ "name": "asmyshlyaev177",
12
+ "email": "asmyshlyaev177@gmail.com",
13
+ "url": "https://www.linkedin.com/in/asmyshlyaev177/"
14
+ },
15
+ "publishConfig": {
16
+ "registry": "https://registry.npmjs.org/",
17
+ "tag": "latest",
18
+ "provenance": true
19
+ },
20
+ "license": "MIT",
21
+ "funding": {
22
+ "type": "patreon",
23
+ "url": "https://patreon.com/asmyshlyaev177"
24
+ },
25
+ "bugs": {
26
+ "url": "https://github.com/asmyshlyaev177/state-in-url/issues"
27
+ },
28
+ "files": [
29
+ "dist",
30
+ "skills",
31
+ "!skills/_artifacts"
32
+ ],
33
+ "main": "./dist/index.js",
34
+ "module": "dist/index.mjs",
35
+ "exports": {
36
+ ".": {
37
+ "require": "./dist/index.js",
38
+ "types": "./dist/index.d.ts",
39
+ "default": "./dist/index.mjs"
40
+ },
41
+ "./next": {
42
+ "require": "./dist/next/index.js",
43
+ "types": "./dist/next/index.d.ts",
44
+ "default": "./dist/next/index.mjs"
45
+ },
46
+ "./react-router6": {
47
+ "require": "./dist/react-router6/index.js",
48
+ "types": "./dist/react-router6/index.d.ts",
49
+ "default": "./dist/react-router6/index.mjs"
50
+ },
51
+ "./react-router": {
52
+ "require": "./dist/react-router/index.js",
53
+ "types": "./dist/react-router/index.d.ts",
54
+ "default": "./dist/react-router/index.mjs"
55
+ },
56
+ "./remix": {
57
+ "require": "./dist/remix/index.js",
58
+ "types": "./dist/remix/index.d.ts",
59
+ "default": "./dist/remix/index.mjs"
60
+ },
61
+ "./encodeState": {
62
+ "require": "./dist/encodeState/index.js",
63
+ "types": "./dist/encodeState/index.d.ts",
64
+ "default": "./dist/encodeState/index.mjs"
65
+ },
66
+ "./encoder": {
67
+ "require": "./dist/encoder/index.js",
68
+ "types": "./dist/encoder/index.d.ts",
69
+ "default": "./dist/encoder/index.mjs"
70
+ },
71
+ "./useSharedState": {
72
+ "require": "./dist/useSharedState/index.js",
73
+ "types": "./dist/useSharedState/index.d.ts",
74
+ "default": "./dist/useSharedState/index.mjs"
75
+ },
76
+ "./useUrlEncode": {
77
+ "require": "./dist/useUrlEncode/index.js",
78
+ "types": "./dist/useUrlEncode/index.d.ts",
79
+ "default": "./dist/useUrlEncode/index.mjs"
80
+ },
81
+ "./useUrlStateBase": {
82
+ "require": "./dist/useUrlStateBase/index.js",
83
+ "types": "./dist/useUrlStateBase/index.d.ts",
84
+ "default": "./dist/useUrlStateBase/index.mjs"
85
+ },
86
+ "./utils": {
87
+ "require": "./dist/utils.js",
88
+ "types": "./dist/utils.d.ts",
89
+ "default": "./dist/utils.mjs"
90
+ }
91
+ },
92
+ "types": "./dist/index.d.ts",
93
+ "scripts": {
94
+ "test:unit": "wireit",
95
+ "test:int": "wireit",
96
+ "test:int:ci": "wireit",
97
+ "test:exports": "pnpm run build && npx babel-node --extensions .js,.mjs,.ts,.mts --config-file ./babel.config.json -- ./packages/urlstate/exportsTest.ts",
98
+ "install:all": "pnpm install",
99
+ "install:ci": "pnpm install --frozen-lockfile",
100
+ "test": "wireit",
101
+ "tsc": "wireit",
102
+ "dev": "wireit",
103
+ "dev:lib": "wireit",
104
+ "dev:nextjs14": "wireit",
105
+ "dev:nextjs15": "wireit",
106
+ "dev:nextjs16": "wireit",
107
+ "dev:remix2": "wireit",
108
+ "bump": "npx standard-version --no-verify",
109
+ "build": "wireit",
110
+ "build:demo": "wireit",
111
+ "start:demo": "wireit",
112
+ "build:packages": "wireit",
113
+ "start:demo15": "wireit",
114
+ "start:demo15:ci": "wireit",
115
+ "start:react": "wireit",
116
+ "start": "wireit",
117
+ "start:ci": "wireit",
118
+ "kill-next": "wireit",
119
+ "kill-vite": "wireit",
120
+ "kill": "wireit",
121
+ "rmdist": "rm -rf dist",
122
+ "cleanup": "rm -rf dist .wireit node_modules test-results playwright-report coverage-reports nyc_coverage packages/example-nextjs14/node_modules packages/example-nextjs14/.next packages/example-nextjs15/node_modules packages/example-nextjs15/.next packages/example-nextjs16/node_modules packages/example-nextjs16/.next packages/example-react/node_modules packages/example-react-router6/node_modules packages/example-react-router7/node_modules packages/example-remix2/node_modules",
123
+ "reinstall": "pnpm run cleanup && pnpm install",
124
+ "setup": "playwright install --with-deps",
125
+ "prepack": "pnpm run build && cp package.json dist/package.json",
126
+ "pin-gh-deps": "pin-github-action -i .github/workflows/tests.yml",
127
+ "prepare": "pnpm exec husky"
128
+ },
129
+ "wireit": {
130
+ "dev": {
131
+ "dependencies": [
132
+ "dev:lib",
133
+ "dev:react",
134
+ "dev:remix2",
135
+ "dev:router6",
136
+ "dev:router7",
137
+ "dev:nextjs16",
138
+ "start:demo14"
139
+ ],
140
+ "service": {
141
+ "readyWhen": {
142
+ "lineMatches": "http://localhost:3000"
143
+ }
144
+ },
145
+ "command": "pnpm run dev:nextjs15"
146
+ },
147
+ "test": {
148
+ "dependencies": [
149
+ "tsc",
150
+ "test:unit",
151
+ "build:packages"
152
+ ],
153
+ "command": "pnpm run test:exports && pnpm run test:int"
154
+ },
155
+ "kill-next": {
156
+ "command": "ps aux | grep .next | grep -v grep | awk '{print $2}' | xargs kill -9 2>&1; exit 0"
157
+ },
158
+ "kill-vite": {
159
+ "command": "ps aux | grep '.bin/vite' | grep -v grep | awk '{print $2}' | xargs kill -9 2>&1; exit 0"
160
+ },
161
+ "kill-wireit": {
162
+ "command": "ps axu | grep wireit | awk '{print $2}' | xargs kill -9"
163
+ },
164
+ "kill": {
165
+ "command": "killed",
166
+ "dependencies": [
167
+ "kill-next",
168
+ "kill-vite",
169
+ "kill-wireit"
170
+ ]
171
+ },
172
+ "test:int:ci": {
173
+ "command": "npx cross-env HOME=/root PLAYWRIGHT_BROWSERS_PATH=0 playwright test"
174
+ },
175
+ "test:int": {
176
+ "command": "playwright test --project=chromium --retries=2"
177
+ },
178
+ "tsc": {
179
+ "command": "npx tsc --noEmit"
180
+ },
181
+ "test:unit": {
182
+ "dependencies": [
183
+ "tsc"
184
+ ],
185
+ "command": "npx vitest"
186
+ },
187
+ "dev:lib": {
188
+ "command": "cross-env IS_DEVELOPMENT=true rollup -c rollup.config.mjs -w",
189
+ "service": {
190
+ "readyWhen": {
191
+ "lineMatches": "created "
192
+ }
193
+ },
194
+ "dependencies": [
195
+ "rmdist"
196
+ ]
197
+ },
198
+ "dev:router6": {
199
+ "command": "cd packages/example-react-router6 && pnpm run dev",
200
+ "service": true
201
+ },
202
+ "dev:router7": {
203
+ "command": "cd packages/example-react-router7 && pnpm run dev",
204
+ "service": true
205
+ },
206
+ "dev:remix2": {
207
+ "command": "cd packages/example-remix2 && PORT=3003 pnpm run dev",
208
+ "service": true
209
+ },
210
+ "dev:nextjs14": {
211
+ "command": "cd packages/example-nextjs14 && pnpm run dev --turbo",
212
+ "service": true
213
+ },
214
+ "dev:nextjs15": {
215
+ "command": "cd packages/example-nextjs15 && pnpm run dev --turbo",
216
+ "service": true
217
+ },
218
+ "dev:nextjs16": {
219
+ "command": "cd packages/example-nextjs16 && pnpm run dev --turbo",
220
+ "service": true
221
+ },
222
+ "build:next14": {
223
+ "command": "cd packages/example-nextjs14 && pnpm run build",
224
+ "dependencies": [
225
+ "build"
226
+ ]
227
+ },
228
+ "build:next15": {
229
+ "command": "cd packages/example-nextjs15 && pnpm run build",
230
+ "dependencies": [
231
+ "build"
232
+ ]
233
+ },
234
+ "build:next16": {
235
+ "command": "cd packages/example-nextjs16 && pnpm run build",
236
+ "dependencies": [
237
+ "build"
238
+ ]
239
+ },
240
+ "build:router6": {
241
+ "command": "cd packages/example-react-router6 && pnpm run build",
242
+ "dependencies": [
243
+ "build"
244
+ ]
245
+ },
246
+ "build:router7": {
247
+ "command": "cd packages/example-react-router7 && pnpm run build",
248
+ "dependencies": [
249
+ "build"
250
+ ]
251
+ },
252
+ "build:remix2": {
253
+ "command": "cd packages/example-remix2 && pnpm run build",
254
+ "dependencies": [
255
+ "build"
256
+ ]
257
+ },
258
+ "build:demo": {
259
+ "dependencies": [
260
+ "build"
261
+ ],
262
+ "command": "cd packages/example-nextjs15 && pnpm run build"
263
+ },
264
+ "build:demo:tests": {
265
+ "dependencies": [
266
+ "build"
267
+ ],
268
+ "command": "cd packages/example-nextjs15 && npx cross-env TEST=true pnpm run build"
269
+ },
270
+ "start:demo": {
271
+ "dependencies": [
272
+ "build:demo"
273
+ ],
274
+ "command": "cd packages/example-nextjs15 && pnpm run start",
275
+ "service": true
276
+ },
277
+ "start:demo:ci": {
278
+ "command": "cd packages/example-nextjs15 && pnpm run start",
279
+ "service": true
280
+ },
281
+ "start:react": {
282
+ "command": "npx vite preview --port 5180 packages/example-react",
283
+ "dependencies": [
284
+ "build:react"
285
+ ],
286
+ "service": true
287
+ },
288
+ "start:react:ci": {
289
+ "command": "npx vite preview --port 5180 packages/example-react",
290
+ "service": true
291
+ },
292
+ "start:router6": {
293
+ "command": "npx vite preview --port 5181 packages/example-react-router6",
294
+ "dependencies": [
295
+ "build:router6"
296
+ ],
297
+ "service": true
298
+ },
299
+ "start:router6:ci": {
300
+ "command": "npx vite preview --port 5181 packages/example-react-router6",
301
+ "service": true
302
+ },
303
+ "start:router7": {
304
+ "command": "npx vite preview --port 5183 packages/example-react-router7",
305
+ "dependencies": [
306
+ "build:router7"
307
+ ],
308
+ "service": true
309
+ },
310
+ "start:router7:ci": {
311
+ "command": "npx vite preview --port 5183 packages/example-react-router7",
312
+ "service": true
313
+ },
314
+ "start:remix2": {
315
+ "command": "cd packages/example-remix2 && pnpm run start",
316
+ "dependencies": [
317
+ "build:remix2"
318
+ ],
319
+ "service": true
320
+ },
321
+ "start:remix2:ci": {
322
+ "command": "cd packages/example-remix2 && pnpm run start",
323
+ "service": true
324
+ },
325
+ "start:demo14": {
326
+ "dependencies": [
327
+ "build:next14"
328
+ ],
329
+ "command": "cd packages/example-nextjs14 && pnpm run start",
330
+ "service": true
331
+ },
332
+ "start:demo15": {
333
+ "dependencies": [
334
+ "build:next15"
335
+ ],
336
+ "command": "cd packages/example-nextjs15 && pnpm run start",
337
+ "service": true
338
+ },
339
+ "start:demo14:ci": {
340
+ "command": "cd packages/example-nextjs14 && pnpm run start",
341
+ "service": true
342
+ },
343
+ "start:demo15:ci": {
344
+ "command": "cd packages/example-nextjs15 && pnpm run start",
345
+ "service": true
346
+ },
347
+ "start:demo16": {
348
+ "dependencies": [
349
+ "build:next16"
350
+ ],
351
+ "command": "cd packages/example-nextjs16 && pnpm run start",
352
+ "service": true
353
+ },
354
+ "start:demo16:ci": {
355
+ "command": "cd packages/example-nextjs16 && pnpm run start",
356
+ "service": true
357
+ },
358
+ "start": {
359
+ "command": "pnpm run start:demo15",
360
+ "dependencies": [
361
+ "start:demo14",
362
+ "start:demo16",
363
+ "start:react",
364
+ "start:router6",
365
+ "start:router7",
366
+ "start:remix2"
367
+ ],
368
+ "service": true
369
+ },
370
+ "start:ci": {
371
+ "command": "pnpm run start:demo15:ci",
372
+ "dependencies": [
373
+ "start:demo14:ci",
374
+ "start:demo16:ci",
375
+ "start:react:ci",
376
+ "start:router6:ci",
377
+ "start:router7:ci",
378
+ "start:remix2:ci"
379
+ ],
380
+ "service": true
381
+ },
382
+ "dev:react": {
383
+ "command": "cd packages/example-react && pnpm run dev",
384
+ "service": true
385
+ },
386
+ "build:packages": {
387
+ "dependencies": [
388
+ "build",
389
+ "build:react",
390
+ "build:demo:tests",
391
+ "build:next14",
392
+ "build:next16",
393
+ "build:router6",
394
+ "build:router7",
395
+ "build:remix2"
396
+ ]
397
+ },
398
+ "build:react": {
399
+ "command": "cd packages/example-react && pnpm run build"
400
+ },
401
+ "build": {
402
+ "command": "rollup -c rollup.config.mjs",
403
+ "dependencies": [
404
+ "rmdist"
405
+ ]
406
+ }
407
+ },
408
+ "browserslist": [
409
+ "last 5 Chrome versions",
410
+ "last 5 ChromeAndroid versions",
411
+ "last 5 Firefox versions",
412
+ "last 5 FirefoxAndroid versions",
413
+ "Firefox ESR",
414
+ "last 2 Safari major versions",
415
+ "last 2 iOS major versions"
416
+ ],
417
+ "lint-staged": {
418
+ "*.{js,jsx,ts,tsx}": [
419
+ "eslint --fix"
420
+ ],
421
+ "*.{html,css,less,ejs,json}": [
422
+ "prettier --write"
423
+ ]
424
+ },
425
+ "config": {
426
+ "commitizen": {
427
+ "path": "cz-conventional-changelog"
428
+ }
429
+ },
430
+ "commitlint": {
431
+ "extends": [
432
+ "@commitlint/config-conventional"
433
+ ],
434
+ "rules": {
435
+ "body-max-line-length": [
436
+ 0,
437
+ "always",
438
+ "Infinity"
439
+ ]
440
+ }
441
+ },
442
+ "devDependencies": {
443
+ "@babel/core": "^7.28.4",
444
+ "@tanstack/intent": "latest",
445
+ "@babel/node": "^7.28.0",
446
+ "@babel/preset-env": "^7.28.3",
447
+ "@babel/preset-typescript": "^7.27.1",
448
+ "@commitlint/cli": "^19.8.1",
449
+ "@commitlint/config-conventional": "^19.8.1",
450
+ "@playwright/test": "^1.55.1",
451
+ "@rollup/plugin-node-resolve": "^15.3.1",
452
+ "@rollup/plugin-typescript": "^12.1.4",
453
+ "@semantic-release/changelog": "^6.0.3",
454
+ "@semantic-release/commit-analyzer": "^13.0.1",
455
+ "@semantic-release/git": "^10.0.1",
456
+ "@semantic-release/npm": "^13.1.3",
457
+ "@semantic-release/release-notes-generator": "^14.1.0",
458
+ "@testing-library/dom": "^10.4.1",
459
+ "@testing-library/jest-dom": "^6.9.0",
460
+ "@testing-library/react": "^16.3.0",
461
+ "@testing-library/react-hooks": "^8.0.1",
462
+ "@types/node": "^20.19.18",
463
+ "@types/react": "^18.3.25",
464
+ "@types/react-dom": "^18.3.7",
465
+ "@vitest/coverage-istanbul": "^2.1.9",
466
+ "auto-changelog": "^2.4.0",
467
+ "babel-plugin-module-resolver": "^5.0.2",
468
+ "baseline-browser-mapping": "^2.8.32",
469
+ "chokidar": "^4.0.3",
470
+ "commitizen": "^4.3.0",
471
+ "commitlint": "^19.8.1",
472
+ "conventional-recommended-bump": "^10.0.0",
473
+ "cross-env": "^7.0.3",
474
+ "cz": "^1.8.2",
475
+ "cz-conventional-changelog": "^3.3.0",
476
+ "eslint": "^8.57.0",
477
+ "eslint-config-prettier": "^9.1.0",
478
+ "eslint-plugin-maintainable": "^0.4.4",
479
+ "eslint-plugin-prettier": "^5.2.1",
480
+ "eslint-plugin-react-hooks": "^4.6.2",
481
+ "eslint-plugin-simple-import-sort": "^12.1.1",
482
+ "glob": "^13.0.0",
483
+ "happy-dom": "^20.0.2",
484
+ "husky": "^9.1.7",
485
+ "lint-staged": "^15.5.2",
486
+ "next": "^15.5.18",
487
+ "nyc": "^17.1.0",
488
+ "only-allow": "^1.2.1",
489
+ "pin-github-action": "^1.9.1",
490
+ "playwright": "^1.55.1",
491
+ "prettier": "^3.6.2",
492
+ "prettier-plugin-tailwindcss": "^0.6.14",
493
+ "react": "^19.2.6",
494
+ "react-dom": "^19.2.6",
495
+ "react-router": "^7.15.0",
496
+ "rollup": "^4.52.3",
497
+ "rollup-plugin-esbuild": "^6.2.1",
498
+ "rollup-plugin-filesize": "^10.0.0",
499
+ "rollup-plugin-sourcemaps": "^0.6.3",
500
+ "semantic-release": "^25.0.2",
501
+ "standard-version": "^9.5.0",
502
+ "ts-node": "^10.9.2",
503
+ "typescript": "^5.9.2",
504
+ "unplugin-auto-import": "^0.18.6",
505
+ "vitest": "^2.1.9",
506
+ "wait-on": "^8.0.5",
507
+ "wireit": "^0.14.12"
508
+ },
509
+ "keywords": [
510
+ "state in url",
511
+ "useSearchParams",
512
+ "useUrlState",
513
+ "url state",
514
+ "search params",
515
+ "nuqs alternative",
516
+ "reactive",
517
+ "json",
518
+ "state sync",
519
+ "state management",
520
+ "encode",
521
+ "decode",
522
+ "Next.js",
523
+ "react-router",
524
+ "remix",
525
+ "remixjs",
526
+ "url",
527
+ "url synchronization",
528
+ "url sync",
529
+ "state synchronization",
530
+ "synchronized state",
531
+ "state-in-url",
532
+ "store",
533
+ "react hook",
534
+ "state hook",
535
+ "url-state",
536
+ "client components communication",
537
+ "query string",
538
+ "query-string",
539
+ "querystring",
540
+ "search-params",
541
+ "searchparams",
542
+ "params",
543
+ "parse",
544
+ "stringify",
545
+ "query params",
546
+ "typescript",
547
+ "hooks",
548
+ "react.js",
549
+ "reactjs",
550
+ "react",
551
+ "NextJS",
552
+ "query params parser",
553
+ "query params parsing",
554
+ "shared state",
555
+ "state sharing",
556
+ "front-end",
557
+ "state-management",
558
+ "state-sync",
559
+ "search",
560
+ "encode url",
561
+ "decode url",
562
+ "fast"
563
+ ],
564
+ "packageManager": "pnpm@10.26.0",
565
+ "pnpm": {
566
+ "overrides": {
567
+ "@remix-run/react>react": "18.3.1",
568
+ "@remix-run/react>react-dom": "18.3.1"
569
+ },
570
+ "onlyBuiltDependencies": [
571
+ "@parcel/watcher",
572
+ "core-js",
573
+ "esbuild",
574
+ "less",
575
+ "sharp",
576
+ "unrs-resolver"
577
+ ]
578
+ }
579
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "state-in-url",
3
- "version": "6.1.2",
3
+ "version": "6.2.0",
4
4
  "description": "Store state in URL as in object, types and structure are preserved, with TS validation. Same API as React.useState, wthout any hasssle or boilerplate. Next.js@14-15, react-router@6-7, and remix@2.",
5
5
  "homepage": "https://state-in-url.dev",
6
6
  "repository": {
@@ -26,7 +26,9 @@
26
26
  "url": "https://github.com/asmyshlyaev177/state-in-url/issues"
27
27
  },
28
28
  "files": [
29
- "dist"
29
+ "dist",
30
+ "skills",
31
+ "!skills/_artifacts"
30
32
  ],
31
33
  "main": "./dist/index.js",
32
34
  "module": "dist/index.mjs",
@@ -120,7 +122,7 @@
120
122
  "cleanup": "rm -rf dist .wireit node_modules test-results playwright-report coverage-reports nyc_coverage packages/example-nextjs14/node_modules packages/example-nextjs14/.next packages/example-nextjs15/node_modules packages/example-nextjs15/.next packages/example-nextjs16/node_modules packages/example-nextjs16/.next packages/example-react/node_modules packages/example-react-router6/node_modules packages/example-react-router7/node_modules packages/example-remix2/node_modules",
121
123
  "reinstall": "pnpm run cleanup && pnpm install",
122
124
  "setup": "playwright install --with-deps",
123
- "prepack": "pnpm run build && cp package.json dist/package.json && pnpm run build:demo",
125
+ "prepack": "pnpm run build && cp package.json dist/package.json",
124
126
  "pin-gh-deps": "pin-github-action -i .github/workflows/tests.yml",
125
127
  "prepare": "pnpm exec husky"
126
128
  },
@@ -439,6 +441,7 @@
439
441
  },
440
442
  "devDependencies": {
441
443
  "@babel/core": "^7.28.4",
444
+ "@tanstack/intent": "latest",
442
445
  "@babel/node": "^7.28.0",
443
446
  "@babel/preset-env": "^7.28.3",
444
447
  "@babel/preset-typescript": "^7.27.1",
@@ -480,16 +483,16 @@
480
483
  "happy-dom": "^20.0.2",
481
484
  "husky": "^9.1.7",
482
485
  "lint-staged": "^15.5.2",
483
- "next": "^15.5.9",
486
+ "next": "^15.5.18",
484
487
  "nyc": "^17.1.0",
485
488
  "only-allow": "^1.2.1",
486
489
  "pin-github-action": "^1.9.1",
487
490
  "playwright": "^1.55.1",
488
491
  "prettier": "^3.6.2",
489
492
  "prettier-plugin-tailwindcss": "^0.6.14",
490
- "react": "^19.2.1",
491
- "react-dom": "^19.2.1",
492
- "react-router": "^7.10.1",
493
+ "react": "^19.2.6",
494
+ "react-dom": "^19.2.6",
495
+ "react-router": "^7.15.0",
493
496
  "rollup": "^4.52.3",
494
497
  "rollup-plugin-esbuild": "^6.2.1",
495
498
  "rollup-plugin-filesize": "^10.0.0",