# `m-pincode`

A pincode input is a specialized input field used to enter short numeric codes, such as verification codes, security PINs, or authentication tokens. It typically separates each digit into individual fields to improve readability and ease of entry. This component is commonly used in two-factor authentication (2FA), password recovery, and secure access flows, ensuring a structured and user-friendly experience.

## Props

| Name | Description | Type | Default |
|------|-------------|------|---------|
| `id*` | A unique identifier for the pincode element, used to associate the label with the form element. | `string` |   |
| `length` | The number of input displayed in the pincode element. | `4` `5` `6` | `6` |
| `name` | The name attribute for the pincode element, typically used for form submission. | `string` |   |
| `value` | The current value of the pincode field. | `string` `number` | `$bindable()` |
| `isinvalid` | If `true`, applies an invalid state to the pincode. | `boolean` |   |
| `disabled` | If `true`, disables the pincode, making it non-interactive. | `boolean` |   |
| `readonly` | If `true`, the pincode is read-only (cannot be edited). | `boolean` |   |
| `onInput` | Callback fired when the pincode value changes. | `(detail: { value: string }) => void` |   |

## Events

| Name | Description | Type |
|------|------|-------------|
| `input` | Emits when the pincode value changes. | `CustomEvent<{ value: string }>` |

