@unitflow/router 0.2.3 → 0.3.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
@@ -1,13 +1,9 @@
1
1
  # @unitflow/router
2
2
 
3
- Effect-native, model-first typed router for Unitflow.
4
-
5
- Routes declare paths and codecs never components, loaders, or data.
6
- `Router.make` births one `AppRouter`: `model` (the engine — navigation,
7
- current location), `routeModel` (a keyed per-route model: occupancy and
8
- decoded params/search), and `layer` (the two, already composed). Page data
9
- lives in ordinary Unitflow models gated on route ports; React meets the
10
- router in exactly one place.
3
+ Effect-native, model-first typed router for Unitflow. Routes declare **paths
4
+ and codecs** — never components, loaders, or data; nesting is declared, never
5
+ inferred from a shared path prefix; React meets the router in exactly one
6
+ place.
11
7
 
12
8
  ## Install
13
9
 
@@ -15,25 +11,25 @@ router in exactly one place.
15
11
  pnpm add @unitflow/router @unitflow/react @unitflow/core effect@4.0.0-beta.88
16
12
  ```
17
13
 
18
- ## Routes and models
14
+ ## `Router.make`: building the router
15
+
16
+ `Router.make(id, table)` takes a router id and a table of routes (built from
17
+ `Route.make`/`Route.group`, below) and returns one `AppRouter`:
19
18
 
20
19
  ```ts
21
20
  import * as Schema from "effect/Schema";
22
21
  import { Route, Router } from "@unitflow/router";
23
22
 
