Skip to content

Commit cb981ae

Browse files
committed
#6: cleaning up some code, adding shortcuts for history panel mimicing vscode's sidebar
1 parent fbc66a8 commit cb981ae

File tree

4 files changed

+24
-38
lines changed

4 files changed

+24
-38
lines changed

src/components/YvRepl.vue

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -21,21 +21,27 @@ useIntervalFn(() => {
2121
</script>
2222

2323
<template>
24-
<Repl
25-
:editor="Monaco"
26-
:show-compile-output="false"
27-
:show-import-map="false"
28-
:show-ts-config="false"
29-
:theme="settings.theme"
30-
:layout="settings.layout"
31-
:editor-options="{
32-
autoSaveText: false,
33-
}"
34-
:preview-theme="true"
35-
:store="fm.replStore"
24+
<div
25+
class="yv-repl"
26+
w-full h-full
3627
@keydown.ctrl.s.prevent="fm.saveSnapshot({ type: 'manual', message: 'Manually saved' })"
3728
@keydown.meta.s.capture.prevent="fm.saveSnapshot({ type: 'manual', message: 'Manually saved' })"
38-
@keydown.ctrl.shift.h.prevent="fm.isDrawerOpen = true"
39-
@keydown.meta.shift.h.prevent="fm.isDrawerOpen = true"
40-
/>
29+
@keydown.meta.b="fm.isDrawerOpen = !fm.isDrawerOpen"
30+
@keydown.ctrl.b.capture.prevent.stop="fm.isDrawerOpen = !fm.isDrawerOpen"
31+
>
32+
<Repl
33+
:editor="Monaco"
34+
:show-compile-output="false"
35+
:show-import-map="false"
36+
:show-ts-config="false"
37+
:theme="settings.theme"
38+
:layout="settings.layout"
39+
:editor-options="{
40+
autoSaveText: false,
41+
}"
42+
:preview-theme="true"
43+
:store="fm.replStore"
44+
@update:model-value="() => { console.log('updated the contents of the editor in the repl') }"
45+
/>
46+
</div>
4147
</template>

src/components/toasts/YvToasts.vue

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,9 +168,10 @@ const hiddenCount = computed(() => {
168168
:key="activeToast.id"
169169
sc-toast-base bg="opacity-90 background"
170170
flex="~ items-center gap-3"
171-
p-2
171+
p-2 cursor-pointer select-none
172+
hover="opacity-100 scale-105"
172173
transition="transition-all duration-200 ease-in-out"
173-
class="border rounded-lg cursor-pointer pointer-events-auto select-none hover:opacity-100 hover:scale-103 active:scale-98"
174+
class="border rounded-lg pointer-events-auto active:scale-98"
174175
:class="getToastClasses(activeToast.type || 'info')"
175176
@click="handleToastClick(activeToast.id)"
176177
@mouseenter="pauseAutoDissmiss(activeToast.id)"

src/composables/useFileManagerStore.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import { snapshots } from '@/db/snapshots';
1515
export const useFileManagerStore = defineStore('file-manager', () => {
1616
const currentSession = ref<Session>();
1717
const replStore = useStore();
18-
const errorMessage = ref('');
1918
const isDrawerOpen = ref(false);
2019

2120
const sessionList = ref<Session[]>([]);
@@ -57,7 +56,6 @@ export const useFileManagerStore = defineStore('file-manager', () => {
5756
// toast.dismissAll();
5857

5958
console.error('[yehyecoa-vue]: Server reported an issue:', error);
60-
errorMessage.value = error;
6159
toast.error('Error', {
6260
description: error,
6361
duration: Infinity,
@@ -69,7 +67,6 @@ export const useFileManagerStore = defineStore('file-manager', () => {
6967
replStore.setFiles(files);
7068

7169
if (lessonName) {
72-
errorMessage.value = '';
7370
// only create if there is no session with the same name
7471
const session = await sessions.getByName(lessonName);
7572
if (session) {
@@ -166,7 +163,6 @@ export const useFileManagerStore = defineStore('file-manager', () => {
166163

167164
sessionList,
168165

169-
errorMessage,
170166
};
171167
});
172168

vite.config.ts

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -24,22 +24,5 @@ export default defineConfig({
2424
inlineDynamicImports: false,
2525
},
2626
},
27-
// terserOptions: {
28-
// compress: {
29-
// drop_console: false,
30-
// drop_debugger: true,
31-
// passes: 2,
32-
// pure_funcs: ['console.log'],
33-
// },
34-
// mangle: true,
35-
// format: {
36-
// comments: false,
37-
// },
38-
// },
39-
},
40-
// This is key - force dependency optimization
41-
optimizeDeps: {
42-
include: ['@vue/repl', '@vue/repl/monaco-editor'],
43-
force: true,
4427
},
4528
});

0 commit comments

Comments
 (0)