Pattern not checked when using input type number and inputmode numeric

Hi there,

I am using ListInput and want the user to be allowed to input only numbers.
0, 01 or 001 shall be not allowed.

I have a pattern check as seen here:

<List strongIos dividersIos>
  <ListInput
    type='number'
    inputmode='numeric'
    placeholder="Enter number of legs"
    onInput={e => updateLegs(e.target.value)}
    errorMessage='0 is not possible'
    min={"1"}
    validate="true"
    pattern="[1-9][0-9]*"
  />
</List>

With that code it is not allowing 0, but allowing 01 or 001.

If I change the input to text, then it works, but the user can input any characters when using my app on pc.