@ereo/client 0.2.7 → 0.2.9
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 +25 -9
- package/dist/hooks.d.ts +0 -23
- package/dist/hooks.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -11,20 +11,36 @@ bun add @ereo/client
|
|
|
11
11
|
## Quick Start
|
|
12
12
|
|
|
13
13
|
```typescript
|
|
14
|
-
|
|
14
|
+
// app/entry.client.ts
|
|
15
|
+
import { initClient } from '@ereo/client';
|
|
15
16
|
|
|
16
|
-
// Initialize the client runtime
|
|
17
|
+
// Initialize the client runtime (hydrates islands, navigation, prefetching)
|
|
17
18
|
initClient();
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
### Data Access
|
|
22
|
+
|
|
23
|
+
Route components receive `loaderData` and `actionData` as props during SSR:
|
|
24
|
+
|
|
25
|
+
```tsx
|
|
26
|
+
// app/routes/users.tsx
|
|
27
|
+
export async function loader() {
|
|
28
|
+
return { users: await db.user.findMany() };
|
|
29
|
+
}
|
|
18
30
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const { user } = useLoaderData<{ user: { name: string } }>();
|
|
22
|
-
return <h1>{user.name}</h1>;
|
|
31
|
+
export default function UsersPage({ loaderData }: { loaderData: { users: User[] } }) {
|
|
32
|
+
return <ul>{loaderData.users.map(u => <li key={u.id}>{u.name}</li>)}</ul>;
|
|
23
33
|
}
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
For nested or child components, use hooks to access data without prop drilling:
|
|
37
|
+
|
|
38
|
+
```tsx
|
|
39
|
+
import { useLoaderData } from '@ereo/client';
|
|
24
40
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return <
|
|
41
|
+
function UserCount() {
|
|
42
|
+
const { users } = useLoaderData<{ users: User[] }>();
|
|
43
|
+
return <span>{users.length} users</span>;
|
|
28
44
|
}
|
|
29
45
|
```
|
|
30
46
|
|
package/dist/hooks.d.ts
CHANGED
|
@@ -172,29 +172,6 @@ export declare function useRouteLoaderData<T>(routeId: string): T | undefined;
|
|
|
172
172
|
* ```
|
|
173
173
|
*/
|
|
174
174
|
export declare function useActionData<T>(): T | undefined;
|
|
175
|
-
/**
|
|
176
|
-
* Get current navigation state.
|
|
177
|
-
*
|
|
178
|
-
* @returns The current navigation state
|
|
179
|
-
* @throws Error if used outside of EreoProvider
|
|
180
|
-
*
|
|
181
|
-
* @example
|
|
182
|
-
* ```tsx
|
|
183
|
-
* function NavigationIndicator() {
|
|
184
|
-
* const navigation = useNavigation();
|
|
185
|
-
*
|
|
186
|
-
* if (navigation.status === 'loading') {
|
|
187
|
-
* return <Spinner />;
|
|
188
|
-
* }
|
|
189
|
-
*
|
|
190
|
-
* if (navigation.status === 'submitting') {
|
|
191
|
-
* return <div>Submitting form...</div>;
|
|
192
|
-
* }
|
|
193
|
-
*
|
|
194
|
-
* return null;
|
|
195
|
-
* }
|
|
196
|
-
* ```
|
|
197
|
-
*/
|
|
198
175
|
export declare function useNavigation(): NavigationStateHook;
|
|
199
176
|
/**
|
|
200
177
|
* Access error from error boundary context.
|
package/dist/hooks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -739,10 +739,13 @@ function useActionData() {
|
|
|
739
739
|
}
|
|
740
740
|
return context.data;
|
|
741
741
|
}
|
|
742
|
+
var ssrNavigationState = {
|
|
743
|
+
status: "idle"
|
|
744
|
+
};
|
|
742
745
|
function useNavigation() {
|
|
743
746
|
const context = useContext3(NavigationContext);
|
|
744
747
|
if (context === null) {
|
|
745
|
-
|
|
748
|
+
return ssrNavigationState;
|
|
746
749
|
}
|
|
747
750
|
return context.state;
|
|
748
751
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ereo/client",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.9",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": "Ereo Team",
|
|
6
6
|
"homepage": "https://ereojs.github.io/ereoJS",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"typecheck": "tsc --noEmit"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"@ereo/core": "^0.2.
|
|
35
|
+
"@ereo/core": "^0.2.9"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
38
|
"@types/react": "^18.2.0",
|