{"version":3,"file":"IconButton-d0525bfd.js","sources":["../../../app/javascript/components_shared/atoms/IconButton.tsx"],"sourcesContent":["import React, { forwardRef, MouseEventHandler, Ref } from 'react'\n\nimport './IconButton.scss'\nimport classNames from 'classnames'\n\ninterface Props {\n id?: string\n family: 'solid' | 'regular' | 'light' | 'thin' | 'duotone' // FontAwesome v6 font family\n type?: 'button' | 'submit' | 'reset'\n icon: string // FontAwesome v6 icon name (\"magnifying-glass\", ...)\n size?: 'md' | 'lg'\n title?: string\n className?: string\n selected?: boolean\n onClick?: MouseEventHandler\n disabled?: boolean\n}\n\n/**\n * A plain button which only contains a FontAwesome icon.\n * The size of the button is determined by the inherited font size by default.\n * @constructor\n */\nfunction IconButton({\n family, icon, size = 'md', className, title, onClick, id, selected, disabled, type = 'button',\n}: Props, ref: Ref): JSX.Element {\n const classes = classNames(`IconButton IconButton--${size}`, className, {\n 'IconButton--selected': selected,\n })\n return (\n \n \n \n )\n}\n\nexport default forwardRef(IconButton)\n"],"names":["IconButton","family","icon","size","className","title","onClick","id","selected","disabled","type","ref","classes","classNames","React","forwardRef"],"mappings":"uGAuBA,SAASA,EAAW,CAClB,OAAAC,EAAQ,KAAAC,EAAM,KAAAC,EAAO,KAAM,UAAAC,EAAW,MAAAC,EAAO,QAAAC,EAAS,GAAAC,EAAI,SAAAC,EAAU,SAAAC,EAAU,KAAAC,EAAO,QACvF,EAAUC,EAA0C,CAClD,MAAMC,EAAUC,EAAW,0BAA0BV,CAAI,GAAIC,EAAW,CACtE,uBAAwBI,CAAA,CACzB,EAEC,OAAAM,EAAA,cAAC,SAAA,CACC,KAAAJ,EACA,UAAWE,EACX,QAAAN,EACA,MAAAD,EACA,GAAAE,EACA,IAAAI,EACA,SAAAF,CAAA,kBAEC,IAAE,CAAA,UAAW,MAAMR,CAAM,OAAOC,CAAI,QAAU,CAAA,CAAA,CAGrD,CAEA,MAAea,EAAAA,EAAAA,WAAWf,CAAU"}