diff --git a/README.md b/README.md index 18ae8fdf..88ac8662 100644 --- a/README.md +++ b/README.md @@ -103,6 +103,7 @@ You may also need to manually run the frontend linter. First, navigate to the `f ```bash pnpm run format +pnpm run check ``` ### Assorted Development Helpers diff --git a/frontend/pnpm-workspace.yaml b/frontend/pnpm-workspace.yaml new file mode 100644 index 00000000..044b96af --- /dev/null +++ b/frontend/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +onlyBuiltDependencies: + - esbuild + - svelte-preprocess diff --git a/frontend/src/lib/components/left-bar/Settings.svelte b/frontend/src/lib/components/left-bar/Settings.svelte index 70f03406..7db6b661 100644 --- a/frontend/src/lib/components/left-bar/Settings.svelte +++ b/frontend/src/lib/components/left-bar/Settings.svelte @@ -11,7 +11,7 @@ import { languages } from '$lib/localization'; import { type PopupSettings, getModalStore, popup } from '$lib/skeletonExtensions'; import { addQueuedModAction, hasPendingProfileChange, queuedMods } from '$lib/store/actionQueue'; - import { lockfileMods, manifestMods } from '$lib/store/ficsitCLIStore'; + import { lockfileMods } from '$lib/store/ficsitCLIStore'; import { error } from '$lib/store/generalStore'; import { debug, @@ -148,7 +148,7 @@ async function copyModList() { // Generate mod entries - const modList = await Promise.all(Object.keys($manifestMods).map(async (modReference) => { + const modList = (await Promise.all(Object.keys($lockfileMods).map(async (modReference) => { let modName = modReference; if($offline) { modName = (await OfflineGetMod(modReference)).name; @@ -158,12 +158,13 @@ modName = result.data.getModByReference.name; } } + return { friendlyName: modName, modReference, version: $lockfileMods[modReference].version, }; - })); + }))); // Sort by Friendly Name modList.sort((a, b) => { const x = a.friendlyName.toLowerCase(); @@ -180,7 +181,8 @@ mod.modReference = mod.modReference.padEnd(maxModReferenceLen, ' '); modListString += `${mod.friendlyName} ${mod.modReference} ${mod.version}\n`; }); - navigator.clipboard.writeText(modListString.trim()); + const markdownCodeblockFence = '```'; + navigator.clipboard.writeText(`${markdownCodeblockFence}\n${modListString.trim()}\n${markdownCodeblockFence}`); } function localeName(locale: string) { @@ -188,6 +190,11 @@ return new Intl.DisplayNames([locale], { type: 'language' }).of(locale); } + // appease svelte "stores must be declared at the top of the file" + function displayError(err: string) { + $error = err; + } + $: if ($queueAutoStart && $queuedMods.length === 0 && $hasPendingProfileChange) { $hasPendingProfileChange = false; addQueuedModAction('__apply__', 'apply', Apply).catch((e) => error.set(e)); @@ -336,7 +343,12 @@
  • -