{"ast":null,"code":"var _jsxFileName = \"C:\\\\Users\\\\user\\\\Desktop\\\\000newport\\\\src\\\\components\\\\pages\\\\home\\\\components\\\\04portefolio\\\\card\\\\card.js\",\n  _s = $RefreshSig$();\nimport React, { useEffect, useState } from \"react\";\nimport UseFetch from \"../../../../../hooks/useFetch\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport { faArrowRight, faCode } from \"@fortawesome/free-solid-svg-icons\";\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nconst CardPortfolio = () => {\n  _s();\n  const {\n    data: portfolioData,\n    error: portfolioError,\n    isLoading: portfolioIsLoading\n  } = UseFetch(\"/portfolio.json\");\n  const {\n    data: choiceInputData,\n    error: choiceInputError\n  } = UseFetch(\"/input-choice-tekno.json\");\n  const [selectedTypes, setSelectedTypes] = useState([]);\n  const [isLoading, setIsLoading] = useState(true);\n  useEffect(() => {\n    if (portfolioData) {\n      setIsLoading(false);\n    }\n  }, [portfolioData]);\n  if (portfolioError) {\n    return /*#__PURE__*/_jsxDEV(\"div\", {\n      children: \"Une erreur est survenue lors du chargement des donn\\xE9es.\"\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 20,\n      columnNumber: 12\n    }, this);\n  }\n  if (choiceInputError) {\n    return /*#__PURE__*/_jsxDEV(\"div\", {\n      children: \"erreur chargement donn\\xE9es\"\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 23,\n      columnNumber: 12\n    }, this);\n  }\n  const handleTypeSelection = typeName => {\n    if (selectedTypes.includes(typeName)) {\n      setSelectedTypes(selectedTypes.filter(type => type !== typeName));\n    } else {\n      setSelectedTypes([...selectedTypes, typeName]);\n    }\n  };\n  const filteredProjects = portfolioData.filter(projet => selectedTypes.length === 0 || projet.type.some(type => selectedTypes.includes(type)));\n  return /*#__PURE__*/_jsxDEV(_Fragment, {\n    children: [/*#__PURE__*/_jsxDEV(\"i\", {\n      className: \"fas fa-spinner fa-pulse\"\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 40,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n      className: \"flex w-2/3 choice-tekno flex-wrap \",\n      children: choiceInputData.map((items, index) => /*#__PURE__*/_jsxDEV(\"div\", {\n        style: {\n          color: items.color,\n          backgroundColor: items.background\n        },\n        className: \" flex flex-col items-center justify-center input-choice-tekno flex-wrap\"\n      }, index, false, {\n        fileName: _jsxFileName,\n        lineNumber: 43,\n        columnNumber: 11\n      }, this))\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 41,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n      className: \"w-full flex flex-wrap items-center justify-center\",\n      children: filteredProjects.map((projet, index) => /*#__PURE__*/_jsxDEV(\"div\", {\n        className: \"cardPortfolio transition\"\n      }, index, false, {\n        fileName: _jsxFileName,\n        lineNumber: 55,\n        columnNumber: 11\n      }, this))\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 53,\n      columnNumber: 7\n    }, this)]\n  }, void 0, true);\n};\n_s(CardPortfolio, \"8x+sG1FFxQI5MjxcBYom/0A58Jw=\");\n_c = CardPortfolio;\nexport default CardPortfolio;\nvar _c;\n$RefreshReg$(_c, \"CardPortfolio\");","map":{"version":3,"names":["React","useEffect","useState","UseFetch","FontAwesomeIcon","faArrowRight","faCode","jsxDEV","_jsxDEV","Fragment","_Fragment","CardPortfolio","_s","data","portfolioData","error","portfolioError","isLoading","portfolioIsLoading","choiceInputData","choiceInputError","selectedTypes","setSelectedTypes","setIsLoading","children","fileName","_jsxFileName","lineNumber","columnNumber","handleTypeSelection","typeName","includes","filter","type","filteredProjects","projet","length","some","className","map","items","index","style","color","backgroundColor","background","_c","$RefreshReg$"],"sources":["C:/Users/user/Desktop/000newport/src/components/pages/home/components/04portefolio/card/card.js"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\r\nimport UseFetch from \"../../../../../hooks/useFetch\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { faArrowRight, faCode } from \"@fortawesome/free-solid-svg-icons\";\r\n\r\nconst CardPortfolio = () => {\r\n  \r\n  const { data: portfolioData, error: portfolioError, isLoading: portfolioIsLoading } = UseFetch(\"/portfolio.json\");\r\n  const { data: choiceInputData, error: choiceInputError } = UseFetch(\"/input-choice-tekno.json\");\r\n  const [selectedTypes, setSelectedTypes] = useState([]);\r\n  const [isLoading, setIsLoading] = useState(true);\r\n\r\n  useEffect(() => {\r\n    if (portfolioData) {\r\n      setIsLoading(false);\r\n    }\r\n  }, [portfolioData]);\r\n\r\n  if (portfolioError) {\r\n    return <div>Une erreur est survenue lors du chargement des données.</div>;\r\n  }\r\n  if (choiceInputError) {\r\n    return <div>erreur chargement données</div>;\r\n  }\r\n\r\n  const handleTypeSelection = (typeName) => {\r\n    if (selectedTypes.includes(typeName)) {\r\n      setSelectedTypes(selectedTypes.filter((type) => type !== typeName));\r\n    } else {\r\n      setSelectedTypes([...selectedTypes, typeName]);\r\n    }\r\n  };\r\n\r\n  const filteredProjects = portfolioData.filter((projet) =>\r\n    selectedTypes.length === 0 || projet.type.some(type => selectedTypes.includes(type))\r\n  );\r\n\r\n  return (\r\n    <>\r\n      <i className=\"fas fa-spinner fa-pulse\"></i>\r\n      <div className=\"flex w-2/3 choice-tekno flex-wrap \">\r\n        {choiceInputData.map((items, index) => (\r\n          <div\r\n            key={index}\r\n            style={{ color: items.color, backgroundColor: items.background }}\r\n            className=\" flex flex-col items-center justify-center input-choice-tekno flex-wrap\"\r\n          >\r\n            {/* Reste du code pour les checkboxes */}\r\n          </div>\r\n        ))}\r\n      </div>\r\n\r\n      <div className=\"w-full flex flex-wrap items-center justify-center\">\r\n        {filteredProjects.map((projet, index) => (\r\n          <div className=\"cardPortfolio transition\" key={index}>\r\n            {/* Reste du code pour les projets */}\r\n          </div>\r\n        ))}\r\n      </div>\r\n    </>\r\n  );\r\n};\r\n\r\nexport default CardPortfolio;\r\n"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}