{"version":3,"file":"PillsInput.cjs","sources":["../../../src/components/PillsInput/PillsInput.tsx"],"sourcesContent":["import { useRef } from 'react';\nimport { BoxProps, ElementProps, factory, Factory, StylesApiProps, useProps } from '../../core';\nimport { __BaseInputProps, __InputStylesNames } from '../Input';\nimport { InputBase } from '../InputBase';\nimport { PillsInputProvider } from './PillsInput.context';\nimport { PillsInputField } from './PillsInputField/PillsInputField';\n\nexport interface PillsInputProps\n  extends BoxProps,\n    __BaseInputProps,\n    StylesApiProps<PillsInputFactory>,\n    ElementProps<'div', 'size'> {\n  __stylesApiProps?: Record<string, any>;\n  __staticSelector?: string;\n  multiline?: boolean;\n}\n\nexport type PillsInputFactory = Factory<{\n  props: PillsInputProps;\n  ref: HTMLInputElement;\n  stylesNames: __InputStylesNames;\n  staticComponents: {\n    Field: typeof PillsInputField;\n  };\n}>;\n\nconst defaultProps: Partial<PillsInputProps> = {};\n\nexport const PillsInput = factory<PillsInputFactory>((_props, ref) => {\n  const props = useProps('PillsInput', defaultProps, _props);\n  const {\n    children,\n    onMouseDown,\n    onClick,\n    size,\n    disabled,\n    __staticSelector,\n    error,\n    variant,\n    ...others\n  } = props;\n\n  const fieldRef = useRef<HTMLInputElement>();\n\n  return (\n    <PillsInputProvider value={{ fieldRef, size: size!, disabled, hasError: !!error, variant }}>\n      <InputBase\n        size={size}\n        error={error}\n        variant={variant}\n        component=\"div\"\n        ref={ref}\n        onMouseDown={(event) => {\n          event.preventDefault();\n          onMouseDown?.(event);\n          fieldRef.current?.focus();\n        }}\n        onClick={(event) => {\n          event.preventDefault();\n          onClick?.(event);\n          fieldRef.current?.focus();\n        }}\n        {...others}\n        multiline\n        disabled={disabled}\n        __staticSelector={__staticSelector || 'PillsInput'}\n        withAria={false}\n      >\n        {children}\n      </InputBase>\n    </PillsInputProvider>\n  );\n});\n\nPillsInput.displayName = '@raikou/core/PillsInput';\nPillsInput.Field = PillsInputField;\n"],"names":["factory","useProps","useRef","jsx","PillsInputProvider","InputBase","PillsInputField"],"mappings":";;;;;;;;;;;;;;;AA0BA,MAAM,eAAyC,EAAC;AAEzC,MAAM,UAAa,GAAAA,eAAA,CAA2B,CAAC,MAAA,EAAQ,GAAQ,KAAA;AACpE,EAAA,MAAM,KAAQ,GAAAC,iBAAA,CAAS,YAAc,EAAA,YAAA,EAAc,MAAM,CAAA;AACzD,EAAM,MAAA;AAAA,IACJ,QAAA;AAAA,IACA,WAAA;AAAA,IACA,OAAA;AAAA,IACA,IAAA;AAAA,IACA,QAAA;AAAA,IACA,gBAAA;AAAA,IACA,KAAA;AAAA,IACA,OAAA;AAAA,IACA,GAAG;AAAA,GACD,GAAA,KAAA;AAEJ,EAAA,MAAM,WAAWC,YAAyB,EAAA;AAE1C,EAAA,uBACGC,cAAA,CAAAC,qCAAA,EAAA,EAAmB,KAAO,EAAA,EAAE,QAAU,EAAA,IAAA,EAAa,QAAU,EAAA,QAAA,EAAU,CAAC,CAAC,KAAO,EAAA,OAAA,EAC/E,EAAA,QAAA,kBAAAD,cAAA;AAAA,IAACE,mBAAA;AAAA,IAAA;AAAA,MACC,IAAA;AAAA,MACA,KAAA;AAAA,MACA,OAAA;AAAA,MACA,SAAU,EAAA,KAAA;AAAA,MACV,GAAA;AAAA,MACA,WAAA,EAAa,CAAC,KAAU,KAAA;AACtB,QAAA,KAAA,CAAM,cAAe,EAAA;AACrB,QAAA,WAAA,GAAc,KAAK,CAAA;AACnB,QAAA,QAAA,CAAS,SAAS,KAAM,EAAA;AAAA,OAC1B;AAAA,MACA,OAAA,EAAS,CAAC,KAAU,KAAA;AAClB,QAAA,KAAA,CAAM,cAAe,EAAA;AACrB,QAAA,OAAA,GAAU,KAAK,CAAA;AACf,QAAA,QAAA,CAAS,SAAS,KAAM,EAAA;AAAA,OAC1B;AAAA,MACC,GAAG,MAAA;AAAA,MACJ,SAAS,EAAA,IAAA;AAAA,MACT,QAAA;AAAA,MACA,kBAAkB,gBAAoB,IAAA,YAAA;AAAA,MACtC,QAAU,EAAA,KAAA;AAAA,MAET;AAAA;AAAA,GAEL,EAAA,CAAA;AAEJ,CAAC;AAED,UAAA,CAAW,WAAc,GAAA,yBAAA;AACzB,UAAA,CAAW,KAAQ,GAAAC,+BAAA;;;;"}