mirror of
https://github.com/open-webui/open-webui
synced 2025-04-29 10:42:55 +00:00
33 lines
769 B
Svelte
33 lines
769 B
Svelte
<script lang="ts">
|
|
import { createEventDispatcher } from 'svelte';
|
|
|
|
const dispatch = createEventDispatcher();
|
|
import RecursiveFolder from './RecursiveFolder.svelte';
|
|
export let folders = {};
|
|
|
|
let folderList = [];
|
|
// Get the list of folders that have no parent, sorted by name alphabetically
|
|
$: folderList = Object.keys(folders)
|
|
.filter((key) => folders[key].parent_id === null)
|
|
.sort((a, b) =>
|
|
folders[a].name.localeCompare(folders[b].name, undefined, {
|
|
numeric: true,
|
|
sensitivity: 'base'
|
|
})
|
|
);
|
|
</script>
|
|
|
|
{#each folderList as folderId (folderId)}
|
|
<RecursiveFolder
|
|
className="px-2"
|
|
{folders}
|
|
{folderId}
|
|
on:update={(e) => {
|
|
dispatch('update', e.detail);
|
|
}}
|
|
on:change={(e) => {
|
|
dispatch('change', e.detail);
|
|
}}
|
|
/>
|
|
{/each}
|