7
7
from typing import TYPE_CHECKING , Any , Literal , cast
8
8
9
9
from reactpy import component , use_memo , use_state
10
- from reactpy .backend .hooks import ConnectionContext , use_connection
11
10
from reactpy .backend .types import Connection , Location
11
+ from reactpy .core .hooks import ConnectionContext , use_connection
12
12
from reactpy .types import ComponentType , VdomDict
13
13
14
14
from reactpy_router .components import FirstLoad , History
20
20
21
21
from reactpy .core .component import Component
22
22
23
- from reactpy_router .types import CompiledRoute , Resolver , Router , RouteType
23
+ from reactpy_router .types import CompiledRoute , Resolver , Route , Router
24
24
25
25
__all__ = ["browser_router" , "create_router" ]
26
26
_logger = getLogger (__name__ )
27
27
28
28
29
- def create_router (resolver : Resolver [RouteType ]) -> Router [RouteType ]:
29
+ def create_router (resolver : Resolver [Route ]) -> Router [Route ]:
30
30
"""A decorator that turns a resolver into a router"""
31
31
32
- def wrapper (* routes : RouteType ) -> Component :
32
+ def wrapper (* routes : Route ) -> Component :
33
33
return router (* routes , resolver = resolver )
34
34
35
35
return wrapper
@@ -38,13 +38,13 @@ def wrapper(*routes: RouteType) -> Component:
38
38
_starlette_router = create_router (StarletteResolver )
39
39
40
40
41
- def browser_router (* routes : RouteType ) -> Component :
41
+ def browser_router (* routes : Route ) -> Component :
42
42
"""This is the recommended router for all ReactPy-Router web projects.
43
43
It uses the JavaScript [History API](https://developer.mozilla.org/en-US/docs/Web/API/History_API)
44
44
to manage the history stack.
45
45
46
46
Args:
47
- *routes (RouteType ): A list of routes to be rendered by the router.
47
+ *routes (Route ): A list of routes to be rendered by the router.
48
48
49
49
Returns:
50
50
A router component that renders the given routes.
@@ -54,8 +54,8 @@ def browser_router(*routes: RouteType) -> Component:
54
54
55
55
@component
56
56
def router (
57
- * routes : RouteType ,
58
- resolver : Resolver [RouteType ],
57
+ * routes : Route ,
58
+ resolver : Resolver [Route ],
59
59
) -> VdomDict | None :
60
60
"""A component that renders matching route(s) using the given resolver.
61
61
@@ -110,7 +110,7 @@ def on_first_load(event: dict[str, Any]) -> None:
110
110
return None
111
111
112
112
113
- def _iter_routes (routes : Sequence [RouteType ]) -> Iterator [RouteType ]:
113
+ def _iter_routes (routes : Sequence [Route ]) -> Iterator [Route ]:
114
114
for parent in routes :
115
115
for child in _iter_routes (parent .routes ):
116
116
yield replace (child , path = parent .path + child .path ) # type: ignore[misc]
0 commit comments