@real-router/svelte 0.3.0 → 0.3.1
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/components/RouterErrorBoundary.svelte +7 -15
- package/dist/composables/useRouterTransition.svelte.js +2 -2
- package/package.json +3 -3
- package/src/components/RouterErrorBoundary.svelte +7 -15
- package/src/composables/useRouterTransition.svelte.ts +2 -3
- package/dist/composables/useRouterError.svelte.d.ts +0 -4
- package/dist/composables/useRouterError.svelte.js +0 -13
- package/src/composables/useRouterError.svelte.ts +0 -21
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
+
import { createDismissableError } from "@real-router/sources";
|
|
2
3
|
import { untrack } from "svelte";
|
|
3
4
|
|
|
4
|
-
import {
|
|
5
|
+
import { useRouter } from "../composables/useRouter.svelte";
|
|
6
|
+
import { createReactiveSource } from "../createReactiveSource.svelte";
|
|
5
7
|
|
|
6
8
|
import type { RouterError, State } from "@real-router/core";
|
|
7
9
|
import type { Snippet } from "svelte";
|
|
@@ -18,18 +20,8 @@
|
|
|
18
20
|
|
|
19
21
|
let { children, fallback, onError }: Props = $props();
|
|
20
22
|
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const visibleError = $derived(
|
|
25
|
-
snapshot.current.version > dismissedVersion
|
|
26
|
-
? snapshot.current.error
|
|
27
|
-
: null,
|
|
28
|
-
);
|
|
29
|
-
|
|
30
|
-
function resetError(): void {
|
|
31
|
-
dismissedVersion = snapshot.current.version;
|
|
32
|
-
}
|
|
23
|
+
const router = useRouter();
|
|
24
|
+
const snapshot = createReactiveSource(createDismissableError(router));
|
|
33
25
|
|
|
34
26
|
$effect(() => {
|
|
35
27
|
const snap = snapshot.current;
|
|
@@ -50,6 +42,6 @@
|
|
|
50
42
|
</script>
|
|
51
43
|
|
|
52
44
|
{@render children?.()}
|
|
53
|
-
{#if
|
|
54
|
-
{@render fallback(
|
|
45
|
+
{#if snapshot.current.error}
|
|
46
|
+
{@render fallback(snapshot.current.error, snapshot.current.resetError)}
|
|
55
47
|
{/if}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getTransitionSource } from "@real-router/sources";
|
|
2
2
|
import { createReactiveSource } from "../createReactiveSource.svelte";
|
|
3
3
|
import { useRouter } from "./useRouter.svelte";
|
|
4
4
|
export function useRouterTransition() {
|
|
5
5
|
const router = useRouter();
|
|
6
|
-
const source =
|
|
6
|
+
const source = getTransitionSource(router);
|
|
7
7
|
return createReactiveSource(source);
|
|
8
8
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@real-router/svelte",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Svelte 5 integration for Real-Router",
|
|
6
6
|
"svelte": "./dist/index.js",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"@real-router/core": "^0.48.0",
|
|
48
48
|
"@real-router/route-utils": "^0.2.1",
|
|
49
|
-
"@real-router/sources": "^0.
|
|
49
|
+
"@real-router/sources": "^0.6.0"
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@sveltejs/package": "2.5.7",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"svelte": "5.54.0",
|
|
59
59
|
"svelte-check": "4.4.5",
|
|
60
60
|
"svelte-eslint-parser": "1.6.0",
|
|
61
|
-
"@real-router/browser-plugin": "^0.
|
|
61
|
+
"@real-router/browser-plugin": "^0.13.0"
|
|
62
62
|
},
|
|
63
63
|
"peerDependencies": {
|
|
64
64
|
"svelte": ">=5.7.0"
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
+
import { createDismissableError } from "@real-router/sources";
|
|
2
3
|
import { untrack } from "svelte";
|
|
3
4
|
|
|
4
|
-
import {
|
|
5
|
+
import { useRouter } from "../composables/useRouter.svelte";
|
|
6
|
+
import { createReactiveSource } from "../createReactiveSource.svelte";
|
|
5
7
|
|
|
6
8
|
import type { RouterError, State } from "@real-router/core";
|
|
7
9
|
import type { Snippet } from "svelte";
|
|
@@ -18,18 +20,8 @@
|
|
|
18
20
|
|
|
19
21
|
let { children, fallback, onError }: Props = $props();
|
|
20
22
|
|
|
21
|
-
const
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
const visibleError = $derived(
|
|
25
|
-
snapshot.current.version > dismissedVersion
|
|
26
|
-
? snapshot.current.error
|
|
27
|
-
: null,
|
|
28
|
-
);
|
|
29
|
-
|
|
30
|
-
function resetError(): void {
|
|
31
|
-
dismissedVersion = snapshot.current.version;
|
|
32
|
-
}
|
|
23
|
+
const router = useRouter();
|
|
24
|
+
const snapshot = createReactiveSource(createDismissableError(router));
|
|
33
25
|
|
|
34
26
|
$effect(() => {
|
|
35
27
|
const snap = snapshot.current;
|
|
@@ -50,6 +42,6 @@
|
|
|
50
42
|
</script>
|
|
51
43
|
|
|
52
44
|
{@render children?.()}
|
|
53
|
-
{#if
|
|
54
|
-
{@render fallback(
|
|
45
|
+
{#if snapshot.current.error}
|
|
46
|
+
{@render fallback(snapshot.current.error, snapshot.current.resetError)}
|
|
55
47
|
{/if}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getTransitionSource } from "@real-router/sources";
|
|
2
2
|
|
|
3
3
|
import { createReactiveSource } from "../createReactiveSource.svelte";
|
|
4
4
|
import { useRouter } from "./useRouter.svelte";
|
|
@@ -9,8 +9,7 @@ export function useRouterTransition(): {
|
|
|
9
9
|
readonly current: RouterTransitionSnapshot;
|
|
10
10
|
} {
|
|
11
11
|
const router = useRouter();
|
|
12
|
-
|
|
13
|
-
const source = createTransitionSource(router);
|
|
12
|
+
const source = getTransitionSource(router);
|
|
14
13
|
|
|
15
14
|
return createReactiveSource(source);
|
|
16
15
|
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { createErrorSource } from "@real-router/sources";
|
|
2
|
-
import { createReactiveSource } from "../createReactiveSource.svelte";
|
|
3
|
-
import { useRouter } from "./useRouter.svelte";
|
|
4
|
-
const cache = new WeakMap();
|
|
5
|
-
export function useRouterError() {
|
|
6
|
-
const router = useRouter();
|
|
7
|
-
let source = cache.get(router);
|
|
8
|
-
if (!source) {
|
|
9
|
-
source = createErrorSource(router);
|
|
10
|
-
cache.set(router, source);
|
|
11
|
-
}
|
|
12
|
-
return createReactiveSource(source);
|
|
13
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { createErrorSource } from "@real-router/sources";
|
|
2
|
-
|
|
3
|
-
import { createReactiveSource } from "../createReactiveSource.svelte";
|
|
4
|
-
import { useRouter } from "./useRouter.svelte";
|
|
5
|
-
|
|
6
|
-
import type { Router } from "@real-router/core";
|
|
7
|
-
import type { RouterErrorSnapshot, RouterSource } from "@real-router/sources";
|
|
8
|
-
|
|
9
|
-
const cache = new WeakMap<Router, RouterSource<RouterErrorSnapshot>>();
|
|
10
|
-
|
|
11
|
-
export function useRouterError(): { readonly current: RouterErrorSnapshot } {
|
|
12
|
-
const router = useRouter();
|
|
13
|
-
|
|
14
|
-
let source = cache.get(router);
|
|
15
|
-
if (!source) {
|
|
16
|
-
source = createErrorSource(router);
|
|
17
|
-
cache.set(router, source);
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
return createReactiveSource(source);
|
|
21
|
-
}
|