Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 93 additions & 0 deletions e2e/solid-start/basic-solid-query/src/routeTree.gen.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,18 @@ import { Route as UsersRouteImport } from './routes/users'
import { Route as SuspenseTransitionRouteImport } from './routes/suspense-transition'
import { Route as PostsRouteImport } from './routes/posts'
import { Route as DeferredRouteImport } from './routes/deferred'
import { Route as LayoutRouteImport } from './routes/_layout'
import { Route as IndexRouteImport } from './routes/index'
import { Route as UsersIndexRouteImport } from './routes/users.index'
import { Route as PostsIndexRouteImport } from './routes/posts.index'
import { Route as UsersUserIdRouteImport } from './routes/users.$userId'
import { Route as PostsPostIdRouteImport } from './routes/posts.$postId'
import { Route as ApiUsersRouteImport } from './routes/api.users'
import { Route as LayoutLayout2RouteImport } from './routes/_layout/_layout-2'
import { Route as PostsPostIdDeepRouteImport } from './routes/posts_.$postId.deep'
import { Route as ApiUsersIdRouteImport } from './routes/api/users.$id'
import { Route as LayoutLayout2LayoutBRouteImport } from './routes/_layout/_layout-2/layout-b'
import { Route as LayoutLayout2LayoutARouteImport } from './routes/_layout/_layout-2/layout-a'

