{"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 { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-dev-runtime\";\nconst CardPortfolio = () => {\n  _s();\n  const [projetData, setProjetData] = useState([]);\n  const [selectedType, setSelectedType] = useState(\"\"); // Ajouter l'état pour stocker le type sélectionné\n\n  useEffect(() => {\n    fetch(\"/portfolio.json\").then(response => response.json()).then(data => {\n      setProjetData(Object.values(data));\n    }).catch(error => console.error(\"erreur chargement des données\"));\n  }, []);\n\n  // Filtrer les projets en fonction du type sélectionné\n  const filteredProjets = selectedType === \"\" ? projetData // Si rien n'est sélectionné, afficher tous les projets\n  : projetData.filter(projet => projet.type.includes(selectedType));\n  return /*#__PURE__*/_jsxDEV(_Fragment, {\n    children: [/*#__PURE__*/_jsxDEV(\"div\", {\n      className: \"check w-full flex items-center justify-center space-x-3\",\n      children: [/*#__PURE__*/_jsxDEV(\"label\", {\n        children: [/*#__PURE__*/_jsxDEV(\"input\", {\n          className: \"hh\",\n          type: \"checkbox\",\n          checked: selectedType === \"wordpress\",\n          onChange: () => setSelectedType(prevType => prevType === \"wordpress\" ? \"\" : \"wordpress\")\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 27,\n          columnNumber: 11\n        }, this), \"WordPress\"]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 26,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"label\", {\n        children: [/*#__PURE__*/_jsxDEV(\"input\", {\n          type: \"checkbox\",\n          checked: selectedType === \"php\",\n          onChange: () => setSelectedType(prevType => prevType === \"php\" ? \"\" : \"php\")\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 40,\n          columnNumber: 11\n        }, this), \"PHP\"]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 39,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n        children: [/*#__PURE__*/_jsxDEV(\"div\", {}, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 52,\n          columnNumber: 8\n        }, this), /*#__PURE__*/_jsxDEV(\"label\", {\n          children: [/*#__PURE__*/_jsxDEV(\"input\", {\n            type: \"checkbox\",\n            checked: selectedType === \"react\",\n            onChange: () => setSelectedType(prevType => prevType === \"react\" ? \"\" : \"react\")\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 57,\n            columnNumber: 11\n          }, this), \"react\"]\n        }, void 0, true, {\n          fileName: _jsxFileName,\n          lineNumber: 56,\n          columnNumber: 10\n        }, this)]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 51,\n        columnNumber: 5\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 24,\n      columnNumber: 7\n    }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n      className: \"w-full flex  flex-wrap items-center justify-center \",\n      children: filteredProjets.map((projet, index) => /*#__PURE__*/_jsxDEV(\"div\", {\n        className: \"cardPortfolio \",\n        children: [/*#__PURE__*/_jsxDEV(\"div\", {\n          className: \"relative contain-img-text\",\n          children: [/*#__PURE__*/_jsxDEV(\"div\", {\n            className: \"containImg absolute\",\n            children: /*#__PURE__*/_jsxDEV(\"img\", {\n              src: projet.imageSrc,\n              alt: projet.titre\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 78,\n              columnNumber: 13\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 77,\n            columnNumber: 11\n          }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n            className: \"hovver text-center absolute transition flex justify-center items-center\",\n            children: /*#__PURE__*/_jsxDEV(\"p\", {\n              children: projet.description\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 81,\n              columnNumber: 13\n            }, this)\n          }, void 0, false, {\n            fileName: _jsxFileName,\n            lineNumber: 80,\n            columnNumber: 11\n          }, this)]\n        }, void 0, true, {\n          fileName: _jsxFileName,\n          lineNumber: 76,\n          columnNumber: 9\n        }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n          className: \"ui\",\n          children: [/*#__PURE__*/_jsxDEV(\"div\", {\n            className: \"text-center  border-y border-slate-600 border-solid mt-2\",\n            children: [/*#__PURE__*/_jsxDEV(\"h2\", {\n              children: projet.titre\n            }, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 87,\n              columnNumber: 13\n            }, this), /*#__PURE__*/_jsxDEV(\"p\", {\n              children: [projet.tekno, \" \"]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 88,\n              columnNumber: 13\n            }, this)]\n          }, void 0, true, {\n            fileName: _jsxFileName,\n            lineNumber: 86,\n            columnNumber: 11\n          }, this), /*#__PURE__*/_jsxDEV(\"ul\", {\n            className: \"flex items-center justify-center ulVoir\",\n            children: [/*#__PURE__*/_jsxDEV(\"li\", {\n              children: [/*#__PURE__*/_jsxDEV(\"a\", {\n                href: projet.lien,\n                children: \"voir\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 91,\n                columnNumber: 17\n              }, this), \" \"]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 91,\n              columnNumber: 13\n            }, this), /*#__PURE__*/_jsxDEV(\"li\", {}, void 0, false, {\n              fileName: _jsxFileName,\n              lineNumber: 92,\n              columnNumber: 13\n            }, this), /*#__PURE__*/_jsxDEV(\"li\", {\n              children: [/*#__PURE__*/_jsxDEV(\"a\", {\n                href: projet.lienCode,\n                children: \"voir code\"\n              }, void 0, false, {\n                fileName: _jsxFileName,\n                lineNumber: 93,\n                columnNumber: 17\n              }, this), \" \"]\n            }, void 0, true, {\n              fileName: _jsxFileName,\n              lineNumber: 93,\n              columnNumber: 13\n            }, this)]\n          }, void 0, true, {\n            fileName: _jsxFileName,\n            lineNumber: 90,\n            columnNumber: 11\n          }, this)]\n        }, void 0, true, {\n          fileName: _jsxFileName,\n          lineNumber: 85,\n          columnNumber: 9\n        }, this)]\n      }, index, true, {\n        fileName: _jsxFileName,\n        lineNumber: 75,\n        columnNumber: 7\n      }, this))\n    }, void 0, false, {\n      fileName: _jsxFileName,\n      lineNumber: 71,\n      columnNumber: 5\n    }, this)]\n  }, void 0, true);\n};\n_s(CardPortfolio, \"VK9c6Gg0+Jkaq+ZhuGYQLC/vv0U=\");\n_c = CardPortfolio;\nexport default CardPortfolio;\nvar _c;\n$RefreshReg$(_c, \"CardPortfolio\");","map":{"version":3,"names":["React","useEffect","useState","jsxDEV","_jsxDEV","Fragment","_Fragment","CardPortfolio","_s","projetData","setProjetData","selectedType","setSelectedType","fetch","then","response","json","data","Object","values","catch","error","console","filteredProjets","filter","projet","type","includes","children","className","checked","onChange","prevType","fileName","_jsxFileName","lineNumber","columnNumber","map","index","src","imageSrc","alt","titre","description","tekno","href","lien","lienCode","_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\n\r\nconst CardPortfolio = () => {\r\n  const [projetData, setProjetData] = useState([]);\r\n  const [selectedType, setSelectedType] = useState(\"\"); // Ajouter l'état pour stocker le type sélectionné\r\n\r\n  useEffect(() => {\r\n    fetch(\"/portfolio.json\")\r\n      .then((response) => response.json())\r\n      .then((data) => {\r\n        setProjetData(Object.values(data));\r\n      })\r\n      .catch((error) => console.error(\"erreur chargement des données\"));\r\n  }, []);\r\n\r\n  // Filtrer les projets en fonction du type sélectionné\r\n  const filteredProjets =\r\n    selectedType === \"\"\r\n      ? projetData // Si rien n'est sélectionné, afficher tous les projets\r\n      : projetData.filter((projet) => projet.type.includes(selectedType));\r\n\r\n  return (\r\n    <>\r\n      <div className=\"check w-full flex items-center justify-center space-x-3\">\r\n        {/* Ajouter les checkboxes pour les types */}\r\n        <label>\r\n          <input\r\n          className=\"hh\"\r\n            type=\"checkbox\"\r\n            checked={selectedType === \"wordpress\"}\r\n            onChange={() =>\r\n              setSelectedType((prevType) =>\r\n                prevType === \"wordpress\" ? \"\" : \"wordpress\"\r\n              )\r\n            }\r\n          />\r\n          WordPress\r\n        </label>\r\n        <label>\r\n          <input\r\n            type=\"checkbox\"\r\n            checked={selectedType === \"php\"}\r\n            onChange={() =>\r\n              setSelectedType((prevType) => (prevType === \"php\" ? \"\" : \"php\"))\r\n            }\r\n          />\r\n          PHP\r\n        </label>\r\n    \r\n\r\n    <div>\r\n       <div>\r\n        \r\n       </div>\r\n\r\n         <label>\r\n          <input\r\n             type=\"checkbox\"\r\n             checked={selectedType === \"react\"}\r\n             onChange={()=>\r\n            setSelectedType((prevType)=>(prevType ===\"react\" ? \"\" :\"react\"))\r\n          }/>\r\n          react\r\n         </label>\r\n\r\n    </div>\r\n\r\n        {/* Ajouter plus de checkboxes pour d'autres types si nécessaire */}\r\n      </div>\r\n      \r\n    <div className=\"w-full flex  flex-wrap items-center justify-center \">\r\n\r\n      {filteredProjets.map((projet,index)=>(\r\n\r\n      <div className=\"cardPortfolio \" key={index}>\r\n        <div className=\"relative contain-img-text\">\r\n          <div className=\"containImg absolute\">\r\n            <img src={projet.imageSrc } alt={projet.titre}  />\r\n          </div>\r\n          <div className=\"hovver text-center absolute transition flex justify-center items-center\">\r\n            <p>{projet.description}</p>\r\n          </div>\r\n        </div>\r\n\r\n        <div className=\"ui\">\r\n          <div className=\"text-center  border-y border-slate-600 border-solid mt-2\">\r\n            <h2>{projet.titre}</h2>\r\n            <p>{projet.tekno} </p>\r\n          </div>\r\n          <ul className=\"flex items-center justify-center ulVoir\">\r\n            <li><a href={projet.lien}>voir</a> </li>\r\n            <li></li>\r\n            <li><a href={projet.lienCode}>voir code</a> </li>\r\n          </ul>\r\n        </div>\r\n      </div>\r\n\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":[]}