feat: module lorebook sort, import, export
This commit is contained in:
@@ -11,9 +11,10 @@
|
||||
globalMode?: boolean;
|
||||
submenu?: number;
|
||||
lorePlus?: boolean;
|
||||
externalLoreBooks?: loreBook[];
|
||||
}
|
||||
|
||||
let { globalMode = false, submenu = 0, lorePlus = false }: Props = $props();
|
||||
let { globalMode = false, submenu = 0, lorePlus = false, externalLoreBooks = null }: Props = $props();
|
||||
let stb: Sortable = null
|
||||
let ele: HTMLDivElement = $state()
|
||||
let sorted = $state(0)
|
||||
@@ -31,6 +32,13 @@
|
||||
})
|
||||
DBState.db.loreBook[DBState.db.loreBookPage].data = newLore
|
||||
}
|
||||
else if(externalLoreBooks){
|
||||
let newLore:loreBook[] = []
|
||||
idx.forEach((i) => {
|
||||
newLore.push(externalLoreBooks[i])
|
||||
})
|
||||
externalLoreBooks = newLore
|
||||
}
|
||||
else if(submenu === 1){
|
||||
let newLore:loreBook[] = []
|
||||
idx.forEach((i) => {
|
||||
@@ -97,6 +105,18 @@
|
||||
}} onOpen={onOpen} onClose={onClose}/>
|
||||
{/each}
|
||||
{/if}
|
||||
{:else if externalLoreBooks}
|
||||
{#if externalLoreBooks.length === 0}
|
||||
<span class="text-textcolor2">No Lorebook</span>
|
||||
{:else}
|
||||
{#each externalLoreBooks as book, i}
|
||||
<LoreBookData bind:value={externalLoreBooks[i]} idx={i} onRemove={() => {
|
||||
let lore = externalLoreBooks
|
||||
lore.splice(i, 1)
|
||||
externalLoreBooks = lore
|
||||
}} onOpen={onOpen} onClose={onClose}/>
|
||||
{/each}
|
||||
{/if}
|
||||
{:else if submenu === 0}
|
||||
{#if DBState.db.characters[$selectedCharID].globalLore.length === 0}
|
||||
<span class="text-textcolor2">No Lorebook</span>
|
||||
|
||||
Reference in New Issue
Block a user