{"version":3,"file":"458-349fc6ed7edf24e3fccc.js","mappings":"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","sources":["webpack:///./components/rsuite-field-control/index.js","webpack:///./react-rsuite5/multiselect-language/multiselect-language.scss?1638","webpack:///./react-rsuite5/multiselect-language/index.js","webpack:///./react-rsuite5/multiselect-language/multiselect-language.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!./multiselect-language.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!./multiselect-language.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 _ from 'lodash';\nimport Form from 'rsuite/Form';\nimport CheckPicker from 'rsuite/CheckPicker';\n\nimport { RequiredIcon, I18N } from '../../components';\nimport { LOCALES } from '../../common/data/locales';\nimport { passRest } from '../../helpers';\nimport { lfLog } from '../../helpers/lf-log';\nimport { RSuite5FieldControl } from '../../components/rsuite-field-control';\n\nimport './multiselect-language.scss';\n\nconst renderItem = (label, item) => (\n  <div>\n    {label} <b>{item.value}</b>\n  </div>\n);\n\nconst ALL_LOCALES = Object.keys(LOCALES['language-names']);\nconst LANGUAGES_OPTIONS = Object.keys(LOCALES['language-names'])\n  .map(lang => ({\n    value: lang,\n    name: LOCALES['language-names'][lang][1],\n    label: `${LOCALES['language-names'][lang][1]}`\n  }));\n\nconst MultiselectLanguage = I18N(\n  ({\n    name,\n    label,\n    hint,\n    value,\n    size,\n    placeholder,\n    tooltip = false,\n    disabled = false,\n    readOnly = false,\n    required = false,\n    error,\n    onChange,\n    onBlur,\n    placement,\n    appearance,\n    ...rest\n  }) => {\n    const [locales, setLocales] = useState(value);\n    const handleAddAll = useCallback(\n      e => {\n        e.preventDefault();\n        setLocales(ALL_LOCALES);\n        onChange(ALL_LOCALES);\n      },\n      [onChange]\n    );\n    const handleChange = useCallback(\n      value => {\n        setLocales(value);\n        onChange(value);\n      },\n      [onChange]\n    );\n\n    return (\n      <Form.Group\n        data-lf-field-name={name}\n        className=\"lf-control-multiselect-language\"\n      >\n        {label && (\n          <Form.ControlLabel>\n            {label}\n            {hint && tooltip && <Form.HelpText tooltip>{hint}</Form.HelpText>}\n            {required && <RequiredIcon />}\n          </Form.ControlLabel>\n        )}\n        <RSuite5FieldControl errorMessage={_.isString(error) ? error : undefined }>\n          <CheckPicker\n            appearance={appearance ?? undefined}\n            name={name}\n            value={locales}\n            onChange={handleChange}\n            readOnly={readOnly}\n            onBlur={onBlur}\n            placement={placement}\n            errorMessage={_.isString(error) ? error : undefined }\n            disabled={disabled}\n            size={size}\n            placeholder={placeholder}\n            data={LANGUAGES_OPTIONS}\n            block\n            renderMenuItem={renderItem}\n            searchable\n            cleanable\n            {...passRest(rest)}\n          />\n        </RSuite5FieldControl>\n        {!(Array.isArray(locales) && locales.length === ALL_LOCALES.length) && (\n          <div className=\"btn-add-all\">\n            <a\n              href=\"#\"\n              onClick={handleAddAll}\n            >add all locales</a>\n          </div>\n        )}\n        {hint && !tooltip && <Form.HelpText>{hint}</Form.HelpText>}\n      </Form.Group>\n    );\n  },\n  ['label', 'hint', 'placeholder']\n);\nlfLog('Loaded RSuite5.MultiselectLanguage');\n\nexport default MultiselectLanguage;\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-control-multiselect-language .btn-add-all{padding-left:5px;font-size:12px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./react-rsuite5/multiselect-language/multiselect-language.scss\"],\"names\":[],\"mappings\":\"AACE,8CACE,gBAAA,CACA,cAAA\",\"sourcesContent\":[\".lf-control-multiselect-language {\\n  .btn-add-all {\\n    padding-left: 5px;\\n    font-size: 12px;\\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","renderItem","label","item","value","ALL_LOCALES","Object","keys","LOCALES","LANGUAGES_OPTIONS","map","lang","name","concat","MultiselectLanguage","I18N","hint","size","placeholder","_ref$tooltip","tooltip","_ref$disabled","disabled","_ref$readOnly","readOnly","_ref$required","required","error","onChange","onBlur","appearance","rest","_objectWithoutProperties","_excluded","_useState2","useState","locales","setLocales","handleAddAll","useCallback","e","preventDefault","handleChange","Form","RequiredIcon","_isString","undefined","CheckPicker","_extends","data","block","renderMenuItem","searchable","cleanable","passRest","Array","isArray","length","href","onClick","lfLog","___CSS_LOADER_EXPORT___","push","module","id"],"sourceRoot":""}