aboutsummaryrefslogtreecommitdiff
path: root/front-end/src
diff options
context:
space:
mode:
Diffstat (limited to 'front-end/src')
-rw-r--r--front-end/src/App.vue2
-rw-r--r--front-end/src/components/Login.vue1
-rw-r--r--front-end/src/components/Login/UserPass.vue5
-rw-r--r--front-end/src/components/global/ConfirmPrompt.vue13
-rw-r--r--front-end/src/components/global/Dialog.vue12
-rw-r--r--front-end/src/components/global/PasswordPrompt.vue12
-rw-r--r--front-end/src/store/bookmarks.ts12
7 files changed, 14 insertions, 43 deletions
diff --git a/front-end/src/App.vue b/front-end/src/App.vue
index a0d1416..f63f9ca 100644
--- a/front-end/src/App.vue
+++ b/front-end/src/App.vue
@@ -6,8 +6,8 @@ import { apiCall } from '@vnuge/vnlib.browser';
import { isEqual } from 'lodash-es';
import { useDark } from '@vueuse/core';
import SideMenuItem from './components/SideMenuItem.vue';
-import Bookmarks from './components/Bookmarks.vue';
import BottomMenuItem from './components/BottomMenuItem.vue';
+const Bookmarks = defineAsyncComponent(() => import('./components/Bookmarks.vue'));
const Settings = defineAsyncComponent(() => import('./components/Settings.vue'));
const Confirm = defineAsyncComponent(() => import('./components/global/ConfirmPrompt.vue'));
const Alerts = defineAsyncComponent(() => import('./components/Alerts.vue'));
diff --git a/front-end/src/components/Login.vue b/front-end/src/components/Login.vue
index 7de86cb..eeda1ba 100644
--- a/front-end/src/components/Login.vue
+++ b/front-end/src/components/Login.vue
@@ -102,7 +102,6 @@ const logout = () => {
}
}
-
button.btn{
@apply w-full focus:ring-4 focus:outline-none font-medium rounded text-sm px-5 py-2.5 text-center;
@apply text-white bg-blue-600 hover:bg-blue-700 focus:ring-blue-300 dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800;
diff --git a/front-end/src/components/Login/UserPass.vue b/front-end/src/components/Login/UserPass.vue
index b25a335..9d72d08 100644
--- a/front-end/src/components/Login/UserPass.vue
+++ b/front-end/src/components/Login/UserPass.vue
@@ -1,5 +1,5 @@
<script setup lang="ts">
-import { ref, shallowRef, reactive, defineAsyncComponent } from 'vue'
+import { ref, shallowRef, reactive } from 'vue'
import { useTimeoutFn, set } from '@vueuse/core'
import { useVuelidate } from '@vuelidate/core'
import { isEqual } from 'lodash-es'
@@ -8,7 +8,8 @@ import {
useVuelidateWrapper, useMfaLogin, totpMfaProcessor, IMfaFlowContinuiation, MfaMethod,
apiCall, useMessage, useWait, debugLog, WebMessage
} from '@vnuge/vnlib.browser'
-const OptInput = defineAsyncComponent(() => import('../global/OtpInput.vue'))
+
+import OptInput from '../global/OtpInput.vue'//So small it does not need to be async
const { setMessage } = useMessage();
const { waiting } = useWait();
diff --git a/front-end/src/components/global/ConfirmPrompt.vue b/front-end/src/components/global/ConfirmPrompt.vue
index c8dc944..24d3b9c 100644
--- a/front-end/src/components/global/ConfirmPrompt.vue
+++ b/front-end/src/components/global/ConfirmPrompt.vue
@@ -22,7 +22,6 @@ onClickOutside(dialog, () => isRevealed.value ? cancel() : null)
//Set message on reveal
onReveal(m => message.value = defaultTo(m, {}));
-
</script>
<template>
<!-- Main modal -->
@@ -52,14 +51,4 @@ onReveal(m => message.value = defaultTo(m, {}));
</template>
</Dialog>
-</template>
-
-<style scoped lang="scss">
-.modal-entry{
- @apply hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full;
-}
-
-.modal-content-container{
- @apply text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white;
-}
-</style> \ No newline at end of file
+</template> \ No newline at end of file
diff --git a/front-end/src/components/global/Dialog.vue b/front-end/src/components/global/Dialog.vue
index 949e750..a27d5ee 100644
--- a/front-end/src/components/global/Dialog.vue
+++ b/front-end/src/components/global/Dialog.vue
@@ -48,14 +48,4 @@ onClickOutside(dialog, () => get(open) ? cancel() : noop())
</div>
</div>
</Dialog>
-</template>
-
-<style scoped lang="scss">
-.modal-entry {
- @apply hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full;
-}
-
-.modal-content-container {
- @apply text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white;
-}
-</style> \ No newline at end of file
+</template> \ No newline at end of file
diff --git a/front-end/src/components/global/PasswordPrompt.vue b/front-end/src/components/global/PasswordPrompt.vue
index a9a5fca..d638c71 100644
--- a/front-end/src/components/global/PasswordPrompt.vue
+++ b/front-end/src/components/global/PasswordPrompt.vue
@@ -105,14 +105,4 @@ onReveal(m => message.value = defaultTo(m, {}));
</template>
</Dialog>
-</template>
-
-<style scoped lang="scss">
-.modal-entry{
- @apply hidden overflow-y-auto overflow-x-hidden fixed top-0 right-0 left-0 z-50 justify-center items-center w-full md:inset-0 h-[calc(100%-1rem)] max-h-full;
-}
-
-.modal-content-container{
- @apply text-gray-400 bg-transparent hover:bg-gray-200 hover:text-gray-900 rounded-lg text-sm w-8 h-8 ms-auto inline-flex justify-center items-center dark:hover:bg-gray-600 dark:hover:text-white;
-}
-</style> \ No newline at end of file
+</template> \ No newline at end of file
diff --git a/front-end/src/store/bookmarks.ts b/front-end/src/store/bookmarks.ts
index a49937b..b6430f7 100644
--- a/front-end/src/store/bookmarks.ts
+++ b/front-end/src/store/bookmarks.ts
@@ -218,15 +218,17 @@ export const bookmarkPlugin = (bookmarkEndpoint: MaybeRef<string>): PiniaPlugin
}
//Update the total bookmarks
- apiCall(async () => totalBookmarks.value = await bookmarkApi.count())
- apiCall(async () => allTags.value = await bookmarkApi.getTags())
+ apiCall(async () => {
+ allTags.value = await bookmarkApi.getTags()
+ totalBookmarks.value = await bookmarkApi.count()
+ })
})
//Watch for serach query changes
- watchDebounced([currentPage, currentPageSize, totalBookmarks, tags, query, allTags],
- ([ page, pageSize, _, tags, query ]) => {
+ watchDebounced([currentPage, currentPageSize, tags, query, allTags],
+ ([ page, pageSize, tags, query ]) => {
apiCall(async () => bookmarks.value = await bookmarkApi.list(page, pageSize, { tags, query }))
- }, { debounce: 10 })
+ }, { debounce: 50 })
//Watch for page changes and scroll to top
watch([currentPage], () => window.scrollTo({ top: 0, behavior: 'smooth' }))