refac
This commit is contained in:
1 parent
d7f33996ee
commit
975c9f9b50
1 file changed
+19
@@ -1,4 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
|
import { browser } from '$app/environment';
|
||||||
import { getContext, onMount, tick } from 'svelte';
|
import { getContext, onMount, tick } from 'svelte';
|
||||||
import type { Writable } from 'svelte/store';
|
import type { Writable } from 'svelte/store';
|
||||||
import { toast } from 'svelte-sonner';
|
import { toast } from 'svelte-sonner';
|
||||||
@@ -783,6 +784,8 @@
|
|||||||
} else if (filteredSettings.length > 0 && !filteredSettings.includes(selectedTab)) {
|
} else if (filteredSettings.length > 0 && !filteredSettings.includes(selectedTab)) {
|
||||||
selectedTab = filteredSettings[0];
|
selectedTab = filteredSettings[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
scrollToSelectedTab();
|
||||||
};
|
};
|
||||||
|
|
||||||
const saveSettings = async (updated: Record<string, any>) => {
|
const saveSettings = async (updated: Record<string, any>) => {
|
||||||
@@ -823,10 +826,26 @@
|
|||||||
}`;
|
}`;
|
||||||
|
|
||||||
let selectedTab = 'general';
|
let selectedTab = 'general';
|
||||||
|
const scrollToSelectedTab = async () => {
|
||||||
|
if (!browser || !modalShow || !selectedTab) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
await tick();
|
||||||
|
const tabElement = document.querySelector<HTMLElement>(
|
||||||
|
'#settings-tabs-container [role="tab"][aria-selected="true"]'
|
||||||
|
);
|
||||||
|
tabElement?.scrollIntoView({ behavior: 'smooth', block: 'nearest', inline: 'start' });
|
||||||
|
};
|
||||||
|
|
||||||
$: if ($user?.role !== 'admin' && isAdminTab(selectedTab)) {
|
$: if ($user?.role !== 'admin' && isAdminTab(selectedTab)) {
|
||||||
selectedTab = 'general';
|
selectedTab = 'general';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$: if (modalShow && selectedTab) {
|
||||||
|
scrollToSelectedTab();
|
||||||
|
}
|
||||||
|
|
||||||
onMount(() => {
|
onMount(() => {
|
||||||
availableSettings = getAvailableSettings();
|
availableSettings = getAvailableSettings();
|
||||||
setFilteredSettings();
|
setFilteredSettings();
|
||||||
|
|||||||
Reference in new issue
Block a user