{"version":3,"file":"static/components/9560-4e3ff2449f6a5210f131.mjs?cv=7","mappings":"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","sources":["webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/formComponents/SearchAndSelectField.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/node_modules/react-select/dist/useAsync-ba7c6b77.esm.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/node_modules/react-select/async/dist/react-select-async.esm.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/front/components/genericComponents/Skeleton.js","webpack:///home/runner/work/actionpopulaire.fr/actionpopulaire.fr/agir/lib/components/utils/promises.js"],"sourcesContent":["import Async from \"react-select/async\";\nimport { components } from \"react-select\";\nimport PropTypes from \"prop-types\";\nimport React, { useCallback, useMemo, useState } from \"react\";\nimport styled, {css} from \"styled-components\";\n\nimport { debounce } from \"@agir/lib/utils/promises\";\n\nimport Button from \"@agir/front/genericComponents/Button\";\nimport { RawFeatherIcon } from \"@agir/front/genericComponents/FeatherIcon\";\nimport FaIcon from \"../genericComponents/FaIcon\";\n\nconst StyledFaIcon = styled(FaIcon).attrs((props) => ({\n $color: props.$color || props.theme.primary500,\n}))`\n color: ${({ $color }) =>\n (parseInt($color.substring(1, 3), 16) * 299 +\n parseInt($color.substring(3, 5), 16) * 587 +\n parseInt($color.substring(5, 7), 16) * 114) /\n 1000 >=\n 128\n ? \"#000000EE\"\n : \"#FFFFFFDD\"};\n background-color: ${(props) => props.$color};\n`;\nconst StyledLabel = styled.span``;\nconst StyledHelpText = styled.span``;\nconst StyledError = styled.span``;\n\nconst StyledNoOptionsMessage = styled(components.NoOptionsMessage)``;\nconst StyledLoadingMessage = styled(components.LoadingMessage)``;\n\nexport const useRemoteSearch = (fetcher, formatter) => {\n const [options, setOptions] = useState();\n const [isLoading, setIsLoading] = useState(false);\n const [error, setError] = useState(null);\n\n const handleSearch = useMemo(\n () =>\n debounce(async (searchTerm) => {\n setIsLoading(true);\n setOptions(undefined);\n setError(null);\n const { data, error } = await fetcher(searchTerm);\n setIsLoading(false);\n setError(error);\n const options =\n data && typeof formatter === \"function\" ? formatter(data) : data;\n setOptions(options);\n return options;\n }, 600),\n [fetcher, formatter],\n );\n\n return [handleSearch, options, isLoading, error];\n};\n\nconst StyledField = styled.label`\n width: 100%;\n display: flex;\n flex-flow: column nowrap;\n gap: 4px;\n margin-bottom: 0;\n align-items: stretch;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n \n ${StyledHelpText} {\n ${({theme, $variant}) => {\n if ($variant === \"lfi\") {\n return css`color: ${theme.text500};`\n }\n }}\n }\n\n ${StyledLabel} {\n font-weight: 600;\n\n ${({$required, theme}) => $required && css`\n &:after {\n content: \"*\";\n color: ${theme.LFIsecondary500};\n `\n }\n }\n\n .select-search-container {\n .select-search__indicator-separator {\n display: none;\n }\n .select-search__dropdown-indicator {\n color: ${({ $invalid }) =>\n $invalid\n ? (props) => props.theme.error500\n : (props) => props.theme.text700};\n }\n }\n\n .select-search__control {\n background-color: ${(props) => props.theme.background0};\n color: ${(props) => props.theme.text1000};\n border-radius: ${({theme, $variant}) => $variant === \"lfi\" ? 0 : theme.softBorderRadius };\n border: 1px solid;\n max-width: 100%;\n height: 40px;\n font-size: 1rem;\n\n &,\n &:hover,\n &:focus,\n &.select-search__control--is-focused {\n outline: none;\n box-shadow: none;\n border-color: ${({ $invalid }) =>\n $invalid\n ? (props) => props.theme.error500\n : (props) => props.theme.text100};\n }\n\n &:focus,\n &.select-search__control--is-focused {\n border-color: ${({ $invalid }) =>\n $invalid\n ? (props) => props.theme.error500\n : (props) => props.theme.text500};\n }\n\n .select__input-container,\n .select-search__input-container,\n .select__single-value,\n .select-search__single-value {\n color: ${(props) => props.theme.text1000};\n }\n\n .select-search__placeholder {\n white-space: nowrap;\n max-width: 100%;\n text-overflow: ellipsis;\n overflow: hidden;\n }\n\n ${RawFeatherIcon} {\n color: ${(props) => props.theme.text700};\n width: 1.5rem;\n height: 100%;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n margin: 0;\n }\n }\n\n .select-search__menu {\n background-color: ${(props) => props.theme.background0};\n color: ${(props) => props.theme.text1000};\n border: 1px solid ${(props) => props.theme.text100};\n box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);\n margin-top: -1px;\n border-radius: 0;\n padding: 0;\n }\n\n .select-search__option {\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n font-size: 1rem;\n padding: 0.5rem 1rem;\n color: ${(props) => props.theme.text1000};\n cursor: pointer;\n background-color: transparent;\n\n &.select-search__option--is-focused {\n background-color: ${(props) => props.theme.text50};\n }\n\n &.select-search__option--is-selected {\n cursor: default;\n }\n\n &.select-search__option--is-selected {\n color: ${(props) => props.theme.primary500};\n background-color: transparent;\n }\n\n ${StyledFaIcon} {\n flex: 0 0 auto;\n height: 2rem;\n width: 2rem;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 100%;\n margin-right: 1rem;\n }\n\n p {\n margin: 0;\n padding: 0;\n\n strong,\n span {\n display: block;\n line-height: 1.5;\n font-size: 1rem;\n }\n\n strong {\n font-weight: 500;\n }\n\n span {\n font-size: 1rem;\n font-weight: 400;\n color: ${({ isSelected }) =>\n isSelected\n ? (props) => props.theme.primary500\n : (props) => props.theme.text700};\n }\n }\n\n ${Button} {\n display: ${({ isSelected }) => (isSelected ? \"none\" : \"inline\")};\n margin-left: auto;\n font-size: 1rem;\n font-weight: 700;\n height: 2rem;\n }\n }\n\n ${StyledNoOptionsMessage},\n ${StyledLoadingMessage} {\n text-align: left;\n }\n\n ${StyledError} {\n display: ${({ $invalid }) => ($invalid ? \"flex\" : \"none\")};\n color: ${(props) => props.theme.error500};\n }\n`;\n\nconst Control = ({ children, ...props }) => (\n \n {!!props.selectProps.searchIcon && (\n \n )}\n {children}\n \n);\nControl.propTypes = {\n children: PropTypes.node,\n selectProps: PropTypes.shape({\n searchIcon: PropTypes.bool,\n }),\n};\n\nconst Option = (props) => {\n const { data } = props;\n const label = (data && data.label) || props.label;\n const sublabel = (data && data.sublabel) || null;\n const buttonLabel = data.buttonLabel || null;\n\n return (\n \n {data?.icon && (\n \n )}\n

\n {label}\n {sublabel ? {sublabel} : null}\n

\n {buttonLabel && (\n \n )}\n
\n );\n};\nOption.propTypes = {\n innerRef: PropTypes.any,\n data: PropTypes.shape({\n value: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n label: PropTypes.string,\n sublabel: PropTypes.string,\n buttonLabel: PropTypes.string,\n icon: PropTypes.string,\n iconColor: PropTypes.string,\n }).isRequired,\n};\n\nconst SearchAndSelectField = (props) => {\n const {\n id,\n defaultOptions,\n onChange,\n onSearch,\n isLoading,\n value,\n error,\n label,\n helpText,\n minSearchTermLength = 3,\n searchIcon = true,\n className = \"\",\n variant,\n required,\n ...rest\n } = props;\n\n const loadingMessage = useCallback(() => \"Recherche...\", []);\n const noOptionsMessage = useCallback(\n ({ inputValue }) =>\n inputValue.length < minSearchTermLength\n ? `Entrez au moins ${minSearchTermLength} lettre${\n minSearchTermLength > 1 ? \"s\" : \"\"\n } pour chercher`\n : \"Pas de résultats\",\n [minSearchTermLength],\n );\n\n return (\n \n {label && {label}}\n {helpText && {helpText}}\n \n {error}\n \n );\n};\n\nSearchAndSelectField.propTypes = {\n value: PropTypes.any,\n onChange: PropTypes.func,\n onSearch: PropTypes.func.isRequired,\n defaultOptions: PropTypes.oneOfType([PropTypes.array, PropTypes.bool]),\n id: PropTypes.string,\n label: PropTypes.string,\n helpText: PropTypes.node,\n error: PropTypes.string,\n className: PropTypes.string,\n isLoading: PropTypes.bool,\n searchIcon: PropTypes.bool,\n minSearchTermLength: PropTypes.number,\n};\n\nexport default SearchAndSelectField;\n","import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _objectSpread from '@babel/runtime/helpers/esm/objectSpread2';\nimport _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport { useRef, useState, useEffect, useCallback } from 'react';\nimport { L as handleInputChange } from './index-a301f526.esm.js';\n\nvar _excluded = [\"defaultOptions\", \"cacheOptions\", \"loadOptions\", \"options\", \"isLoading\", \"onInputChange\", \"filterOption\"];\nfunction useAsync(_ref) {\n var _ref$defaultOptions = _ref.defaultOptions,\n propsDefaultOptions = _ref$defaultOptions === void 0 ? false : _ref$defaultOptions,\n _ref$cacheOptions = _ref.cacheOptions,\n cacheOptions = _ref$cacheOptions === void 0 ? false : _ref$cacheOptions,\n propsLoadOptions = _ref.loadOptions;\n _ref.options;\n var _ref$isLoading = _ref.isLoading,\n propsIsLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,\n propsOnInputChange = _ref.onInputChange,\n _ref$filterOption = _ref.filterOption,\n filterOption = _ref$filterOption === void 0 ? null : _ref$filterOption,\n restSelectProps = _objectWithoutProperties(_ref, _excluded);\n var propsInputValue = restSelectProps.inputValue;\n var lastRequest = useRef(undefined);\n var mounted = useRef(false);\n var _useState = useState(Array.isArray(propsDefaultOptions) ? propsDefaultOptions : undefined),\n _useState2 = _slicedToArray(_useState, 2),\n defaultOptions = _useState2[0],\n setDefaultOptions = _useState2[1];\n var _useState3 = useState(typeof propsInputValue !== 'undefined' ? propsInputValue : ''),\n _useState4 = _slicedToArray(_useState3, 2),\n stateInputValue = _useState4[0],\n setStateInputValue = _useState4[1];\n var _useState5 = useState(propsDefaultOptions === true),\n _useState6 = _slicedToArray(_useState5, 2),\n isLoading = _useState6[0],\n setIsLoading = _useState6[1];\n var _useState7 = useState(undefined),\n _useState8 = _slicedToArray(_useState7, 2),\n loadedInputValue = _useState8[0],\n setLoadedInputValue = _useState8[1];\n var _useState9 = useState([]),\n _useState10 = _slicedToArray(_useState9, 2),\n loadedOptions = _useState10[0],\n setLoadedOptions = _useState10[1];\n var _useState11 = useState(false),\n _useState12 = _slicedToArray(_useState11, 2),\n passEmptyOptions = _useState12[0],\n setPassEmptyOptions = _useState12[1];\n var _useState13 = useState({}),\n _useState14 = _slicedToArray(_useState13, 2),\n optionsCache = _useState14[0],\n setOptionsCache = _useState14[1];\n var _useState15 = useState(undefined),\n _useState16 = _slicedToArray(_useState15, 2),\n prevDefaultOptions = _useState16[0],\n setPrevDefaultOptions = _useState16[1];\n var _useState17 = useState(undefined),\n _useState18 = _slicedToArray(_useState17, 2),\n prevCacheOptions = _useState18[0],\n setPrevCacheOptions = _useState18[1];\n if (cacheOptions !== prevCacheOptions) {\n setOptionsCache({});\n setPrevCacheOptions(cacheOptions);\n }\n if (propsDefaultOptions !== prevDefaultOptions) {\n setDefaultOptions(Array.isArray(propsDefaultOptions) ? propsDefaultOptions : undefined);\n setPrevDefaultOptions(propsDefaultOptions);\n }\n useEffect(function () {\n mounted.current = true;\n return function () {\n mounted.current = false;\n };\n }, []);\n var loadOptions = useCallback(function (inputValue, callback) {\n if (!propsLoadOptions) return callback();\n var loader = propsLoadOptions(inputValue, callback);\n if (loader && typeof loader.then === 'function') {\n loader.then(callback, function () {\n return callback();\n });\n }\n }, [propsLoadOptions]);\n useEffect(function () {\n if (propsDefaultOptions === true) {\n loadOptions(stateInputValue, function (options) {\n if (!mounted.current) return;\n setDefaultOptions(options || []);\n setIsLoading(!!lastRequest.current);\n });\n }\n // NOTE: this effect is designed to only run when the component mounts,\n // so we don't want to include any hook dependencies\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n var onInputChange = useCallback(function (newValue, actionMeta) {\n var inputValue = handleInputChange(newValue, actionMeta, propsOnInputChange);\n if (!inputValue) {\n lastRequest.current = undefined;\n setStateInputValue('');\n setLoadedInputValue('');\n setLoadedOptions([]);\n setIsLoading(false);\n setPassEmptyOptions(false);\n return;\n }\n if (cacheOptions && optionsCache[inputValue]) {\n setStateInputValue(inputValue);\n setLoadedInputValue(inputValue);\n setLoadedOptions(optionsCache[inputValue]);\n setIsLoading(false);\n setPassEmptyOptions(false);\n } else {\n var request = lastRequest.current = {};\n setStateInputValue(inputValue);\n setIsLoading(true);\n setPassEmptyOptions(!loadedInputValue);\n loadOptions(inputValue, function (options) {\n if (!mounted) return;\n if (request !== lastRequest.current) return;\n lastRequest.current = undefined;\n setIsLoading(false);\n setLoadedInputValue(inputValue);\n setLoadedOptions(options || []);\n setPassEmptyOptions(false);\n setOptionsCache(options ? _objectSpread(_objectSpread({}, optionsCache), {}, _defineProperty({}, inputValue, options)) : optionsCache);\n });\n }\n }, [cacheOptions, loadOptions, loadedInputValue, optionsCache, propsOnInputChange]);\n var options = passEmptyOptions ? [] : stateInputValue && loadedInputValue ? loadedOptions : defaultOptions || [];\n return _objectSpread(_objectSpread({}, restSelectProps), {}, {\n options: options,\n isLoading: isLoading || propsIsLoading,\n onInputChange: onInputChange,\n filterOption: filterOption\n });\n}\n\nexport { useAsync as u };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport { S as Select } from '../../dist/Select-49a62830.esm.js';\nimport { u as useStateManager } from '../../dist/useStateManager-7e1e8489.esm.js';\nimport { u as useAsync } from '../../dist/useAsync-ba7c6b77.esm.js';\nexport { u as useAsync } from '../../dist/useAsync-ba7c6b77.esm.js';\nimport '@babel/runtime/helpers/objectSpread2';\nimport '@babel/runtime/helpers/classCallCheck';\nimport '@babel/runtime/helpers/createClass';\nimport '@babel/runtime/helpers/inherits';\nimport '@babel/runtime/helpers/createSuper';\nimport '@babel/runtime/helpers/toConsumableArray';\nimport '../../dist/index-a301f526.esm.js';\nimport '@emotion/react';\nimport '@babel/runtime/helpers/slicedToArray';\nimport '@babel/runtime/helpers/objectWithoutProperties';\nimport '@babel/runtime/helpers/typeof';\nimport '@babel/runtime/helpers/taggedTemplateLiteral';\nimport '@babel/runtime/helpers/defineProperty';\nimport 'react-dom';\nimport '@floating-ui/dom';\nimport 'use-isomorphic-layout-effect';\nimport 'memoize-one';\n\nvar AsyncSelect = /*#__PURE__*/forwardRef(function (props, ref) {\n var stateManagedProps = useAsync(props);\n var selectProps = useStateManager(stateManagedProps);\n return /*#__PURE__*/React.createElement(Select, _extends({\n ref: ref\n }, selectProps));\n});\nvar AsyncSelect$1 = AsyncSelect;\n\nexport { AsyncSelect$1 as default };\n","import PropTypes from \"prop-types\";\nimport React, { useMemo } from \"react\";\nimport styled from \"styled-components\";\n\nconst Bone = styled.div`\n background-color: ${(props) => props.theme.background50};\n height: 177px;\n margin-bottom: 32px;\n`;\n\nconst Skeleton = ({ boxes = 3, ...props }) => {\n const Bones = useMemo(() => {\n let result = [];\n for (let key = boxes; key > 0; key -= 1) {\n result.push(Bone);\n }\n return result;\n }, [boxes]);\n\n return Bones.map((Bone, key) => );\n};\n\nSkeleton.propTypes = {\n boxes: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n};\n\nexport default Skeleton;\n","import funcDebounce from \"lodash/debounce\";\n\nexport const debounce = (func, wait) => {\n let currentPromise = null;\n let currentResolve = null;\n let lastArgs;\n\n const debouncedResolve = funcDebounce(\n () => {\n currentResolve();\n currentResolve = null;\n },\n wait,\n { leading: false, trailing: true },\n );\n\n return (...args) => {\n if (currentResolve === null) {\n currentPromise = new Promise((resolve) => {\n currentResolve = resolve;\n }).then(() => func(...lastArgs));\n }\n lastArgs = args;\n\n debouncedResolve();\n return currentPromise;\n };\n};\n"],"names":["StyledFaIcon","styled","FaIcon","attrs","props","$color","theme","primary500","_ref","parseInt","substring","StyledLabel","span","StyledHelpText","StyledError","StyledNoOptionsMessage","components","NoOptionsMessage","StyledLoadingMessage","LoadingMessage","useRemoteSearch","fetcher","formatter","_useState","useState","_useState2","_slicedToArray","options","setOptions","_useState3","_useState4","isLoading","setIsLoading","_useState5","_useState6","error","setError","handleSearch","useMemo","debounce","_ref2","_asyncToGenerator","_regeneratorRuntime","_callee","searchTerm","_yield$fetcher","data","_context","prev","next","undefined","sent","abrupt","stop","_x","apply","arguments","StyledField","label","_ref3","$variant","css","text500","_ref4","$required","LFIsecondary500","_ref5","$invalid","error500","text700","background0","text1000","_ref6","softBorderRadius","_ref7","text100","_ref8","RawFeatherIcon","text50","_ref9","isSelected","Button","_ref10","_ref11","Control","_ref12","children","_objectWithoutProperties","_excluded","React","selectProps","searchIcon","name","width","height","Option","sublabel","buttonLabel","icon","iconColor","size","type","color","small","id","defaultOptions","onChange","onSearch","value","helpText","_props$minSearchTermL","minSearchTermLength","_props$searchIcon","_props$className","className","variant","required","rest","_excluded2","loadingMessage","useCallback","noOptionsMessage","_ref13","inputValue","length","concat","htmlFor","$valid","$empty","Async","_extends","trim","loadOptions","classNamePrefix","isDisabled","disabled","inputId","AsyncSelect$1","forwardRef","ref","stateManagedProps","_ref$defaultOptions","propsDefaultOptions","_ref$cacheOptions","cacheOptions","propsLoadOptions","_ref$isLoading","propsIsLoading","propsOnInputChange","onInputChange","_ref$filterOption","filterOption","restSelectProps","propsInputValue","lastRequest","useRef","mounted","Array","isArray","setDefaultOptions","stateInputValue","setStateInputValue","_useState7","_useState8","loadedInputValue","setLoadedInputValue","_useState9","_useState10","loadedOptions","setLoadedOptions","_useState11","_useState12","passEmptyOptions","setPassEmptyOptions","_useState13","_useState14","optionsCache","setOptionsCache","_useState15","_useState16","prevDefaultOptions","setPrevDefaultOptions","_useState17","_useState18","prevCacheOptions","setPrevCacheOptions","useEffect","current","callback","loader","then","newValue","actionMeta","request","useAsync","u","S","Bone","div","background50","_ref$boxes","boxes","result","key","push","map","func","wait","lastArgs","currentPromise","currentResolve","debouncedResolve","funcDebounce","leading","trailing","Promise","resolve","_toConsumableArray","_len","args","_key"],"sourceRoot":""}