fix serach

This commit is contained in:
2025-06-19 17:30:12 +02:00
parent 25f63d30be
commit fecbc81cd8
7 changed files with 1372 additions and 1625 deletions

2942
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -43,7 +43,7 @@
</div> </div>
<div <div
v-else v-else
class="flex justify-center items-center px-20 flex-1 bg-red-100" class="flex justify-center items-center px-20 flex-1"
> >
<UiIconNoData class="text-primary size-24 shrink-0" /> <UiIconNoData class="text-primary size-24 shrink-0" />
<!-- <p>{{ t('empty') }}</p> --> <!-- <p>{{ t('empty') }}</p> -->

View File

@ -25,7 +25,7 @@
class="ps-2" class="ps-2"
ref="inputRef" ref="inputRef"
v-model="input" v-model="input"
@keyup="(e) => $emit('keyup', e)" @keyup="(e:KeyboardEvent) => $emit('keyup', e)"
/> />
<label <label
:for="id" :for="id"
@ -42,10 +42,15 @@
/> />
</div> </div>
<slot <UiButton
name="append" v-if="withClearButton"
class="h-auto" class="btn-outline btn-square"
/> @click="input = ''"
>
<Icon name="mdi:close" />
</UiButton>
<slot name="append" />
<UiButton <UiButton
v-if="withCopyButton" v-if="withCopyButton"
@ -133,6 +138,7 @@ const props = defineProps({
rules: Object as PropType<ZodSchema>, rules: Object as PropType<ZodSchema>,
checkInput: Boolean, checkInput: Boolean,
withCopyButton: Boolean, withCopyButton: Boolean,
withClearButton: Boolean,
autofocus: Boolean, autofocus: Boolean,
read_only: Boolean, read_only: Boolean,
}) })
@ -170,6 +176,12 @@ const checkInput = () => {
const { copy, copied } = useClipboard() const { copy, copied } = useClipboard()
const { t } = useI18n() const { t } = useI18n()
onKeyStroke('a', (event) => {
if (event.ctrlKey) {
event.stopImmediatePropagation()
}
})
</script> </script>
<i18n lang="yaml"> <i18n lang="yaml">

View File

@ -6,10 +6,10 @@ export default defineI18nConfig(() => {
legacy: false, legacy: false,
messages: { messages: {
de: { de: {
passwordActionMenu: passwordActionMenuDe, //passwordActionMenu: passwordActionMenuDe,
}, },
en: { en: {
passwordActionMenu: passwordActionMenuEn, //passwordActionMenu: passwordActionMenuEn,
}, },
}, },
} }

View File

@ -42,16 +42,9 @@
<UiInput <UiInput
v-model="search" v-model="search"
:label="t('search.label')" :label="t('search.label')"
class="" with-clear-button
prepend-icon="mdi:magnify"
> >
<template #append>
<UiButton class="btn-square btn-primary">
<Icon
name="mdi:magnify"
class="size-full p-1"
/>
</UiButton>
</template>
</UiInput> </UiInput>
</div> </div>
<HaexMenuNotifications /> <HaexMenuNotifications />

View File

@ -51,9 +51,7 @@ definePageMeta({
const { t } = useI18n() const { t } = useI18n()
const { currentGroup, inTrashGroup, currentGroupId } = storeToRefs( const { inTrashGroup, currentGroupId } = storeToRefs(usePasswordGroupStore())
usePasswordGroupStore(),
)
const group = ref<SelectHaexPasswordsGroups>({ const group = ref<SelectHaexPasswordsGroups>({
color: null, color: null,
@ -99,7 +97,7 @@ watch(
{ immediate: true }, { immediate: true },
) */ ) */
const read_only = ref(true) const read_only = ref(false)
const hasChanges = computed( const hasChanges = computed(
() => JSON.stringify(group.value) !== original.value, () => JSON.stringify(group.value) !== original.value,

View File

@ -18,7 +18,10 @@ export const usePasswordsActionMenuStore = defineStore(
icon: 'mdi:folder-plus-outline', icon: 'mdi:folder-plus-outline',
to: { to: {
name: 'passwordGroupCreate', name: 'passwordGroupCreate',
params: { groupId: usePasswordGroupStore().currentGroupId }, params: {
...useRouter().currentRoute.value.params,
groupId: usePasswordGroupStore().currentGroupId,
},
query: { query: {
...useRouter().currentRoute.value.query, ...useRouter().currentRoute.value.query,
}, },
@ -29,7 +32,10 @@ export const usePasswordsActionMenuStore = defineStore(
icon: 'mdi:key-plus', icon: 'mdi:key-plus',
to: { to: {
name: 'passwordItemCreate', name: 'passwordItemCreate',
params: { groupId: usePasswordGroupStore().currentGroupId }, params: {
...useRouter().currentRoute.value.params,
groupId: usePasswordGroupStore().currentGroupId,
},
query: { query: {
...useRouter().currentRoute.value.query, ...useRouter().currentRoute.value.query,
}, },