{"version":3,"file":"numeric-input2.mjs","sources":["../../../../../../packages/components/numeric-input/src/numeric-input.ts"],"sourcesContent":["import { isNil } from 'lodash-unified'\nimport { useSizeProp } from '@bigin/hooks'\nimport { buildProps, isNumber } from '@bigin/utils'\nimport { CHANGE_EVENT, INPUT_EVENT, UPDATE_MODEL_EVENT } from '@bigin/constants'\nimport type { ExtractPropTypes } from 'vue'\nimport type NumericInput from './numeric-input.vue'\n\nexport const numericInputProps = buildProps({\n  id: {\n    type: String,\n    default: undefined,\n  },\n  step: {\n    type: Number,\n    default: 1,\n  },\n  stepStrictly: Boolean,\n  max: {\n    type: Number,\n    default: Number.POSITIVE_INFINITY,\n  },\n  min: {\n    type: Number,\n    default: Number.NEGATIVE_INFINITY,\n  },\n  modelValue: Number,\n  disabled: Boolean,\n  size: useSizeProp,\n  controls: {\n    type: Boolean,\n    default: true,\n  },\n  controlsPosition: {\n    type: String,\n    default: '',\n    values: ['', 'right'],\n  },\n  valueOnClear: {\n    type: [String, Number, null],\n    validator: (val: 'min' | 'max' | number | null) =>\n      val === null || isNumber(val) || ['min', 'max'].includes(val),\n    default: null,\n  },\n  name: String,\n  label: String,\n  placeholder: String,\n  precision: {\n    type: Number,\n    validator: (val: number) =>\n      val >= 0 && val === Number.parseInt(`${val}`, 10),\n  },\n  large: {\n    type: Boolean,\n    default: false,\n  },\n  small: {\n    type: Boolean,\n    default: false,\n  },\n} as const)\nexport type NumericInputProps = ExtractPropTypes<typeof numericInputProps>\n\nexport const numericInputEmits = {\n  [CHANGE_EVENT]: (prev: number | undefined, cur: number | undefined) =>\n    prev !== cur,\n  blur: (e: FocusEvent) => e instanceof FocusEvent,\n  focus: (e: FocusEvent) => e instanceof FocusEvent,\n  [INPUT_EVENT]: (val: number | null | undefined) =>\n    isNumber(val) || isNil(val),\n  [UPDATE_MODEL_EVENT]: (val: number | undefined) =>\n    isNumber(val) || isNil(val),\n}\nexport type NumericInputEmits = typeof numericInputEmits\n\nexport type NumericInputInstance = InstanceType<typeof NumericInput>\n"],"names":[],"mappings":";;;;;;;;AAOO,MAAM,oBAAoB,UAAW,CAAA;AAAA,EAC1C,EAAI,EAAA;AAAA,IACF,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,KAAA,CAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,CAAA;AAAA,GACX;AAAA,EACA,YAAc,EAAA,OAAA;AAAA,EACd,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,SAAS,MAAO,CAAA,iBAAA;AAAA,GAClB;AAAA,EACA,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,SAAS,MAAO,CAAA,iBAAA;AAAA,GAClB;AAAA,EACA,UAAY,EAAA,MAAA;AAAA,EACZ,QAAU,EAAA,OAAA;AAAA,EACV,IAAM,EAAA,WAAA;AAAA,EACN,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,gBAAkB,EAAA;AAAA,IAChB,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA,EAAA;AAAA,IACT,MAAA,EAAQ,CAAC,EAAA,EAAI,OAAO,CAAA;AAAA,GACtB;AAAA,EACA,YAAc,EAAA;AAAA,IACZ,IAAM,EAAA,CAAC,MAAQ,EAAA,MAAA,EAAQ,IAAI,CAAA;AAAA,IAC3B,SAAW,EAAA,CAAC,GACV,KAAA,GAAA,KAAQ,IAAQ,IAAA,QAAA,CAAS,GAAG,CAAA,IAAK,CAAC,KAAA,EAAO,KAAK,CAAA,CAAE,SAAS,GAAG,CAAA;AAAA,IAC9D,OAAS,EAAA,IAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA,MAAA;AAAA,EACN,KAAO,EAAA,MAAA;AAAA,EACP,WAAa,EAAA,MAAA;AAAA,EACb,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,MAAA;AAAA,IACN,SAAA,EAAW,CAAC,GAAA,KACV,GAAO,IAAA,CAAA,IAAK,QAAQ,MAAO,CAAA,QAAA,CAAS,CAAG,EAAA,GAAA,CAAA,CAAA,EAAO,EAAE,CAAA;AAAA,GACpD;AAAA,EACA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AAAA,EACA,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA,KAAA;AAAA,GACX;AACF,CAAU,EAAA;AAGH,MAAM,iBAAoB,GAAA;AAAA,EAC/B,CAAC,YAAA,GAAe,CAAC,IAAA,EAA0B,QACzC,IAAS,KAAA,GAAA;AAAA,EACX,IAAA,EAAM,CAAC,CAAA,KAAkB,CAAa,YAAA,UAAA;AAAA,EACtC,KAAA,EAAO,CAAC,CAAA,KAAkB,CAAa,YAAA,UAAA;AAAA,EACvC,CAAC,cAAc,CAAC,GAAA,KACd,SAAS,GAAG,CAAA,IAAK,MAAM,GAAG,CAAA;AAAA,EAC5B,CAAC,qBAAqB,CAAC,GAAA,KACrB,SAAS,GAAG,CAAA,IAAK,MAAM,GAAG,CAAA;AAC9B;;;;"}