const UsersRoute = UsersRouteImport.update({
id: '/users',
Expand All @@ -42,6 +46,10 @@ const DeferredRoute = DeferredRouteImport.update({
path: '/deferred',
getParentRoute: () => rootRouteImport,
} as any)
const LayoutRoute = LayoutRouteImport.update({
id: '/_layout',
getParentRoute: () => rootRouteImport,
} as any)
const IndexRoute = IndexRouteImport.update({
id: '/',
path: '/',
Expand Down Expand Up @@ -72,6 +80,10 @@ const ApiUsersRoute = ApiUsersRouteImport.update({
path: '/api/users',
getParentRoute: () => rootRouteImport,
} as any)
const LayoutLayout2Route = LayoutLayout2RouteImport.update({
id: '/_layout-2',
getParentRoute: () => LayoutRoute,
} as any)
const PostsPostIdDeepRoute = PostsPostIdDeepRouteImport.update({
id: '/posts_/$postId/deep',
path: '/posts/$postId/deep',
Expand All @@ -82,6 +94,16 @@ const ApiUsersIdRoute = ApiUsersIdRouteImport.update({
path: '/$id',
getParentRoute: () => ApiUsersRoute,
} as any)
const LayoutLayout2LayoutBRoute = LayoutLayout2LayoutBRouteImport.update({
id: '/layout-b',
path: '/layout-b',
getParentRoute: () => LayoutLayout2Route,
} as any)
const LayoutLayout2LayoutARoute = LayoutLayout2LayoutARouteImport.update({
id: '/layout-a',
path: '/layout-a',
getParentRoute: () => LayoutLayout2Route,
} as any)

export interface FileRoutesByFullPath {
'/': typeof IndexRoute
Expand All @@ -94,6 +116,8 @@ export interface FileRoutesByFullPath {
'/users/$userId': typeof UsersUserIdRoute
'/posts/': typeof PostsIndexRoute
'/users/': typeof UsersIndexRoute
'/layout-a': typeof LayoutLayout2LayoutARoute
'/layout-b': typeof LayoutLayout2LayoutBRoute
'/api/users/$id': typeof ApiUsersIdRoute
'/posts/$postId/deep': typeof PostsPostIdDeepRoute
}
Expand All @@ -106,21 +130,27 @@ export interface FileRoutesByTo {
'/users/$userId': typeof UsersUserIdRoute
'/posts': typeof PostsIndexRoute
'/users': typeof UsersIndexRoute
'/layout-a': typeof LayoutLayout2LayoutARoute
'/layout-b': typeof LayoutLayout2LayoutBRoute
'/api/users/$id': typeof ApiUsersIdRoute
'/posts/$postId/deep': typeof PostsPostIdDeepRoute
}
export interface FileRoutesById {
__root__: typeof rootRouteImport
'/': typeof IndexRoute
'/_layout': typeof LayoutRouteWithChildren
'/deferred': typeof DeferredRoute
'/posts': typeof PostsRouteWithChildren
'/suspense-transition': typeof SuspenseTransitionRoute
'/users': typeof UsersRouteWithChildren
'/_layout/_layout-2': typeof LayoutLayout2RouteWithChildren
'/api/users': typeof ApiUsersRouteWithChildren
'/posts/$postId': typeof PostsPostIdRoute
'/users/$userId': typeof UsersUserIdRoute
'/posts/': typeof PostsIndexRoute
'/users/': typeof UsersIndexRoute
'/_layout/_layout-2/layout-a': typeof LayoutLayout2LayoutARoute
'/_layout/_layout-2/layout-b': typeof LayoutLayout2LayoutBRoute
'/api/users/$id': typeof ApiUsersIdRoute
'/posts_/$postId/deep': typeof PostsPostIdDeepRoute
}
Expand All @@ -137,6 +167,8 @@ export interface FileRouteTypes {
| '/users/$userId'
| '/posts/'
| '/users/'
| '/layout-a'
| '/layout-b'
| '/api/users/$id'
| '/posts/$postId/deep'
fileRoutesByTo: FileRoutesByTo
Expand All @@ -149,26 +181,33 @@ export interface FileRouteTypes {
| '/users/$userId'
| '/posts'
| '/users'
| '/layout-a'
| '/layout-b'
| '/api/users/$id'
| '/posts/$postId/deep'
id:
| '__root__'
| '/'
| '/_layout'
| '/deferred'
| '/posts'
| '/suspense-transition'
| '/users'
| '/_layout/_layout-2'
| '/api/users'
| '/posts/$postId'
| '/users/$userId'
| '/posts/'
| '/users/'
| '/_layout/_layout-2/layout-a'
| '/_layout/_layout-2/layout-b'
| '/api/users/$id'
| '/posts_/$postId/deep'
fileRoutesById: FileRoutesById
}
export interface RootRouteChildren {
IndexRoute: typeof IndexRoute
LayoutRoute: typeof LayoutRouteWithChildren
DeferredRoute: typeof DeferredRoute
PostsRoute: typeof PostsRouteWithChildren
SuspenseTransitionRoute: typeof SuspenseTransitionRoute
Expand Down Expand Up @@ -207,6 +246,13 @@ declare module '@tanstack/solid-router' {
preLoaderRoute: typeof DeferredRouteImport
parentRoute: typeof rootRouteImport
}
'/_layout': {
id: '/_layout'
path: ''
fullPath: ''
preLoaderRoute: typeof LayoutRouteImport
parentRoute: typeof rootRouteImport
}
'/': {
id: '/'
path: '/'
Expand Down Expand Up @@ -249,6 +295,13 @@ declare module '@tanstack/solid-router' {
preLoaderRoute: typeof ApiUsersRouteImport
parentRoute: typeof rootRouteImport
}
'/_layout/_layout-2': {
id: '/_layout/_layout-2'
path: ''
fullPath: ''
preLoaderRoute: typeof LayoutLayout2RouteImport
parentRoute: typeof LayoutRoute
}
'/posts_/$postId/deep': {
id: '/posts_/$postId/deep'
path: '/posts/$postId/deep'
Expand All @@ -263,9 +316,48 @@ declare module '@tanstack/solid-router' {
preLoaderRoute: typeof ApiUsersIdRouteImport
parentRoute: typeof ApiUsersRoute
}
'/_layout/_layout-2/layout-b': {
id: '/_layout/_layout-2/layout-b'
path: '/layout-b'
fullPath: '/layout-b'
preLoaderRoute: typeof LayoutLayout2LayoutBRouteImport
parentRoute: typeof LayoutLayout2Route
}
'/_layout/_layout-2/layout-a': {
id: '/_layout/_layout-2/layout-a'
path: '/layout-a'
fullPath: '/layout-a'
preLoaderRoute: typeof LayoutLayout2LayoutARouteImport
parentRoute: typeof LayoutLayout2Route
}
}
}

interface LayoutLayout2RouteChildren {
LayoutLayout2LayoutARoute: typeof LayoutLayout2LayoutARoute
LayoutLayout2LayoutBRoute: typeof LayoutLayout2LayoutBRoute
}

const LayoutLayout2RouteChildren: LayoutLayout2RouteChildren = {
LayoutLayout2LayoutARoute: LayoutLayout2LayoutARoute,
LayoutLayout2LayoutBRoute: LayoutLayout2LayoutBRoute,
}

const LayoutLayout2RouteWithChildren = LayoutLayout2Route._addFileChildren(
LayoutLayout2RouteChildren,
)

interface LayoutRouteChildren {
LayoutLayout2Route: typeof LayoutLayout2RouteWithChildren
}

const LayoutRouteChildren: LayoutRouteChildren = {
LayoutLayout2Route: LayoutLayout2RouteWithChildren,
}

const LayoutRouteWithChildren =
LayoutRoute._addFileChildren(LayoutRouteChildren)

interface PostsRouteChildren {
PostsPostIdRoute: typeof PostsPostIdRoute
PostsIndexRoute: typeof PostsIndexRoute
Expand Down Expand Up @@ -304,6 +396,7 @@ const ApiUsersRouteWithChildren = ApiUsersRoute._addFileChildren(

const rootRouteChildren: RootRouteChildren = {
IndexRoute: IndexRoute,
LayoutRoute: LayoutRouteWithChildren,
DeferredRoute: DeferredRoute,
PostsRoute: PostsRouteWithChildren,
SuspenseTransitionRoute: SuspenseTransitionRoute,
Expand Down
14 changes: 14 additions & 0 deletions e2e/solid-start/basic-solid-query/src/routes/__root.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -108,13 +108,27 @@ function RootDocument(props: { children?: any }) {
>
Users
</Link>{' '}
<Link
to="/layout-a"
activeProps={{
class: 'font-bold',
}}
>
Layout
</Link>{' '}
<Link
to="/deferred"
activeProps={{
class: 'font-bold',
}}
>
Deferred
</Link>{' '}
<Link
// @ts-expect-error
to="/this-route-does-not-exist"
>
This Route Does Not Exist
</Link>
</div>
<hr />
Expand Down
16 changes: 16 additions & 0 deletions e2e/solid-start/basic-solid-query/src/routes/_layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { Outlet, createFileRoute } from '@tanstack/solid-router'

export const Route = createFileRoute('/_layout')({
component: LayoutComponent,
})

function LayoutComponent() {
return (
<div class="p-2">
<div>I'm a layout</div>
<div>
<Outlet />
</div>
</div>
)
}
34 changes: 34 additions & 0 deletions e2e/solid-start/basic-solid-query/src/routes/_layout/_layout-2.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
import { Link, Outlet, createFileRoute } from '@tanstack/solid-router'

export const Route = createFileRoute('/_layout/_layout-2')({
component: LayoutComponent,
})

function LayoutComponent() {
return (
<div>
<div>I'm a nested layout</div>
<div class="flex gap-2">
<Link
to="/layout-a"
activeProps={{
class: 'font-bold',
}}
>
Layout A
</Link>
<Link
to="/layout-b"
activeProps={{
class: 'font-bold',
}}
>
Layout B
</Link>
</div>
<div>
<Outlet />
</div>
</div>
)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import { createFileRoute } from '@tanstack/solid-router'
export const Route = createFileRoute('/_layout/_layout-2/layout-a')({
component: LayoutAComponent,
})

function LayoutAComponent() {
return <div>I'm A!</div>
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import { createFileRoute } from '@tanstack/solid-router'
export const Route = createFileRoute('/_layout/_layout-2/layout-b')({
component: LayoutBComponent,
})

function LayoutBComponent() {
return <div>I'm B!</div>
}
4 changes: 2 additions & 2 deletions e2e/solid-start/basic-solid-query/tests/app.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ test('Navigating to user', async ({ page }) => {
await expect(page.getByRole('heading')).toContainText('Leanne Graham')
})

test.skip('Navigating nested layouts', async ({ page }) => {
test('Navigating nested layouts', async ({ page }) => {
await page.goto('/')

await page.getByRole('link', { name: 'Layout', exact: true }).click()
Expand All @@ -27,7 +27,7 @@ test.skip('Navigating nested layouts', async ({ page }) => {
await expect(page.locator('body')).toContainText("I'm B!")
})

test.skip('Navigating to a not-found route', async ({ page }) => {
test('Navigating to a not-found route', async ({ page }) => {
await page.goto('/')

await page.getByRole('link', { name: 'This Route Does Not Exist' }).click()
Expand Down
Loading