Refactoring Document storage (#5)

- Major refactoring that makes Doc a class with properties
- Data made only shallow reactive, for a good speedup of initial load
- Minor bugfixes and UX improvements along the way
- Fixed handling of hash and question marks in URLs (was confusing Vue Router)
- Search made stricter to find good results (not ignore all punctuation)

Reviewed-on: #5
This commit is contained in:
Leo Vasanko
2023-11-13 17:52:57 +00:00
parent dc4bb494f3
commit 41e8c78ecd
15 changed files with 141 additions and 248 deletions

View File

@@ -12,7 +12,7 @@
</template>
<script setup lang="ts">
import type { Document } from '@/repositories/Document'
import { Doc } from '@/repositories/Document'
import { ref, onMounted, nextTick } from 'vue'
const input = ref<HTMLInputElement | null>(null)
@@ -28,8 +28,8 @@ onMounted(() => {
})
const props = defineProps<{
doc: Document
rename: (doc: Document, newName: string) => void
doc: Doc
rename: (doc: Doc, newName: string) => void
exit: () => void
}>()