This commit is contained in:
Timothy J. Baek 2024-06-10 17:52:12 -07:00
parent c2e6e44714
commit c5ed3452d2
2 changed files with 42 additions and 15 deletions

View File

@ -26,7 +26,6 @@
export const formatPythonCodeHandler = async () => { export const formatPythonCodeHandler = async () => {
if (codeEditor) { if (codeEditor) {
console.log('formatPythonCodeHandler');
const res = await formatPythonCode(value).catch((error) => { const res = await formatPythonCode(value).catch((error) => {
toast.error(error); toast.error(error);
return null; return null;
@ -111,12 +110,17 @@
// Add a keyboard shortcut to format the code when Ctrl/Cmd + S is pressed // Add a keyboard shortcut to format the code when Ctrl/Cmd + S is pressed
// Override the default browser save functionality // Override the default browser save functionality
const handleSave = (e) => { const handleSave = async (e) => {
if ((e.ctrlKey || e.metaKey) && e.key === 's') { if ((e.ctrlKey || e.metaKey) && e.key === 's') {
e.preventDefault(); e.preventDefault();
formatPythonCodeHandler(); const res = await formatPythonCodeHandler().catch((error) => {
return null;
});
if (res) {
dispatch('save'); dispatch('save');
} }
}
}; };
document.addEventListener('keydown', handleSave); document.addEventListener('keydown', handleSave);

View File

@ -7,6 +7,8 @@
let loading = false; let loading = false;
let name = '';
let codeEditor; let codeEditor;
const submitHandler = async () => { const submitHandler = async () => {
@ -22,10 +24,30 @@
<div class=" flex flex-col justify-between w-full overflow-y-auto h-full"> <div class=" flex flex-col justify-between w-full overflow-y-auto h-full">
<div class="mx-auto w-full md:px-0 h-full"> <div class="mx-auto w-full md:px-0 h-full">
<div class=" flex flex-col max-h-[100dvh] h-full"> <div class=" flex flex-col max-h-[100dvh] h-full">
<div class="mb-2.5 flex-1 overflow-auto h-0 rounded-lg"> <div class="">
<div class="flex justify-between items-center">
<div class=" text-lg font-semibold self-center">{$i18n.t('Tools')}</div>
</div>
</div>
<hr class=" dark:border-gray-850 my-2" />
<div class="flex flex-col flex-1 overflow-auto h-0 rounded-lg">
<div class="w-full mb-2">
<!-- Toolkit Name Input -->
<input
class="w-full px-3 py-2 text-sm font-medium bg-gray-100 dark:bg-gray-850 dark:text-gray-200 rounded-lg outline-none"
type="text"
placeholder="Toolkit Name (e.g. my_toolkit)"
bind:value={name}
/>
</div>
<div class="mb-2 flex-1 overflow-auto h-0 rounded-lg">
<CodeEditor bind:this={codeEditor} /> <CodeEditor bind:this={codeEditor} />
</div> </div>
<div class="pb-3">
<div class="pb-3 flex justify-end">
<button <button
class="px-3 py-1.5 text-sm font-medium bg-emerald-600 hover:bg-emerald-700 text-gray-50 transition rounded-lg" class="px-3 py-1.5 text-sm font-medium bg-emerald-600 hover:bg-emerald-700 text-gray-50 transition rounded-lg"
on:click={() => { on:click={() => {
@ -37,4 +59,5 @@
</div> </div>
</div> </div>
</div> </div>
</div>
</div> </div>