propapier/app/components/Pp/FormInput.vue
webfussel 0133475e2a add: input mode
Add input mode for decimals on number fields
2025-05-10 13:48:39 +02:00

46 lines
913 B
Vue
Executable file

<template>
<div class="Input">
<div class="input-wrapper flex-col">
<input
v-model="text"
:type="type"
:id="id"
:step="step"
:min="min"
:max="max"
:required="required"
placeholder=" "
@blur="emit('blur')"
:inputmode="mode"
/>
<label :for="id">{{ label }}</label>
</div>
<span v-if="message">{{ message }}</span>
</div>
</template>
<script setup lang="ts">
type Props = {
type ?: 'text' | 'number'
max ?: number
min ?: number
step ?: number
required ?: boolean
message ?: string
label : string
id : string
mode ?: 'text' | 'email' | 'search' | 'tel' | 'url' | 'none' | 'numeric' | 'decimal'
}
const {
type = 'text',
required = false,
step = 0.01,
min = 1,
mode = 'text',
} = defineProps<Props>()
const emit = defineEmits(['blur'])
const text = defineModel()
</script>