"docs/source/en/vscode:/vscode.git/clone" did not exist on "541bb6ee634bb0aa56972a51cce5d1b69fc9b3ce"
Commit c3c15cbb authored by Timothy J. Baek's avatar Timothy J. Baek
Browse files

refac

parent 83813463
<script lang="ts"> <script lang="ts">
import { getContext, afterUpdate } from 'svelte'; import { getContext, tick } from 'svelte';
import { toast } from 'svelte-sonner'; import { toast } from 'svelte-sonner';
import { models, settings, user } from '$lib/stores'; import { models, settings, user } from '$lib/stores';
import { updateUserSettings } from '$lib/apis/users';
import { getModels as _getModels } from '$lib/apis'; import { getModels as _getModels } from '$lib/apis';
import { goto } from '$app/navigation';
import Modal from '../common/Modal.svelte'; import Modal from '../common/Modal.svelte';
import Account from './Settings/Account.svelte'; import Account from './Settings/Account.svelte';
...@@ -14,8 +15,6 @@ ...@@ -14,8 +15,6 @@
import Chats from './Settings/Chats.svelte'; import Chats from './Settings/Chats.svelte';
import User from '../icons/User.svelte'; import User from '../icons/User.svelte';
import Personalization from './Settings/Personalization.svelte'; import Personalization from './Settings/Personalization.svelte';
import { updateUserSettings } from '$lib/apis/users';
import { goto } from '$app/navigation';
import Valves from './Settings/Valves.svelte'; import Valves from './Settings/Valves.svelte';
const i18n = getContext('i18n'); const i18n = getContext('i18n');
...@@ -36,30 +35,35 @@ ...@@ -36,30 +35,35 @@
let selectedTab = 'general'; let selectedTab = 'general';
// Function to handle sideways scrolling // Function to handle sideways scrolling
const handleSidewaysScroll = (event) => { const scrollHandler = (event) => {
const settingsTabsContainer = document.getElementById('settings-tabs-container');
if (settingsTabsContainer) {
event.preventDefault(); // Prevent default vertical scrolling
settingsTabsContainer.scrollLeft += event.deltaY; // Scroll sideways
}
};
const addScrollListener = async () => {
await tick();
const settingsTabsContainer = document.getElementById('settings-tabs-container'); const settingsTabsContainer = document.getElementById('settings-tabs-container');
if (settingsTabsContainer) { if (settingsTabsContainer) {
event.preventDefault(); // Prevent default vertical scrolling settingsTabsContainer.addEventListener('wheel', scrollHandler);
settingsTabsContainer.scrollLeft += event.deltaY; // Scroll sideways
} }
}; };
// Use afterUpdate to add the event listener after the modal is confirmed to be visible const removeScrollListener = async () => {
// and remove it when the modal is closed await tick();
afterUpdate(() => { const settingsTabsContainer = document.getElementById('settings-tabs-container');
if (show) { if (settingsTabsContainer) {
const settingsTabsContainer = document.getElementById('settings-tabs-container'); settingsTabsContainer.removeEventListener('wheel', scrollHandler);
if (settingsTabsContainer) {
settingsTabsContainer.addEventListener('wheel', handleSidewaysScroll);
}
} else {
const settingsTabsContainer = document.getElementById('settings-tabs-container');
if (settingsTabsContainer) {
settingsTabsContainer.removeEventListener('wheel', handleSidewaysScroll);
}
} }
}); };
$: if (show) {
addScrollListener();
} else {
removeScrollListener();
}
</script> </script>
<Modal bind:show> <Modal bind:show>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment