@tanstack/react-router 1.81.4 → 1.81.5
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/dist/cjs/router.cjs +22 -5
- package/dist/cjs/router.cjs.map +1 -1
- package/dist/esm/router.js +22 -5
- package/dist/esm/router.js.map +1 -1
- package/package.json +1 -1
- package/src/router.ts +23 -5
package/package.json
CHANGED
package/src/router.ts
CHANGED
|
@@ -1514,8 +1514,8 @@ export class Router<
|
|
|
1514
1514
|
})
|
|
1515
1515
|
|
|
1516
1516
|
let search = fromSearch
|
|
1517
|
-
if (opts._includeValidateSearch) {
|
|
1518
|
-
let validatedSearch =
|
|
1517
|
+
if (opts._includeValidateSearch && this.options.search?.strict) {
|
|
1518
|
+
let validatedSearch = {}
|
|
1519
1519
|
matchedRoutesResult?.matchedRoutes.forEach((route) => {
|
|
1520
1520
|
try {
|
|
1521
1521
|
if (route.options.validateSearch) {
|
|
@@ -1538,10 +1538,10 @@ export class Router<
|
|
|
1538
1538
|
const allMiddlewares =
|
|
1539
1539
|
matchedRoutesResult?.matchedRoutes.reduce(
|
|
1540
1540
|
(acc, route) => {
|
|
1541
|
-
|
|
1541
|
+
const middlewares: Array<SearchMiddleware<any>> = []
|
|
1542
1542
|
if ('search' in route.options) {
|
|
1543
1543
|
if (route.options.search?.middlewares) {
|
|
1544
|
-
middlewares
|
|
1544
|
+
middlewares.push(...route.options.search.middlewares)
|
|
1545
1545
|
}
|
|
1546
1546
|
}
|
|
1547
1547
|
// TODO remove preSearchFilters and postSearchFilters in v2
|
|
@@ -1575,7 +1575,25 @@ export class Router<
|
|
|
1575
1575
|
}
|
|
1576
1576
|
return result
|
|
1577
1577
|
}
|
|
1578
|
-
middlewares
|
|
1578
|
+
middlewares.push(legacyMiddleware)
|
|
1579
|
+
}
|
|
1580
|
+
if (opts._includeValidateSearch && route.options.validateSearch) {
|
|
1581
|
+
const validate: SearchMiddleware<any> = ({ search, next }) => {
|
|
1582
|
+
try {
|
|
1583
|
+
const result = next(search)
|
|
1584
|
+
const validatedSearch = {
|
|
1585
|
+
...result,
|
|
1586
|
+
...(validateSearch(
|
|
1587
|
+
route.options.validateSearch,
|
|
1588
|
+
result,
|
|
1589
|
+
) ?? {}),
|
|
1590
|
+
}
|
|
1591
|
+
return validatedSearch
|
|
1592
|
+
} catch (e) {
|
|
1593
|
+
// ignore errors here because they are already handled in matchRoutes
|
|
1594
|
+
}
|
|
1595
|
+
}
|
|
1596
|
+
middlewares.push(validate)
|
|
1579
1597
|
}
|
|
1580
1598
|
return acc.concat(middlewares)
|
|
1581
1599
|
},
|