diff --git a/src/lib/components/Spinner.svelte b/src/lib/components/Spinner.svelte
new file mode 100644
index 0000000..b161dde
--- /dev/null
+++ b/src/lib/components/Spinner.svelte
@@ -0,0 +1,57 @@
+
+
diff --git a/src/lib/stores.ts b/src/lib/stores.ts
new file mode 100644
index 0000000..701527f
--- /dev/null
+++ b/src/lib/stores.ts
@@ -0,0 +1,21 @@
+import { writable } from 'svelte/store';
+import type { Writable } from 'svelte/store';
+import type { InstagramPost } from '../types/instagram';
+
+import { derived } from "svelte/store";
+import { navigating } from "$app/stores";
+
+
+export const instagramFeed: Writable = writable([]);
+
+
+let timer = null;
+/** When navigating from to, time 500ms to be true, else false */
+export const navigationIsDelayed = derived(navigating, (newValue, set) => {
+ if (timer) { clearTimeout(timer); }
+ if (newValue) {
+ timer = setTimeout(() => set(true), 500);
+ }
+ set(false);
+});
+
diff --git a/src/routes/(home)/+layout.svelte b/src/routes/+layout.svelte
similarity index 84%
rename from src/routes/(home)/+layout.svelte
rename to src/routes/+layout.svelte
index 81a312c..227cdc6 100644
--- a/src/routes/(home)/+layout.svelte
+++ b/src/routes/+layout.svelte
@@ -57,8 +57,11 @@
deepLinkedElement.scrollIntoView();
}
}
- }
-
+ };
+ import { fade } from 'svelte/transition';
+ import Spinner from '$lib/components/Spinner.svelte';
+ import { navigationIsDelayed } from '$lib/stores';
+
@@ -91,19 +94,26 @@
+{#if $navigationIsDelayed}
+
+{:else}
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+{/if}