Spaces:
Paused
Paused
fix: conversations optimistic updates
Browse files- src/routes/+layout.svelte +11 -6
src/routes/+layout.svelte
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
import "../styles/main.css";
|
| 3 |
|
| 4 |
import { onDestroy, onMount } from "svelte";
|
| 5 |
-
import { goto
|
| 6 |
import { base } from "$app/paths";
|
| 7 |
import { page } from "$app/stores";
|
| 8 |
|
|
@@ -12,7 +12,6 @@
|
|
| 12 |
import { createSettingsStore } from "$lib/stores/settings";
|
| 13 |
|
| 14 |
import { shareConversation } from "$lib/shareConversation";
|
| 15 |
-
import { UrlDependency } from "$lib/types/UrlDependency";
|
| 16 |
|
| 17 |
import Toast from "$lib/components/Toast.svelte";
|
| 18 |
import NavMenu from "$lib/components/NavMenu.svelte";
|
|
@@ -59,9 +58,12 @@
|
|
| 59 |
return;
|
| 60 |
}
|
| 61 |
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
|
|
|
|
|
|
|
|
|
| 65 |
await goto(`${base}/`, { invalidateAll: true });
|
| 66 |
}
|
| 67 |
} catch (err) {
|
|
@@ -85,7 +87,10 @@
|
|
| 85 |
return;
|
| 86 |
}
|
| 87 |
|
| 88 |
-
|
|
|
|
|
|
|
|
|
|
| 89 |
} catch (err) {
|
| 90 |
console.error(err);
|
| 91 |
$error = String(err);
|
|
|
|
| 2 |
import "../styles/main.css";
|
| 3 |
|
| 4 |
import { onDestroy, onMount } from "svelte";
|
| 5 |
+
import { goto } from "$app/navigation";
|
| 6 |
import { base } from "$app/paths";
|
| 7 |
import { page } from "$app/stores";
|
| 8 |
|
|
|
|
| 12 |
import { createSettingsStore } from "$lib/stores/settings";
|
| 13 |
|
| 14 |
import { shareConversation } from "$lib/shareConversation";
|
|
|
|
| 15 |
|
| 16 |
import Toast from "$lib/components/Toast.svelte";
|
| 17 |
import NavMenu from "$lib/components/NavMenu.svelte";
|
|
|
|
| 58 |
return;
|
| 59 |
}
|
| 60 |
|
| 61 |
+
data.conversations.then((convs) => {
|
| 62 |
+
const newConvs = convs.filter((conv) => conv.id !== id);
|
| 63 |
+
data.conversations = Promise.resolve(newConvs);
|
| 64 |
+
});
|
| 65 |
+
|
| 66 |
+
if ($page.params.id === id) {
|
| 67 |
await goto(`${base}/`, { invalidateAll: true });
|
| 68 |
}
|
| 69 |
} catch (err) {
|
|
|
|
| 87 |
return;
|
| 88 |
}
|
| 89 |
|
| 90 |
+
data.conversations.then((convs) => {
|
| 91 |
+
const newConvs = convs.map((conv) => (conv.id === id ? { ...conv, title } : conv));
|
| 92 |
+
data.conversations = Promise.resolve(newConvs);
|
| 93 |
+
});
|
| 94 |
} catch (err) {
|
| 95 |
console.error(err);
|
| 96 |
$error = String(err);
|