Skip to content

Input Number

The input element with formatting and manipulating numbers.

Examples

Input Number

Code
vue
<script setup lang="ts">
import { ref } from 'vue'
import { BaseInputNumber } from '@point-hub/papp'

const form = ref({
  number: null
})
</script>

<template>
  <form @submit.prevent="">
    <component :is="BaseInputNumber" v-model="form.number" />
  </form>
</template>

Label

Code
vue
<script setup lang="ts">
import { ref } from 'vue'
import { BaseInputNumber } from '@point-hub/papp'

const form = ref({
  number1: null,
  number2: null
})
</script>

<template>
  <form @submit.prevent="">
    <component
      :is="BaseInputNumber"
      v-model="form.number1"
      label="Label"
      layout="horizontal"
      description="Horizontal Layout"
    />
    <component
      :is="BaseInputNumber"
      v-model="form.number2"
      label="Label"
      layout="vertical"
      description="Vertical Layout"
    />
  </form>
</template>

Border

Code
vue
<script setup lang="ts">
import { ref } from 'vue'
import { BaseInputNumber } from '@point-hub/papp'

const form = ref({
  number1: null,
  number2: null,
  number3: null
})
</script>

<template>
  <form @submit.prevent="">
    <component :is="BaseInputNumber" v-model="form.number1" label="Without Border" border="none" />
    <component :is="BaseInputNumber" v-model="form.number2" label="Simple Border" border="simple" />
    <component :is="BaseInputNumber" v-model="form.number3" label="Full Border" border="full" />
  </form>
</template>

Helper

Code
vue
<script setup lang="ts">
import { ref } from 'vue'
import { BaseInputNumber } from '@point-hub/papp'

const form = ref({
  number1: 0,
  number2: 0,
  number3: 0,
  number4: 0,
  number5: 0,
  number6: 10000
})

const errors = ref(['Error example'])
</script>

<template>
  <form @submit.prevent="">
    <component :is="BaseInputNumber" v-model="form.number1" label="Label" required />
    <component
      :is="BaseInputNumber"
      v-model="form.number2"
      label="Label"
      placeholder="Placeholder example"
    />
    <component
      :is="BaseInputNumber"
      v-model="form.number3"
      label="Label"
      description="Description example"
    />
    <component
      :is="BaseInputNumber"
      v-model="form.number4"
      label="Label"
      :helpers="['Helper example']"
    />
    <component
      :is="BaseInputNumber"
      v-model="form.number5"
      label="Label"
      v-model:errors="errors"
    />
    <component :is="BaseInputNumber" v-model="form.number6" label="Label" disabled />
  </form>
</template>

Input Number API

Types

ts
export type BaseInputNumberBorderType = 'none' | 'simple' | 'full'
export type BaseFormLayoutType = `horizontal` `vertical`

Props

NameTypeDefaultDescription
v-modelstringv-model is required.
v-model:errorsstring[]Input error message.
idstringInput id.
labelstringInput label.
descriptionstringInput description.
placeholderstringInput placeholder.
alignleft rightrightInput align.
borderBaseInputNumberBorderTypesimpleInput border.
layoutBaseFormLayoutTypeverticalInput layout.
decimalLengthnumber0Input decimal length.
autofocusbooleanfalseFocus input on page load.
requiredbooleanfalseif true input is required.
disabledbooleanfalseif true input is disabled.
helpersstring[]Input helper message.

Released under the MIT License.