Files
simrsx-fe/app/components/pub/custom-ui/nav-header/search.vue
T
Khafid Prayoga 6ad99d45f2 Fix/linter (#10)
* fix(style): formatting inconsistencies across codebase

- Remove trailing semicolons from TypeScript imports
- Fix Vue template indentation and line breaks
- Standardize component attribute formatting
- Remove unnecessary empty lines
- Reorder import statements for consistency

* chore: update import path and add editorconfig

Update SidebarNavLink import path to match new component structure and add standard editorconfig for consistent code formatting
2025-08-27 13:06:40 +07:00

43 lines
1.1 KiB
Vue

<script setup lang="ts">
import type { HeaderPrep, RefSearchNav } from '~/components/pub/custom-ui/data/types'
const props = defineProps<{
prep: HeaderPrep
refSearchNav: RefSearchNav
}>()
function emitSearchNavClick() {
props.refSearchNav.onClick()
}
function onInput(event: Event) {
props.refSearchNav.onInput((event.target as HTMLInputElement).value)
}
function btnClick() {
props.prep?.addNav?.onClick?.()
}
</script>
<template>
<header>
<div class="flex items-center">
<div class="ml-3 text-lg text-gray-900">
<Input
type="text"
placeholder="Search"
class="w-full rounded-md border bg-white px-4 py-2 text-gray-900 sm:text-sm"
@click="emitSearchNavClick"
@input="onInput"
/>
</div>
<div v-if="prep.addNav" class="m-2 flex items-center">
<Button size="md" class="rounded-md border border-gray-300 px-4 py-2 text-white sm:text-sm" @click="btnClick">
<Icon name="i-lucide-plus" class="mr-2 h-4 w-4 align-middle" />
{{ prep.addNav.label }}
</Button>
</div>
</div>
</header>
</template>