Number input

Number input is a form element that allows the user to enter a number. It provides a way to increase or decrease the value by using the plus and minus buttons.

Design system docs Examples Default number input
<dap-ds-number-input label="Number of children"></dap-ds-number-input>
Statuses
<dap-ds-stack direction="column">
  <dap-ds-number-input label="Disabled" disabled></dap-ds-number-input>
  <dap-ds-number-input label="Read only" value="8888" readonly></dap-ds-number-input>
  <dap-ds-number-input label="Success" status="success"></dap-ds-number-input>
  <dap-ds-number-input label="Error" status="error" label="Number" required feedback="wrong number" feedbackType="negative"></dap-ds-number-input>
</dap-ds-stack>
Sizes
<dap-ds-stack direction="column">
  <dap-ds-number-input
    label="XSmall"
    description="This is an extra small number input"
    size="xs"
    feedback="This is a feedback message"
    feedbacktype="negative"
  >
  </dap-ds-number-input>
  <dap-ds-number-input
    label="Small"
    description="This is a small number input"
    size="sm"
    feedback="This is a feedback message"
    feedbacktype="negative"
  >
  </dap-ds-number-input>
  <dap-ds-number-input
    label="Large"
    description="This is a large number input"
    size="lg"
    feedback="This is a feedback message"
    feedbacktype="negative"
  >
  </dap-ds-number-input>
</dap-ds-stack>
Thousand separator

Thousand separator is the character that separates the thousands in the number. Every country has a different thousand separator. In Hungary we use dot . as a thousand separator. This is very important to accessibility to set the correct thousand separator, because the screen reader will recognize the language of the current page and read the number with the correct thousand separator. Read more about digit grouping.

Do not use space as a thousand separator, because it is not accessible for screen readers.

<dap-ds-number-input
  label="Thousand separator"
  value="1234567"
  thousandSeparator=".">
</dap-ds-number-input>
Decimal separator

Decimal separator is the character that separates the integer part of the number from the decimal part. Every country has a different decimal separator. In Hungary we use comma as a decimal separator. This is very important to accessibility to set the correct decimal separator, because the screen reader will recognize the language of the current page and read the number with the correct decimal separator. Read more about decimal separators.

<dap-ds-number-input
  label="Decimal separator"
  value="12345678,123"
  decimalSeparator=","
  thousandSeparator="."
></dap-ds-number-input>
Decimal scale

Decimal scale is the number of decimal places that the input will show.

<dap-ds-number-input
  label="Decimal scale"
  value="12345678,123334"
  decimalSeparator=","
  decimalScale="2">
</dap-ds-number-input>
Disable negative

Disable negative is the state of the input that disables the user from entering negative numbers.

<dap-ds-number-input
  label="Disable negative"
  value="-12345678,777"
  allowNegative="false"
  decimalScale="2"
></dap-ds-number-input>
Disable decimal

Disable decimal is the state of the input that disables the user from entering decimal numbers.

<dap-ds-number-input
  label="Disable decimal"
  value="12345678,345"
  allowDecimal="false"
></dap-ds-number-input>
Hide controls

Hide controls is the state of the input that hides the increment and decrement buttons.

<dap-ds-number-input label="Hide controls" hideControls></dap-ds-number-input>
Importing
import { DapDSNumberInput } from 'dap-design-system/dist/dds'
Importing React
import { DapDSNumberInputReact } from 'dap-design-system/dist/react'
Attributes
PropertyTypeDefaultDescription
thousandSeparatorstring''The thousand separator of the input.
decimalSeparatorstring','The decimal separator of the input.
decimalScalenumberThe decimal scale of the input.
allowNegativestring'true'The allow negative state of the input.
allowDecimalstring'true'The allow decimal state of the input.
hideControlsbooleanfalseHides the increment and decrement buttons.
manualValueSetbooleantrue
labelstringThe label of the input.
placeholderstringThe placeholder of the input.
descriptionstringThe description of the input.
tooltipstringThe tooltip of the input.
tooltipPlacement'top', 'right' , 'bottom' , 'left'The tooltip placement of the input.
status'success', 'error'The status of the input. Can be success or error.
size'xs', 'sm' , 'sm'The size of the input. Default is sm. Can be sm or lg.
namestringThe name of the input.
valuestringThe value of the input.
disabledbooleanThe disabled state of the input. Default is false.
requiredbooleanThe required state of the input. Default is false.
readonlybooleanThe readonly state of the input. Default is false.
autofocusbooleanThe autofocus state of the input. Default is false.
minnumberThe minimum value of the number input.
maxnumberThe maximum value of the number input.
stepnumberThe step value of the number input.
feedbackstringThe feedback of the input.
feedbackType'negative', 'positive' , 'warning'The feedback type of the input. Can be negative, positive, or warning.
loadingbooleanThe loading state of the input. Default is false.
optionalbooleanThe optional state of the input.
optionalLabelstringThe optional label of the input.
subtlebooleanThe weight of the label. Default is false
disableEnterbooleanDisables the enter key from being used to submit the form.
Slots
NameDescription
feedback-iconThe custom icon of the feedback.
Events
Event NameDescriptionType
dds-changeFired when the input value changes.{value: string }
dds-inputFired when the input value changes.{value: string }
dds-keydownFired when a key is pressed down.{value: string, originalEvent: Event }
dds-blurFired when the input loses focus.{void }
dds-focusEmitted when the input gains focus.{void }
CSS Parts
Part NameDescription
postfixThe postfix of the input.
decrementThe decrement button of the input.
incrementThe increment button of the input.
CSS Custom Properties
Property NameDescription
--dds-input-heightThe height of the input. Default is var(--dds-spacing-1000).
--dds-input-paddingThe padding of the input. Default is var(--dds-spacing-300).
--dds-input-font-sizeThe font size of the input. Default is var(--dds-font-base).
--dds-input-border-colorThe border color of the input. Default is var(--dds-border-neutral-base).
--dds-input-background-colorThe background color of the input. Default is var(--dds-fields-background-default).
--dds-input-text-colorThe text color of the input. Default is var(--dds-text-neutral-base).
--dds-input-border-radiusThe border radius of the input. Default is var(--dds-radius-base).
--dds-input-border-widthThe border width of the input. Default is var(--dds-border-width-base).
--dds-input-disabled-backgroundThe background color of the disabled input. Default is var(--dds-fields-background-disabled).
--dds-input-disabled-textThe text color of the disabled input. Default is var(--dds-text-neutral-disabled).
--dds-input-readonly-backgroundThe background color of the readonly input. Default is var(--dds-fields-background-read-only).
--dds-input-readonly-textThe text color of the readonly input. Default is var(--dds-text-neutral-subtle).
--dds-input-success-borderThe border color of the success input. Default is var(--dds-border-positive-base).
--dds-input-error-borderThe border color of the error input. Default is var(--dds-border-negative-base).
--dds-input-addon-backgroundThe background color of the input addon. Default is var(--dds-background-ui-neutral-enabled).
--dds-input-addon-success-backgroundThe background color of the success input addon. Default is var(--dds-background-ui-positive-enabled).
--dds-input-addon-error-backgroundThe background color of the error input addon. Default is var(--dds-background-ui-negative-enabled).