{"version":3,"file":"729-1ca7a6a8df5120c6252e.js","mappings":"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","sources":["webpack:///./components/rsuite-field-control/index.js","webpack:///./react-rsuite5/input-number/index.scss?ea62","webpack:///./react-rsuite5/input-number/index.js","webpack:///./react-rsuite5/input-number/index.scss"],"sourcesContent":["import React, { useRef, useEffect } from 'react';\n\nimport Whisper from 'rsuite/Whisper';\nimport Popover from 'rsuite/Popover';\n\nconst POPOVER_STYLE = {\n  padding: '6px',\n  color: '#ff6633'\n};\n\nconst RSuite5FieldControl = ({ errorMessage, children }) => {\n  const triggerRef = useRef();\n\n  useEffect(\n    () => {\n      if (errorMessage) {\n        triggerRef.current.open();\n      } else {\n        triggerRef.current.close();\n      }\n    },\n    [errorMessage]\n  );\n\n  return (\n    <Whisper\n      placement=\"bottomStart\"\n      ref={triggerRef}\n      trigger=\"none\"\n      speaker={<Popover \n        style={POPOVER_STYLE} \n        visible={!!errorMessage}\n        className=\"lf-react-rsuite5-error-popover\"\n      ><div>{errorMessage}</div></Popover>}\n    >{children}</Whisper>\n  );\n}\n\nexport { RSuite5FieldControl };\n","\n      import API from \"!../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./index.scss\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/sass-loader/dist/cjs.js!./index.scss\";\n       export default content && content.locals ? content.locals : undefined;\n","/* eslint-disable jsx-a11y/anchor-is-valid */\nimport React, { useCallback, useState } from 'react';\nimport Form from 'rsuite/Form';\nimport InputNumber from 'rsuite/InputNumber';\nimport _ from 'lodash';\nimport classNames from 'classnames';\n\nimport { RequiredIcon, I18N } from '../../components';\nimport { CrossCirle } from '../../assets/icons';\nimport { makeWidthStyle } from '../../helpers';\nimport { lfLog } from '../../helpers/lf-log';\nimport { RSuite5FieldControl } from '../../components/rsuite-field-control';\n\nimport './index.scss';\n\nconst hasDecimals = f => _.isString(f) && (f.includes(',') || f.includes('.'));\n\nconst InputNumberRSuite5 = I18N(\n  ({\n    name,\n    label,\n    hint,\n    value,\n    size,\n    placeholder,\n    min,\n    max,\n    tooltip = false,\n    disabled = false,\n    readOnly = false,\n    required = false,\n    error,\n    prefix,\n    postfix,\n    width,\n    fullWidth,\n    onChange = () => {},\n    step = 1,\n    onBlur,\n    inside = false,\n    allowClear\n  }) => {\n    const [currentValue, setCurrentValue] = useState(value ?? null);\n    const handleChange = useCallback(\n      value => {\n        let parsed = value;\n        if (_.isString(value)) {\n          if (value === '') {\n            // void if the user deleted all chars\n            parsed = null;\n          } else if (hasDecimals(value)) {\n            parsed = parseFloat(value);\n          } else {\n            parsed = parseInt(value, 10);\n          }\n        }\n        // set the original value again, otherwise never be able to\n        // input a float number i.e. \"0.2\"\n        setCurrentValue(value);\n        if (!isNaN(parsed)) {\n          onChange(parsed);\n        }\n      },\n      [onChange]\n    );\n\n    const handleClear = useCallback(\n      (e) => {\n        e.preventDefault();\n        onChange(undefined);\n        setCurrentValue(null);\n      },\n      [onChange]\n    );\n\n    return (\n      <Form.Group\n        data-lf-field-name={name}\n        className={classNames(\n          'lf-control-input-number', {\n            [`lf-size-${size}`]: size != null,\n            'lf-full-width': fullWidth || width != null\n          }\n        )}\n        style={makeWidthStyle(fullWidth, width)}\n      >\n        {label && <Form.ControlLabel>\n          {label}\n          {hint && tooltip && <Form.HelpText tooltip>{hint}</Form.HelpText>}\n          {required && <RequiredIcon />}\n        </Form.ControlLabel>}\n        <RSuite5FieldControl errorMessage={_.isString(error) ? error : undefined }>\n          <InputNumber\n            name={name}\n            accepter={InputNumber}\n            value={currentValue}\n            onChange={handleChange}\n            onClear={handleClear}\n            onBlur={onBlur}\n            disabled={disabled}\n            size={size}\n            min={min}\n            max={max}\n            step={step}\n            inside={inside}\n            prefix={prefix}\n            postfix={allowClear ?\n              (<a href=\"#\" onClick={handleClear}>\n                <CrossCirle width={16} height={16} />\n              </a>)\n              : postfix\n            }\n            placeholder={placeholder}\n            readOnly={readOnly}\n            errorMessage={_.isString(error) ? error : undefined }\n          />\n        </RSuite5FieldControl>\n        {hint && !tooltip && <Form.HelpText>{hint}</Form.HelpText>}\n      </Form.Group>\n    );\n  },\n  ['label', 'hint', 'placeholder']\n);\nlfLog('Loaded RSuite.InputNumber');\n\nexport default InputNumberRSuite5;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".lf-form-react-rsuite5 .lf-control-input-number.rs-form-group .rs-input-group{width:auto}\", \"\",{\"version\":3,\"sources\":[\"webpack://./react-rsuite5/input-number/index.scss\"],\"names\":[],\"mappings\":\"AAGK,8EACC,UAAA\",\"sourcesContent\":[\".lf-form-react-rsuite5 {\\n  // fix: RSuite puts a hardcoded with 300px for grouped input numbers\\n  .lf-control-input-number.rs-form-group {\\n     .rs-input-group {\\n      width: auto;\\n    }\\n  }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["POPOVER_STYLE","padding","color","RSuite5FieldControl","_ref","errorMessage","children","triggerRef","useRef","useEffect","current","open","close","React","Whisper","placement","ref","trigger","speaker","Popover","style","visible","className","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","InputNumberRSuite5","I18N","_classNames","name","label","hint","value","size","placeholder","min","max","_ref$tooltip","tooltip","_ref$disabled","disabled","_ref$readOnly","readOnly","_ref$required","required","error","prefix","postfix","width","fullWidth","_ref$onChange","onChange","_ref$step","step","onBlur","_ref$inside","inside","allowClear","_useState2","useState","currentValue","setCurrentValue","handleChange","useCallback","f","parsed","_isString","includes","parseFloat","parseInt","isNaN","handleClear","e","preventDefault","undefined","Form","classNames","_defineProperty","concat","makeWidthStyle","RequiredIcon","InputNumber","accepter","onClear","href","onClick","CrossCirle","height","lfLog","___CSS_LOADER_EXPORT___","push","module","id"],"sourceRoot":""}