diff --git a/package.json b/package.json index 85bdbd9e..8287d33e 100644 --- a/package.json +++ b/package.json @@ -45,6 +45,7 @@ "pngjs": "^7.0.0", "rollup": "^3.21.3", "showdown": "^2.1.0", + "sortablejs": "^1.15.0", "three": "^0.154.0", "tippy.js": "^6.3.7", "uuid": "^9.0.0", @@ -64,6 +65,7 @@ "@types/node": "^18.7.10", "@types/pngjs": "^6.0.1", "@types/showdown": "^2.0.0", + "@types/sortablejs": "^1.15.1", "@types/three": "^0.154.0", "@types/uuid": "^9.0.1", "@types/wicg-file-system-access": "^2020.9.6", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index fae9589d..abc99609 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -98,6 +98,9 @@ dependencies: showdown: specifier: ^2.1.0 version: 2.1.0 + sortablejs: + specifier: ^1.15.0 + version: 1.15.0 three: specifier: ^0.154.0 version: 0.154.0 @@ -151,6 +154,9 @@ devDependencies: '@types/showdown': specifier: ^2.0.0 version: 2.0.0 + '@types/sortablejs': + specifier: ^1.15.1 + version: 1.15.1 '@types/three': specifier: ^0.154.0 version: 0.154.0 @@ -836,6 +842,10 @@ packages: resolution: {integrity: sha512-70xBJoLv+oXjB5PhtA8vo7erjLDp9/qqI63SRHm4REKrwuPOLs8HhXwlZJBJaB4kC18cCZ1UUZ6Fb/PLFW4TCA==} dev: true + /@types/sortablejs@1.15.1: + resolution: {integrity: sha512-g/JwBNToh6oCTAwNS8UGVmjO7NLDKsejVhvE4x1eWiPTC3uCuNsa/TD4ssvX3du+MLiM+SHPNDuijp8y76JzLQ==} + dev: true + /@types/stats.js@0.17.0: resolution: {integrity: sha512-9w+a7bR8PeB0dCT/HBULU2fMqf6BAzvKbxFboYhmDtDkKPiyXYbjoe2auwsXlEFI7CFNMF1dCv3dFH5Poy9R1w==} dev: true @@ -2621,6 +2631,10 @@ packages: sander: 0.5.1 dev: true + /sortablejs@1.15.0: + resolution: {integrity: sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w==} + dev: false + /source-map-js@1.0.2: resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} engines: {node: '>=0.10.0'} diff --git a/src/lib/Setting/Pages/GlobalLoreBookSettings.svelte b/src/lib/Setting/Pages/GlobalLoreBookSettings.svelte index b25126fa..e6ae857c 100644 --- a/src/lib/Setting/Pages/GlobalLoreBookSettings.svelte +++ b/src/lib/Setting/Pages/GlobalLoreBookSettings.svelte @@ -1,7 +1,7 @@ diff --git a/src/lib/SideBars/CharConfig.svelte b/src/lib/SideBars/CharConfig.svelte index 31b44fa0..9f8203d0 100644 --- a/src/lib/SideBars/CharConfig.svelte +++ b/src/lib/SideBars/CharConfig.svelte @@ -6,7 +6,7 @@ import { PlusIcon, SmileIcon, TrashIcon, UserIcon, ActivityIcon, BookIcon, LoaderIcon, User, DnaIcon, CurlyBraces, Volume2Icon, XIcon } from 'lucide-svelte' import Check from "../UI/GUI/Check.svelte"; import { addCharEmotion, addingEmotion, getCharImage, rmCharEmotion, selectCharImg, makeGroupImage } from "../../ts/characters"; - import LoreBook from "./LoreBookSetting.svelte"; + import LoreBook from "./LoreBook/LoreBookSetting.svelte"; import { alertConfirm, alertError, alertNormal, alertSelectChar, alertTOS } from "../../ts/alert"; import BarIcon from "./BarIcon.svelte"; import { findCharacterbyId, selectMultipleFile } from "../../ts/util"; diff --git a/src/lib/SideBars/LoreBookData.svelte b/src/lib/SideBars/LoreBook/LoreBookData.svelte similarity index 86% rename from src/lib/SideBars/LoreBookData.svelte rename to src/lib/SideBars/LoreBook/LoreBookData.svelte index 0a3bb91e..0586fd6c 100644 --- a/src/lib/SideBars/LoreBookData.svelte +++ b/src/lib/SideBars/LoreBook/LoreBookData.svelte @@ -1,19 +1,20 @@ -
+
+ + +
+{/if} +{#if submenu !== 2} + {#if !globalMode} + {submenu === 0 ? $DataBase.characters[$selectedCharID].type === 'group' ? language.groupLoreInfo : language.globalLoreInfo : language.localLoreInfo} + {/if} + +{:else} + {#if $DataBase.characters[$selectedCharID].loreSettings} +
+ { + $DataBase.characters[$selectedCharID].loreSettings = undefined + }} + name={language.useGlobalSettings} + /> +
+
+ +
+ {language.loreBookDepth} + + {language.loreBookToken} + + {:else} +
+ { + $DataBase.characters[$selectedCharID].loreSettings = { + tokenBudget: $DataBase.loreBookToken, + scanDepth:$DataBase.loreBookDepth, + recursiveScanning: false + } + }} + name={language.useGlobalSettings} + /> +
+ {/if} +{/if} +{#if submenu !== 2} + +
+ + + +
+{/if} \ No newline at end of file diff --git a/src/lib/SideBars/LoreBookSetting.svelte b/src/lib/SideBars/LoreBookSetting.svelte deleted file mode 100644 index fac0ad66..00000000 --- a/src/lib/SideBars/LoreBookSetting.svelte +++ /dev/null @@ -1,139 +0,0 @@ - - -{#if !globalMode} -
- - - -
-{/if} -{#if submenu !== 2} - {#if !globalMode} - {submenu === 0 ? $DataBase.characters[$selectedCharID].type === 'group' ? language.groupLoreInfo : language.globalLoreInfo : language.localLoreInfo} - {/if} -
- {#if globalMode} - {#if $DataBase.loreBook[$DataBase.loreBookPage].data.length === 0} - No Lorebook - {:else} - {#each $DataBase.loreBook[$DataBase.loreBookPage].data as book, i} - {#if i !== 0} -
- {/if} - { - let lore = $DataBase.loreBook[$DataBase.loreBookPage].data - lore.splice(i, 1) - $DataBase.loreBook[$DataBase.loreBookPage].data = lore - }}/> - {/each} - {/if} - {:else if submenu === 0} - {#if $DataBase.characters[$selectedCharID].globalLore.length === 0} - No Lorebook - {:else} - {#each $DataBase.characters[$selectedCharID].globalLore as book, i} - {#if i !== 0} -
- {/if} - { - let lore = $DataBase.characters[$selectedCharID].globalLore - lore.splice(i, 1) - $DataBase.characters[$selectedCharID].globalLore = lore - }}/> - {/each} - {/if} - {:else if submenu === 1} - {#if $DataBase.characters[$selectedCharID].chats[$DataBase.characters[$selectedCharID].chatPage].localLore.length === 0} - No Lorebook - {:else} - {#each $DataBase.characters[$selectedCharID].chats[$DataBase.characters[$selectedCharID].chatPage].localLore as book, i} - {#if i !== 0} -
- {/if} - { - let lore = $DataBase.characters[$selectedCharID].chats[$DataBase.characters[$selectedCharID].chatPage].localLore - lore.splice(i, 1) - $DataBase.characters[$selectedCharID].chats[$DataBase.characters[$selectedCharID].chatPage].localLore = lore - }}/> - {/each} - {/if} - {/if} -
-{:else} - {#if $DataBase.characters[$selectedCharID].loreSettings} -
- { - $DataBase.characters[$selectedCharID].loreSettings = undefined - }} - name={language.useGlobalSettings} - /> -
-
- -
- {language.loreBookDepth} - - {language.loreBookToken} - - {:else} -
- { - $DataBase.characters[$selectedCharID].loreSettings = { - tokenBudget: $DataBase.loreBookToken, - scanDepth:$DataBase.loreBookDepth, - recursiveScanning: false - } - }} - name={language.useGlobalSettings} - /> -
- {/if} -{/if} -{#if submenu !== 2} - -
- - - -
-{/if} - \ No newline at end of file