V13-FE-005: restore direct UI components and harden grid provider
This commit is contained in:
@@ -1,24 +1,24 @@
|
||||
<script setup lang="ts">
|
||||
import { useUiAdapter } from '../adapter/useUiAdapter'
|
||||
import InputText from 'primevue/inputtext'
|
||||
import FieldShell from './FieldShell.vue'
|
||||
import type { UiTextFieldType } from '../adapter/contracts'
|
||||
|
||||
const props = defineProps<{ modelValue: string; label: string; inputId?: string; disabled?: boolean; required?: boolean; error?: string; help?: string; placeholder?: string }>()
|
||||
const props = defineProps<{ modelValue: string; label: string; inputId?: string; type?: UiTextFieldType; disabled?: boolean; required?: boolean; error?: string; help?: string; placeholder?: string }>()
|
||||
const emit = defineEmits<{ 'update:modelValue': [value: string]; blur: [event: FocusEvent] }>()
|
||||
const adapter = useUiAdapter()
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<FieldShell :label="label" :input-id="inputId" :required="required" :error="error" :help="help" v-slot="field">
|
||||
<component
|
||||
:is="adapter.components.TextField"
|
||||
<InputText
|
||||
:input-id="field.inputId"
|
||||
:model-value="modelValue"
|
||||
:type="type"
|
||||
:disabled="disabled"
|
||||
:invalid="field.invalid"
|
||||
:placeholder="placeholder"
|
||||
:aria-describedby="field.describedBy"
|
||||
:aria-required="field.required || undefined"
|
||||
@update:model-value="emit('update:modelValue', $event)"
|
||||
@update:model-value="emit('update:modelValue', String($event ?? ''))"
|
||||
@blur="emit('blur', $event)"
|
||||
/>
|
||||
</FieldShell>
|
||||
|
||||
Reference in New Issue
Block a user