{"version":3,"file":"NumberInput.cjs","sources":["../../../../src/components/configuration/NumberInput.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { Input } from '@grafana/ui';\n\ntype NumberInputProps = {\n  value: number;\n  defaultValue: number;\n  onChange: (value: number) => void;\n  width: number;\n};\n\nexport function NumberInput({ value, defaultValue, onChange, width }: NumberInputProps) {\n  const [isEmpty, setIsEmpty] = useState(false);\n  return (\n    <Input\n      type=\"number\"\n      placeholder={String(defaultValue)}\n      value={isEmpty ? '' : value}\n      onChange={(e) => {\n        if (e.currentTarget.value?.trim() === '') {\n          setIsEmpty(true);\n          onChange(defaultValue);\n        } else {\n          setIsEmpty(false);\n          const newVal = Number(e.currentTarget.value);\n          if (!Number.isNaN(newVal)) {\n            onChange(newVal);\n          }\n        }\n      }}\n      width={width}\n    />\n  );\n}\n"],"names":["useState","jsx","Input"],"mappings":";;;;;;;;;AAWO,SAAS,YAAY,EAAE,KAAA,EAAO,YAAA,EAAc,QAAA,EAAU,OAAM,EAAqB;AACtF,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAIA,eAAS,KAAK,CAAA;AAC5C,EAAA,uBACEC,cAAA;AAAA,IAACC,QAAA;AAAA,IAAA;AAAA,MACC,IAAA,EAAK,QAAA;AAAA,MACL,WAAA,EAAa,OAAO,YAAY,CAAA;AAAA,MAChC,KAAA,EAAO,UAAU,EAAA,GAAK,KAAA;AAAA,MACtB,QAAA,EAAU,CAAC,CAAA,KAAM;AAlBvB,QAAA,IAAA,EAAA;AAmBQ,QAAA,IAAA,CAAA,CAAI,EAAA,GAAA,CAAA,CAAE,aAAA,CAAc,KAAA,KAAhB,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAuB,YAAW,EAAA,EAAI;AACxC,UAAA,UAAA,CAAW,IAAI,CAAA;AACf,UAAA,QAAA,CAAS,YAAY,CAAA;AAAA,QACvB,CAAA,MAAO;AACL,UAAA,UAAA,CAAW,KAAK,CAAA;AAChB,UAAA,MAAM,MAAA,GAAS,MAAA,CAAO,CAAA,CAAE,aAAA,CAAc,KAAK,CAAA;AAC3C,UAAA,IAAI,CAAC,MAAA,CAAO,KAAA,CAAM,MAAM,CAAA,EAAG;AACzB,YAAA,QAAA,CAAS,MAAM,CAAA;AAAA,UACjB;AAAA,QACF;AAAA,MACF,CAAA;AAAA,MACA;AAAA;AAAA,GACF;AAEJ;;;;"}