24
- const userParams = Schema.Struct({ id: Schema.NumberFromString });
25
- const userSearch = Schema.Struct({ page: Schema.NumberFromString });
26
-
27
- export const HomeRoute = Route.make("home", { path: "/" });
28
- export const UserRoute = Route.make("user", {
23
+ const HomeRoute = Route.make("home", { path: "/" });
24
+ const UserRoute = Route.make("user", {
29
25
  path: "/users/:id",
30
- params: userParams,
31
- search: userSearch,
26
+ params: Schema.Struct({ id: Schema.NumberFromString }),
32
27
  });
33
28
 
34
29
  export const AppRouter = Router.make("app/router", Route.group(HomeRoute, UserRoute));
35
30
 
36
- // Registering the router types Link/redirect targets everywhere.
31
+ // Registers the router's route table as the default for every typed target
32
+ // in the app — Link props, navigate, redirects — a typo won't compile.
37
33
  declare module "@unitflow/router" {
38
34
  interface Register {
39
35
  readonly router: typeof AppRouter.model;
@@ -41,68 +37,116 @@ declare module "@unitflow/router" {
41
37
  }
42
38
  ```
43
39
 
44
- - `AppRouter.model` the engine: `inputs.navigate` (an event, like any
45
- model input), `outputs.state`/`location`, `buildHref`/`buildLocation`.
46
- - `AppRouter.routeModel` — keyed by route id:
47
- `Model.get(AppRouter.routeModel, "user")` returns that route's unit with
48
- `outputs.opened`/`params`/`search`/`provided` as `Option` ports, narrowed
49
- to THAT route's schemas.
50
- - `AppRouter.layer` `routeModel.layer` and `model.layer`, already merged;
51
- still requires a history layer (`Router.browserHistoryLayer` or
52
- `memoryHistoryLayer` in tests), and, for page models reading route ports,
53
- their own layers.
40
+ This ambient registration is optional `RouterView.bindComponents` (below)
41
+ is the structural alternative, no `declare module` needed.
42
+
43
+ - `AppRouter.model` the navigation engine: `inputs.navigate` (an event),
44
+ `outputs.state`/`location`, `buildHref`/`buildLocation`.
45
+ - `AppRouter.routeModel` — keyed by route id: `Model.get(AppRouter.routeModel, "user")`
46
+ returns that route's unit `outputs.opened`/`params`/`search`/`provided`,
47
+ narrowed to **that route's** schemas.
48
+ - `AppRouter.layer` the two models' layers, already merged. Still needs a
49
+ history layer (`Router.browserHistoryLayer`, or `memoryHistoryLayer` in
50
+ tests) and any page models' own layers.
54
51
 
55
- ## Nesting: `Route.addChild`
52
+ ## `Route.addChild`: one route owns another's content
56
53
 
57
- Nesting is declared, never inferred from a shared path prefix — a route only
58
- becomes an ancestor of another via `Route.addChild`. The child's `path` is
59
- relative to the parent's own path, joined on attach:
54
+ A route becomes another's ancestor only if you say so — a route at `/` is
55
+ NOT automatically the parent of every other route just because their paths
56
+ all start with `/`. `Route.addChild(child)` attaches `child` under `self`;
57
+ `child`'s `path` is relative to `self`'s own path, joined on attach:
60
58
 
61
59
  ```ts
62
60
  const EditRoute = Route.make("edit", { path: "/edit" });
63
61
 
64
- export const ProjectRoute = Route.make("project", {
62
+ const ProjectRoute = Route.make("project", {
65
63
  path: "/projects/:projectId",
66
64
  params: Schema.Struct({ projectId: Schema.NumberFromString }),
67
65
  }).pipe(Route.addChild(EditRoute));
68
- // EditRoute's declared table path is "/projects/:projectId/edit".
66
+ // EditRoute's table path ends up "/projects/:projectId/edit".
69
67
  ```
70
68
 
71
- A route with no `addChild` calls has no childrenincluding a route at
72
- `/`: two routes that happen to share a literal path prefix never nest unless
73
- this was called explicitly. `Route.layout(id)` covers the other case —
74
- wrapping *independent* siblings (not one route's own child content) under a
75
- shared, pathless parent that contributes no URL segment of its own:
69
+ Use this when one route genuinely owns a child's content — a project page
70
+ and its edit sub-view, a list and its detail row.
71
+
72
+ ## `Route.group`: collecting routes into a table
73
+
74
+ `Route.group(...routes)` collects routes (and, transitively, anything
75
+ attached via `addChild`) into the table `Router.make` consumes:
76
76
 
77
77
  ```ts
78
- const dashboard = Route.group(SettingsRoute, ReportsRoute).pipe(Route.layout("dashboard"));
78
+ const allRoutes = Route.group(HomeRoute, UserRoute, ProjectRoute);
79
79
  ```
80
80
 
81
- ## Page data: a model gated on route ports
81
+ Two routes with a shared literal path prefix that were never `addChild`-linked
82
+ simply don't nest — the group is flat unless the hierarchy says otherwise.
83
+
84
+ ## `Route.middleware`: guards as services
85
+
86
+ `middleware` attaches a guard TAG to every route currently in a group. A
87
+ guard runs **before** a navigation commits — a blocked URL never reaches
88
+ history or state — and its success value (its **Provides**) lands typed in
89
+ the guarded route's `provided` port:
82
90
 
83
91
  ```ts
84
- class UserPageModel extends Model.Service<UserPageModel>()("app/UserPage")({
85
- make: () =>
86
- Effect.gen(function* () {
87
- const unit = yield* Model.get(AppRouter.routeModel, "user");
88
- const user = yield* Query.make({
89
- stores: { params: unit.outputs.params },
90
- handler: ({ params }) =>
91
- Option.isNone(params)
92
- ? Effect.fail("closed" as const)
93
- : fetchUser(params.value.id), // id: number decoded by the schema
94
- });
95
- return { inputs: {}, outputs: {}, ui: { user: user.state } };
96
- }),
97
- }) {}
92
+ class AuthGuard extends Router.Middleware<AuthGuard>()("app/AuthGuard")<{
93
+ readonly user: string;
94
+ }>() {}
95
+
96
+ const AuthGuardLive = AuthGuard.layer((context) =>
97
+ Effect.gen(function* () {
98
+ const session = yield* SessionService; // the GUARD's dependency, not the router's
99
+ const user = yield* session.currentUser;
100
+ if (Option.isNone(user)) {
101
+ return yield* Effect.fail(new Router.RedirectError({ options: { to: "/login" } }));
102
+ }
103
+ void context; // params/search/location of the matched route
104
+ return { user: user.value };
105
+ }),
106
+ );
107
+
108
+ const adminRoutes = Route.group(ProjectRoute).middleware(AuthGuard);
98
109
  ```
99
110
 
100
- Entering `/users/1` loads; changing the id reloads; leaving fails the query
101
- into `"closed"`. No loader, no cache options the model owns its data.
111
+ Attaching to a route with declared children (`addChild`/`layout`) guards the
112
+ whole branch the router walks the explicit ancestor chain, so the guard
113
+ runs once per navigation into that route or any descendant, never for an
114
+ unrelated route that merely shares a path prefix.
115
+
116
+ ## `Route.layout`: a shared shell for independent siblings
102
117
 
103
- ## React: one meeting point
118
+ `Route.layout(id)` covers the OTHER nesting shape: wrapping routes that
119
+ aren't each other's content — just independent pages sharing one rendering
120
+ or guard scope — under a shared, pathless parent that contributes no URL
121
+ segment of its own:
122
+
123
+ ```ts
124
+ const SettingsRoute = Route.make("settings", { path: "/settings" });
125
+ const ReportsRoute = Route.make("reports", { path: "/reports" });
126
+
127
+ const dashboard = Route.group(SettingsRoute, ReportsRoute).pipe(Route.layout("dashboard"));
128
+ ```
129
+
130
+ `addChild` is for one route that owns a child's content; `layout` is for a
131
+ shell around otherwise-unrelated resources.
132
+
133
+ ## A few smaller combinators
134
+
135
+ - `Route.prefix(path)` — re-roots every route in a group under `path`:
136
+ `Route.group(SettingsRoute, ReportsRoute).pipe(Route.prefix("/admin"))`.
137
+ - `.merge(...)` — combines groups: `publicRoutes.merge(adminRoutes)`.
138
+ - `.add(...)` — appends routes to a group directly.
139
+ - `Route.search`/`Route.schemaSearch` — build a `search` codec from a plain
140
+ Schema.Struct or a hand-written encode/decode pair, for query strings a
141
+ Struct alone can't express.
142
+
143
+ ## `RouterView.make`: connecting to React
144
+
145
+ React meets the router in exactly one place: `RouterView.make` takes
146
+ `AppRouter.model` and a map from route ids to views.
104
147
 
105
148
  ```tsx
149
+ import { View } from "@unitflow/react";
106
150
  import { Link, RouterView } from "@unitflow/router/react";
107
151
 
108
152
  const UserPage = View.make(UserPageModel, ({ user }) => /* AsyncResult → JSX */);
@@ -112,8 +156,7 @@ export const AppView = RouterView.make(AppRouter.model, {
112
156
  home: ({ children }) => (
113
157
  <main>
114
158
  <nav>
115
- {/* to/params/search typed against the registered router */}
116
- <Link to="/users/:id" params={{ id: 1 }} search={{ page: 1 }}>Ada</Link>
159
+ <Link to="/users/:id" params={{ id: 1 }}>Ada</Link>
117
160
  </nav>
118
161
  {children}
119
162
  </main>
@@ -122,22 +165,10 @@ export const AppView = RouterView.make(AppRouter.model, {
122
165
  },
123
166
  notFound: () => <div>404</div>,
124
167
  });
125
-
126
- // main.tsx — the view carries its root model
127
- const layer = AppView.model.layer.pipe(
128
- Layer.provideMerge(UserPageModel.layer),
129
- Layer.provideMerge(AppRouter.layer),
130
- Layer.provideMerge(Router.browserHistoryLayer), // or memoryHistoryLayer in tests
131
- );
132
-
133
- <Unitflow runtime={UnitflowRuntime.make(layer)} rootModel={AppView.model}>
134
- {(pages) => <AppView unit={pages} />}
135
- </Unitflow>;
136
168
  ```
137
169
 
138
- A route with declared children (via `Route.addChild`/`Route.layout`) nests
139
- its view the same way in the map — `{ view, routes: { ... } }` mirroring
140
- the route table instead of being inferred separately:
170
+ A route with declared children nests its view the same way its declaration
171
+ does — `{ view, routes: { ... } }`, keyed like the route table:
141
172
 
142
173
  ```tsx
143
174
  routes: {
@@ -146,58 +177,47 @@ routes: {
146
177
  ```
147
178
 
148
179
  `ProjectPage` receives `ProjectEditView`'s rendered output as `children`
149
- only while `/projects/:id/edit` is actually matched — `null` otherwise, so
150
- `children ?? <ProjectOverview />` picks between the two. Give the edit view
151
- its own model that leases `ProjectPageModel` (`Model.get`, a shared
152
- singleton) for data already loaded by the parent, rather than routing logic
153
- living inside either model — the two stay sibling page models, and the
154
- nesting is purely a rendering/URL concern.
155
-
156
- ## Middleware: guards as services
180
+ only while `/projects/:id/edit` is actually matched.
157
181
 
158
- ```ts
159
- class AuthGuard extends Router.Middleware<AuthGuard>()("app/AuthGuard")<{
160
- readonly user: User;
161
- }>() {}
182
+ Mount by rooting the tree with `AppView.model` — it owns the navigation
183
+ model and every page model stitched into the map:
162
184
 
163
- const AuthGuardLive = AuthGuard.layer((ctx) =>
164
- Effect.gen(function* () {
165
- const session = yield* SessionService; // the GUARD's dependency, not the router's
166
- if (Option.isNone(session.user)) {
167
- return yield* Effect.fail(new Router.RedirectError({ options: { to: "/login" } }));
168
- }
169
- return { user: session.user.value }; // Provides
170
- }),
185
+ ```tsx
186
+ const layer = AppView.model.layer.pipe(
187
+ Layer.provideMerge(UserPageModel.layer),
188
+ Layer.provideMerge(AppRouter.layer),
189
+ Layer.provideMerge(Router.browserHistoryLayer), // or memoryHistoryLayer in tests
171
190
  );
172
191
 
173
- const adminRoutes = Route.group(Dashboard, Users).middleware(AuthGuard);
192
+ <Unitflow runtime={UnitflowRuntime.make(layer)} rootModel={AppView.model}>
193
+ {(pages) => <AppView unit={pages} />}
194
+ </Unitflow>;
174
195
  ```
175
196
 
176
- Guards run BEFORE a navigation commits: a blocked URL never flashes. The
177
- returned value lands typed in the route unit's `provided` port —
178
- `Option.some` whenever the route is open, because the guard passing is what
179
- let it open. Attaching a guard to a route with declared children guards the
180
- whole branch: `resolveMatches` walks the explicit ancestor chain, so the
181
- guard runs once per navigation into that route OR any of its descendants —
182
- never for an unrelated route that merely shares a path prefix.
197
+ `Link`/`Navigate`/`MatchRoute` pick up their bound router from React context
198
+ at runtime, which TypeScript can't see through `to`/`params`/`search`
199
+ typing needs some static source. The `declare module { Register }` above is
200
+ one option (ambient, app-wide, zero imports). `RouterView.bindComponents`
201
+ is the structural alternative same components, re-typed to a router you
202
+ pass in explicitly, no ambient state, works with more than one router:
183
203
 
184
- ## Complex search params
204
+ ```tsx
205
+ export const { Link, Navigate, MatchRoute } = RouterView.bindComponents(AppRouter.model);
206
+ ```
185
207
 
186
- Schemas own the URL: literal unions, optional keys, and whole objects
187
- (JSON-encoded into one param) decode into typed ports and encode back
188
- through `Link`/`navigate`/`buildHref`.
208
+ Import these from your routes module instead of `@unitflow/router/react`'s.
189
209
 
190
- ```ts
191
- const search = Schema.Struct({
192
- sort: Schema.Literals(["asc", "desc"]),
193
- filter: Schema.fromJsonString(Schema.Struct({ role: Schema.String })),
194
- q: Schema.optionalKey(Schema.String),
195
- });
196
- ```
210
+ ## Full docs
197
211
 
198
- ## History is a capability
212
+ - [Routes and Schemas](https://github.com/timurrakhimzhan/unitflow/blob/main/src/content/docs/router/routes.md)
213
+ path/search params, groups, nesting with `Route.addChild`/`Route.layout`.
214
+ - [The AppRouter Models](https://github.com/timurrakhimzhan/unitflow/blob/main/src/content/docs/router/models.md) —
215
+ `model` vs `routeModel`, navigating, page data as a `Query` gated on route ports.
216
+ - [React](https://github.com/timurrakhimzhan/unitflow/blob/main/src/content/docs/router/react.md) —
217
+ the views map, nesting it to mirror the route table, mounting.
218
+ - [Middleware](https://github.com/timurrakhimzhan/unitflow/blob/main/src/content/docs/router/middleware.md) —
219
+ guards as Context services, redirects, typed `Provides`.
199
220
 
200
- `Router.make` declares routes only; the environment decides how locations
201
- are read and written: `Router.browserHistoryLayer`,
202
- `Router.hashHistoryLayer`, or `Router.memoryHistoryLayer({ initialEntries })`
203
- in tests. Forgetting one is a compile error, not a silent default.
221
+ Or the runnable examples:
222
+ [`router-basic`](https://github.com/timurrakhimzhan/unitflow/tree/main/examples/ts/router-basic),
223
+ [`router-guard`](https://github.com/timurrakhimzhan/unitflow/tree/main/examples/ts/router-guard).
package/dist/react.d.ts CHANGED
@@ -93,12 +93,6 @@ export type RouterViewComponent<M extends Router.AnyRouter, Units> = React.FC<{
93
93
  * model stitched into the views map. */
94
94
  readonly model: Router.PagesModel<Router.RouterIdOf<M>, Router.RouterGroupOf<M>, Router.PageMap<Router.RouterGroupOf<M>>>;
95
95
  };
96
- export declare const RouterView: {
97
- make: <M extends Router.AnyRouter, Units = void>(router: M, views: RouterViews<M, Units>) => RouterViewComponent<M, Units>;
98
- };
99
- export declare const View: {
100
- make: <M extends Router.AnyRouter, Units = void>(router: M, views: RouterViews<M, Units>) => RouterViewComponent<M, Units>;
101
- };
102
96
  type AnchorProps = Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, "children" | "href">;
103
97
  type LinkState = {
104
98
  readonly isActive: boolean;
@@ -131,6 +125,27 @@ export type MatchRouteProps<M extends Router.AnyRouter = Router.RegisteredRouter
131
125
  }) => React.ReactNode);
132
126
  };
133
127
  export declare function MatchRoute<M extends Router.AnyRouter = Router.RegisteredRouter, const To extends Router.RoutePath<M> = Router.RoutePath<M>>(props: MatchRouteProps<M, To>): React.ReactNode;
128
+ /** `Link`/`Navigate`/`MatchRoute` pick up their bound router from React
129
+ * context at runtime — a mechanism TypeScript cannot see through, so their
130
+ * `to`/`params`/`search` typing needs SOME static source. `Router.Register`
131
+ * (a `declare module` ambient default) is one; this is the structural
132
+ * alternative — pass `AppRouter.model` once and get back the SAME runtime
133
+ * components, just narrowed to that router's type, no ambient state. */
134
+ export interface BoundComponents<M extends Router.AnyRouter> {
135
+ readonly Link: <const To extends Router.RoutePath<M> = Router.RoutePath<M>>(props: LinkProps<M, To> & {
136
+ readonly ref?: React.Ref<HTMLAnchorElement>;
137
+ }) => React.ReactElement;
138
+ readonly Navigate: <const To extends Router.RoutePath<M> = Router.RoutePath<M>>(props: NavigateProps<M, To>) => null;
139
+ readonly MatchRoute: <const To extends Router.RoutePath<M> = Router.RoutePath<M>>(props: MatchRouteProps<M, To>) => React.ReactNode;
140
+ }
141
+ export declare const RouterView: {
142
+ make: <M extends Router.AnyRouter, Units = void>(router: M, views: RouterViews<M, Units>) => RouterViewComponent<M, Units>;
143
+ bindComponents: <M extends Router.AnyRouter>(router: M) => BoundComponents<M>;
144
+ };
145
+ export declare const View: {
146
+ make: <M extends Router.AnyRouter, Units = void>(router: M, views: RouterViews<M, Units>) => RouterViewComponent<M, Units>;
147
+ bindComponents: <M extends Router.AnyRouter>(router: M) => BoundComponents<M>;
148
+ };
134
149
  export type CreatedLinkComponent = <M extends Router.AnyRouter = Router.RegisteredRouter, const To extends Router.RoutePath<M> = Router.RoutePath<M>>(props: LinkProps<M, To> & {
135
150
  readonly ref?: React.Ref<HTMLAnchorElement>;
136
151
  }) => React.ReactElement;
@@ -1 +1 @@
1
- {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.d.ts","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
package/dist/react.js CHANGED
@@ -60,8 +60,6 @@ const makeRouterView = (router, views) => {
60
60
  Component.displayName = "RouterView";
61
61
  return Object.assign(Component, { model: pagesModel });
62
62
  };
63
- export const RouterView = { make: makeRouterView };
64
- export const View = RouterView;
65
63
  /** True for a `{ view, routes }` tree node — distinguished from a bare
66
64
  * `RouteComponent`/`ModelViewEntry` entry by NOT being callable: both of
67
65
  * those are always functions (a `ModelViewEntry` is `View.make`'s callable
@@ -142,6 +140,15 @@ export function MatchRoute(props) {
142
140
  return children({ isActive });
143
141
  return isActive ? children : null;
144
142
  }
143
+ /** Re-types the existing `Link`/`Navigate`/`MatchRoute` — not new
144
+ * components, no behavior change, no runtime cost: `router` is only read
145
+ * for its TYPE, never touched. */
146
+ const bindComponents = (router) => {
147
+ void router;
148
+ return { Link, Navigate, MatchRoute };
149
+ };
150
+ export const RouterView = { make: makeRouterView, bindComponents };
151
+ export const View = RouterView;
145
152
  export const createLink = (Component) => React.forwardRef(function CreatedLink(props, ref) {
146
153
  const { router: routerProp, ...rest } = props;
147
154
  const router = useBoundRouter(routerProp, "createLink");
package/dist/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAc,IAAI,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AA2GtC,MAAM,cAAc,GAAG,CACrB,SAA2C,EAC3C,MAAsB,EACtB,KAAiD,EAChC,EAAE;IACnB,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAA6C,CAAC;IAC/E,OAAO,KAAK,KAAK,SAAS;QACxB,CAAC,CAAC,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAI;QACnD,CAAC,CAAC,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAI,CAAC;AACtE,CAAC,CAAC;AAEF,MAAM,UAAU,OAAO,CAAqE,EAC1F,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,GACkB;IACvB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAmD,CAAC;IACzE,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,cAAc,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAChF,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW;QAAE,OAAO,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACvF,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,OAAO,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,4BAAG,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,GAAI,CAAC;IAC/E,CAAC;IACD,OAAO,CACL,KAAC,aAAa,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,GAAI,CAC3G,CAAC;AACJ,CAAC;AAsBD;;0EAE0E;AAC1E,MAAM,iBAAiB,GAAG,CACxB,KAAwC,EACxC,IAAsC,EAChC,EAAE;IACR,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACrD,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,IAAI,OAAO,KAAK,KAAK,UAAU,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACpD,IAAI,CAAC,OAAO,CAAC,GAAI,KAAwB,CAAC,KAAK,CAAC;YAChD,SAAS;QACX,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK,EAAE,CAAC;YACnE,MAAM,IAAI,GAAG,KAAwF,CAAC;YACtG,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC5D,IAAI,CAAC,OAAO,CAAC,GAAI,IAAI,CAAC,IAAuB,CAAC,KAAK,CAAC;YACtD,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,MAAS,EACT,KAA4B,EACG,EAAE;IACjC,wEAAwE;IACxE,+BAA+B;IAC/B,MAAM,UAAU,GAAqC,EAAE,CAAC;IACxD,iBAAiB,CAAC,KAAK,CAAC,MAA2C,EAAE,UAAU,CAAC,CAAC;IACjF,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,UAAmB,CAAC,CAAC;IAEjE,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI;IACzB,mEAAmE;IACnE,uEAAuE;IACvE,UAAU,CAAC,MAAe,EAC1B,CACE,KAAK,EACL,KAA4F,EAC5F,EAAE,CAAC,CACH,KAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAuB,YACzD,KAAC,OAAO,IACN,MAAM,EAAE,KAAuB,EAC/B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,CAAC,cAAc,EAC3B,KAAK,EAAE,KAAK,CAAC,KAAK,GAClB,GAC0B,CAC/B,CACF,CAAC;IACF,MAAM,SAAS,GAAG,CAAC,KAGlB,EAAmB,EAAE;QACpB,mEAAmE;QACnE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAuC,CAAC;QACnE,OAAO,CACL,KAAC,KAAK,IACJ,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAU,EAChC,cAAc,EAAE,KAAK,CAAC,KAAc,EACpC,KAAK,EAAE,OAAO,GACd,CACH,CAAC;IACJ,CAAC,CAAC;IACF,SAAS,CAAC,WAAW,GAAG,YAAY,CAAC;IACrC,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAU,CAAC;AAClE,CAAC,CAAC;AAEF;;;;2DAI2D;AAC3D,MAAM,eAAe,GAAG,CACtB,KAAc,EAC4E,EAAE,CAC5F,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,MAAM,IAAI,KAAK,CAAC;AAEjE,MAAM,aAAa,GAAG,CAA2C,EAC/D,MAAM,EACN,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,GAQN,EAAmB,EAAE;IACpB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAA6C,CAAC;IAC/E,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrC,0EAA0E;IAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC3E,uEAAuE;IACvE,sEAAsE;IACtE,wEAAwE;IACxE,MAAM,SAAS,GAAG,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3E,yEAAyE;IACzE,yEAAyE;IACzE,iDAAiD;IACjD,MAAM,KAAK,GACT,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CACjC,KAAC,aAAa,IACZ,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,GAAG,CAAC,GAChB,CACH,CAAC,CAAC,CAAC,IAAI,CAAC;IACX,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,OAAO,IAAK,IAAe,EAAE,CAAC;QAChC,8DAA8D;QAC9D,MAAM,QAAQ,GAAG,IAGf,CAAC;QACH,OAAO,CACL,KAAC,QAAQ,IAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,YAAG,KAAK,GAAY,CAC1D,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,IAAqC,CAAC;IACxD,OAAO,CACL,KAAC,SAAS,IAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAc,EAAE,KAAK,EAAE,KAAK,YAC3D,KAAK,GACI,CACb,CAAC;AACJ,CAAC,CAAC;AAWF;;;yEAGyE;AACzE,MAAM,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAA0B,IAAI,CAAC,CAAC;AAE9E,MAAM,cAAc,GAAG,CAAC,QAAsC,EAAE,GAAW,EAAoB,EAAE;IAC/F,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,QAAQ,IAAI,WAAW,CAAC;IACvC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,4DAA4D,CAAC,CAAC;IAC/F,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAuBF,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAyC,SAAS,IAAI,CAAC,KAAK,EAAE,GAAG;IACnG,MAAM,EACJ,MAAM,EAAE,UAAU,EAClB,WAAW,EACX,aAAa,EACb,QAAQ,EACR,OAAO,EACP,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAa,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAa,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IAE7E,MAAM,WAAW,GAAG,CAAC,KAA0C,EAAQ,EAAE;QACvE,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;QACjB,IAAI,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC;YACpC,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,CAAC,QAAQ,CAAC,IAAa,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,gBAAgB,GACpB,OAAO,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE7F,OAAO,CACL,eACM,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,EAChC,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,iBACK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAC5C,OAAO,EAAE,WAAW,YAEnB,gBAAgB,GACf,CACL,CAAC;AACJ,CAAC,CAAkB,CAAC;AASpB,MAAM,UAAU,QAAQ,CAGtB,KAA2B;IAC3B,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,GAAG,KAAK,CAAC;IACjD,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,QAAQ,CAAC,OAAgB,CAAC,CAAC;QAC3B,2DAA2D;QAC3D,uDAAuD;IACzD,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC;AACd,CAAC;AAaD,MAAM,UAAU,UAAU,CAGxB,KAA6B;IAC7B,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IACxD,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAa,CAAC,CAAC;IACtD,IAAI,OAAO,QAAQ,KAAK,UAAU;QAAE,OAAO,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAClE,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;AACpC,CAAC;AAoBD;;kCAEkC;AAClC,MAAM,cAAc,GAAG,CAA6B,MAAS,EAAsB,EAAE;IACnF,KAAK,MAAM,CAAC;IACZ,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAmC,CAAC;AACzE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AACnE,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC;AAS/B,MAAM,CAAC,MAAM,UAAU,GAAG,CACxB,SAA8E,EACxD,EAAE,CACxB,KAAK,CAAC,UAAU,CAAyC,SAAS,WAAW,CAAC,KAAK,EAAE,GAAG;IACtF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,CAAC;IAC9C,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAa,CAAC,CAAC;IACjD,OAAO,KAAC,SAAS,OAAM,IAAyB,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,GAAI,CAAC;AAC7E,CAAC,CAAyB,CAAC;AAE7B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAiB,OAAgB,EAAW,EAAE,CAAC,OAAO,CAAC;AAElF,MAAM,iBAAiB,GAAG,CACxB,KAAkD,EAC1B,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAE7E,MAAM,UAAU,GAAG,CAAC,IAAiB,EAAE,KAA6B,EAAe,EAAE;IACnF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrC,OAAO;QACL,GAAG,IAAI;QACP,GAAG,KAAK;QACR,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS;QACnF,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE;KACzC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CACxB,KAA0C,EAC1C,KAA0D,EACjD,EAAE;IACX,IAAI,KAAK,CAAC,gBAAgB;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,KAAK,CAAC,cAAc,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAChD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IACnF,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACzE,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC/C,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unitflow/router",
3
- "version": "0.2.3",
3
+ "version": "0.3.0",
4
4
  "type": "module",
5
5
  "description": "Effect-native, Unitflow-aware typed router with React bindings.",
6
6
  "license": "MIT",
@@ -25,8 +25,8 @@
25
25
  "main": "./dist/index.js",
26
26
  "types": "./dist/index.d.ts",
27
27
  "dependencies": {
28
- "@unitflow/react": "^0.3.1",
29
- "@unitflow/core": "^0.3.1"
28
+ "@unitflow/core": "^0.3.1",
29
+ "@unitflow/react": "^0.3.1"
30
30
  },
31
31
  "peerDependencies": {
32
32
  "effect": "4.0.0-beta.88",