fix: course page rerendering twice

This commit is contained in:
Rotimi Best
2023-12-13 09:02:52 +03:00
parent 9ee723c65b
commit 4a64d2affe
6 changed files with 108 additions and 36 deletions
+1 -1
View File
@@ -59,7 +59,7 @@
"@babel/plugin-transform-runtime": "^7.22.9",
"@babel/preset-env": "^7.22.9",
"@babel/runtime": "^7.22.6",
"@sveltejs/kit": "^1.22.4",
"@sveltejs/kit": "^1.29.0",
"@tailwindcss/typography": "^0.5.9",
"@types/lodash": "^4.14.196",
"@types/nodemailer": "^6.4.11",
+9
View File
@@ -118,6 +118,15 @@ code {
fill: red;
}
.org-root {
height: calc(100vh - 48px);
}
.org-slot {
min-width: calc(100vw - 250px);
height: calc(100vh - 48px);
overflow-y: auto;
}
@tailwind components;
@tailwind utilities;
+1 -29
View File
@@ -318,26 +318,7 @@
{/if}
<div class="flex justify-between">
{#if isOrgPage($page.url?.pathname)}
<AddOrgModal />
<div class="org-root w-full flex items-center justify-between">
{#if !isQuizPage($page.url?.pathname)}
<OrgSideBar />
{/if}
<div class="org-slot bg-white dark:bg-black w-full">
<slot />
</div>
</div>
{:else if isLMSPage($page.url?.pathname)}
<div class="org-root w-full flex items-center justify-between">
<LMSSideBar />
<div class="org-slot bg-white dark:bg-black w-full">
<slot />
</div>
</div>
{:else}
<slot />
{/if}
<slot />
{#if showAppsSideBar(path)}
<Apps />
@@ -352,15 +333,6 @@
box-sizing: border-box;
}
.org-root {
height: calc(100vh - 48px);
}
.org-slot {
min-width: calc(100vw - 250px);
height: calc(100vh - 48px);
overflow-y: auto;
}
:global(a:hover) {
text-decoration: underline;
}
@@ -0,0 +1,10 @@
<script>
import LMSSideBar from '$lib/components/LMS/SideBar.svelte';
</script>
<div class="org-root w-full flex items-center justify-between">
<LMSSideBar />
<div class="org-slot bg-white dark:bg-black w-full">
<slot />
</div>
</div>
@@ -0,0 +1,17 @@
<script>
import { page } from '$app/stores';
import AddOrgModal from '$lib/components/Org/AddOrgModal/AddOrgModal.svelte';
import { isQuizPage } from '$lib/utils/functions/app';
import OrgSideBar from '$lib/components/Org/SideBar.svelte';
</script>
<AddOrgModal />
<div class="org-root w-full flex items-center justify-between">
{#if !isQuizPage($page.url?.pathname)}
<OrgSideBar />
{/if}
<div class="org-slot bg-white dark:bg-black w-full">
<slot />
</div>
</div>
+70 -6
View File
@@ -101,10 +101,10 @@ importers:
version: 2.31.0
'@sveltejs/adapter-auto':
specifier: ^2.1.0
version: 2.1.0(@sveltejs/kit@1.22.4)
version: 2.1.0(@sveltejs/kit@1.29.0)
'@sveltejs/adapter-vercel':
specifier: ^3.0.3
version: 3.0.3(@sveltejs/kit@1.22.4)
version: 3.0.3(@sveltejs/kit@1.29.0)
'@tailwindcss/forms':
specifier: ^0.5.4
version: 0.5.4(tailwindcss@3.3.2)
@@ -206,8 +206,8 @@ importers:
specifier: ^7.22.6
version: 7.22.6
'@sveltejs/kit':
specifier: ^1.22.4
version: 1.22.4(svelte@4.1.2)(vite@4.4.8)
specifier: ^1.29.0
version: 1.29.0(svelte@4.1.2)(vite@4.4.8)
'@tailwindcss/typography':
specifier: ^0.5.9
version: 0.5.9(tailwindcss@3.3.2)
@@ -2377,6 +2377,10 @@ packages:
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
dev: true
/@fastify/busboy@2.1.0:
resolution: {integrity: sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==}
engines: {node: '>=14'}
/@floating-ui/core@1.5.0:
resolution: {integrity: sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==}
dependencies:
@@ -3535,13 +3539,23 @@ packages:
dependencies:
'@sveltejs/kit': 1.22.4(svelte@4.1.2)(vite@4.4.8)
import-meta-resolve: 3.1.1
dev: true
/@sveltejs/adapter-vercel@3.0.3(@sveltejs/kit@1.22.4):
/@sveltejs/adapter-auto@2.1.0(@sveltejs/kit@1.29.0):
resolution: {integrity: sha512-o2pZCfATFtA/Gw/BB0Xm7k4EYaekXxaPGER3xGSY3FvzFJGTlJlZjBseaXwYSM94lZ0HniOjTokN3cWaLX6fow==}
peerDependencies:
'@sveltejs/kit': ^1.0.0
dependencies:
'@sveltejs/kit': 1.29.0(svelte@4.1.2)(vite@4.4.8)
import-meta-resolve: 3.1.1
dev: false
/@sveltejs/adapter-vercel@3.0.3(@sveltejs/kit@1.29.0):
resolution: {integrity: sha512-0FQMjR6klW4627ewdclSr0lUe/DqiiyOaRTfgb5cXgNbVMsZMOA2fQ77TYQnJdvMfSEWe6y8uznV48XqKh9+vA==}
peerDependencies:
'@sveltejs/kit': ^1.5.0
dependencies:
'@sveltejs/kit': 1.22.4(svelte@4.1.2)(vite@4.4.8)
'@sveltejs/kit': 1.29.0(svelte@4.1.2)(vite@4.4.8)
'@vercel/nft': 0.23.1
esbuild: 0.18.20
transitivePeerDependencies:
@@ -3574,6 +3588,34 @@ packages:
vite: 4.4.8(sass@1.64.2)
transitivePeerDependencies:
- supports-color
dev: true
/@sveltejs/kit@1.29.0(svelte@4.1.2)(vite@4.4.8):
resolution: {integrity: sha512-O+DvB67Ouha0pVKh0nRxr8QwZcls8h4knLoS6Sk1DhRLAuQzuM0FNnPNIhMHL1iP1LFeXd3P+bk+h2V07WSF5w==}
engines: {node: ^16.14 || >=18}
hasBin: true
requiresBuild: true
peerDependencies:
svelte: ^3.54.0 || ^4.0.0-next.0 || ^5.0.0-next.0
vite: ^4.0.0
dependencies:
'@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.1.2)(vite@4.4.8)
'@types/cookie': 0.5.4
cookie: 0.5.0
devalue: 4.3.2
esm-env: 1.0.0
kleur: 4.1.5
magic-string: 0.30.5
mrmime: 1.0.1
sade: 1.8.1
set-cookie-parser: 2.6.0
sirv: 2.0.3
svelte: 4.1.2
tiny-glob: 0.2.9
undici: 5.26.5
vite: 4.4.8(sass@1.64.2)
transitivePeerDependencies:
- supports-color
/@sveltejs/vite-plugin-svelte-inspector@1.0.4(@sveltejs/vite-plugin-svelte@2.5.3)(svelte@4.1.2)(vite@4.4.8):
resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==}
@@ -4655,6 +4697,7 @@ packages:
engines: {node: '>=10.16.0'}
dependencies:
streamsearch: 1.1.0
dev: true
/bytes@3.1.2:
resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
@@ -6666,6 +6709,9 @@ packages:
define-properties: 1.2.1
dev: true
/globalyzer@0.1.0:
resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==}
/globby@11.1.0:
resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
engines: {node: '>=10'}
@@ -6689,6 +6735,9 @@ packages:
slash: 4.0.0
dev: true
/globrex@0.1.2:
resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
/gopd@1.0.1:
resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
dependencies:
@@ -8325,6 +8374,7 @@ packages:
resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==}
engines: {node: '>=10.0.0'}
hasBin: true
dev: true
/mimic-fn@2.1.0:
resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
@@ -9961,6 +10011,7 @@ packages:
/streamsearch@1.1.0:
resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
engines: {node: '>=10.0.0'}
dev: true
/string-width@4.2.3:
resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
@@ -10506,6 +10557,12 @@ packages:
dependencies:
any-promise: 1.3.0
/tiny-glob@0.2.9:
resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==}
dependencies:
globalyzer: 0.1.0
globrex: 0.1.2
/title@3.5.3:
resolution: {integrity: sha512-20JyowYglSEeCvZv3EZ0nZ046vLarO37prvV0mbtQV7C8DJPGgN967r8SJkqd3XK3K3lD3/Iyfp3avjfil8Q2Q==}
hasBin: true
@@ -10792,6 +10849,13 @@ packages:
engines: {node: '>=14.0'}
dependencies:
busboy: 1.6.0
dev: true
/undici@5.26.5:
resolution: {integrity: sha512-cSb4bPFd5qgR7qr2jYAi0hlX9n5YKK2ONKkLFkxl+v/9BvC0sOpZjBHDBSXc5lWAf5ty9oZdRXytBIHzgUcerw==}
engines: {node: '>=14.0'}
dependencies:
'@fastify/busboy': 2.1.0
/unicode-canonical-property-names-ecmascript@2.0.0:
resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==}