feat: simple/advanced mode for the checklist

This commit is contained in:
Calum H. 2025-08-06 12:45:34 +01:00
parent d82515336c
commit 08b389eb9b
4 changed files with 31 additions and 0 deletions

View File

@ -50,13 +50,35 @@
</div> </div>
<div v-else-if="generatedMessage"> <div v-else-if="generatedMessage">
<div> <div>
<ButtonStyled>
<button class="mb-2" @click="useSimpleEditor = !useSimpleEditor">
<template v-if="!useSimpleEditor">
<ToggleLeftIcon aria-hidden="true" />
Use simple mode
</template>
<template v-else>
<ToggleRightIcon aria-hidden="true" />
Use advanced mode
</template>
</button>
</ButtonStyled>
<MarkdownEditor <MarkdownEditor
v-if="!useSimpleEditor"
v-model="message" v-model="message"
:max-height="400" :max-height="400"
placeholder="No message generated." placeholder="No message generated."
:disabled="false" :disabled="false"
:heading-buttons="false" :heading-buttons="false"
/> />
<textarea
v-else
v-model="message"
type="text"
class="bg-bg-input h-[400px] w-full rounded-lg border border-solid border-divider px-3 py-2 font-mono text-base"
placeholder="No message generated."
autocomplete="off"
@input="persistState"
/>
</div> </div>
</div> </div>
<div v-else-if="isModpackPermissionsStage"> <div v-else-if="isModpackPermissionsStage">
@ -324,6 +346,8 @@ import {
CheckIcon, CheckIcon,
KeyboardIcon, KeyboardIcon,
EyeOffIcon, EyeOffIcon,
ToggleLeftIcon,
ToggleRightIcon,
} from "@modrinth/assets"; } from "@modrinth/assets";
import { import {
checklist, checklist,
@ -391,6 +415,7 @@ const isModpackPermissionsStage = computed(() => {
return currentStageObj.value.id === "modpack-permissions"; return currentStageObj.value.id === "modpack-permissions";
}); });
const useSimpleEditor = ref(false);
const message = ref(""); const message = ref("");
const generatedMessage = ref(false); const generatedMessage = ref(false);
const loadingMessage = ref(false); const loadingMessage = ref(false);

View File

@ -169,6 +169,8 @@ import _TerminalSquareIcon from './icons/terminal-square.svg?component'
import _TestIcon from './icons/test.svg?component' import _TestIcon from './icons/test.svg?component'
import _TextQuoteIcon from './icons/text-quote.svg?component' import _TextQuoteIcon from './icons/text-quote.svg?component'
import _TimerIcon from './icons/timer.svg?component' import _TimerIcon from './icons/timer.svg?component'
import _ToggleLeftIcon from './icons/toggle-left.svg?component'
import _ToggleRightIcon from './icons/toggle-right.svg?component'
import _TransferIcon from './icons/transfer.svg?component' import _TransferIcon from './icons/transfer.svg?component'
import _TrashIcon from './icons/trash.svg?component' import _TrashIcon from './icons/trash.svg?component'
import _TriangleAlertIcon from './icons/triangle-alert.svg?component' import _TriangleAlertIcon from './icons/triangle-alert.svg?component'
@ -362,6 +364,8 @@ export const TerminalSquareIcon = _TerminalSquareIcon
export const TestIcon = _TestIcon export const TestIcon = _TestIcon
export const TextQuoteIcon = _TextQuoteIcon export const TextQuoteIcon = _TextQuoteIcon
export const TimerIcon = _TimerIcon export const TimerIcon = _TimerIcon
export const ToggleLeftIcon = _ToggleLeftIcon
export const ToggleRightIcon = _ToggleRightIcon
export const TransferIcon = _TransferIcon export const TransferIcon = _TransferIcon
export const TrashIcon = _TrashIcon export const TrashIcon = _TrashIcon
export const TriangleAlertIcon = _TriangleAlertIcon export const TriangleAlertIcon = _TriangleAlertIcon

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-toggle-left-icon lucide-toggle-left"><circle cx="9" cy="12" r="3"/><rect width="20" height="14" x="2" y="5" rx="7"/></svg>

After

Width:  |  Height:  |  Size: 324 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-toggle-right-icon lucide-toggle-right"><circle cx="15" cy="12" r="3"/><rect width="20" height="14" x="2" y="5" rx="7"/></svg>

After

Width:  |  Height:  |  Size: 327 B