8559c3f8731a5fab233da5ae104f6a46.json 8.39 KB
Newer Older
Mathias Engelbrecht Pilegård's avatar
Mathias Engelbrecht Pilegård committed
1
{"ast":null,"code":"var _jsxFileName = \"C:\\\\Users\\\\Bruger\\\\Desktop\\\\Web-projects\\\\pipit\\\\client\\\\src\\\\components\\\\removeAccount\\\\confirmRemoveAccountModal\\\\ConfirmRemoveAccountModal.jsx\",\n    _s = $RefreshSig$();\n\nimport React, { useEffect, useState } from 'react';\nimport { useOktaAuth } from '@okta/okta-react';\nimport \"./ConfirmRemoveAccountModal.css\";\nimport config from '../../../config';\nimport { jsxDEV as _jsxDEV } from \"react/jsx-dev-runtime\";\n\nconst ConfirmRemoveAccountModal = ({\n  removeModal,\n  headerMessage,\n  bodyMessage\n}) => {\n  _s();\n\n  const {\n    authState,\n    oktaAuth\n  } = useOktaAuth();\n  const [userInfo, setUserInfo] = useState(null);\n  const accessToken = oktaAuth.getAccessToken();\n\n  const stopProp = e => {\n    e.stopPropagation();\n  };\n\n  useEffect(() => {\n    if (!authState.isAuthenticated) {\n      // When user isn't authenticated, forget any user info\n      setUserInfo(null);\n    } else {\n      oktaAuth.getUser().then(info => {\n        setUserInfo(info);\n      });\n    }\n  }, [authState, oktaAuth]); // Update if authState changes\n\n  const removeAccountRequestOptions = {\n    method: 'DELETE',\n    headers: {\n      Authorization: `Bearer ${accessToken}`\n    },\n    body: JSON.stringify({\n      email: `${userInfo && userInfo.email}`\n    })\n  };\n\n  const handleRemoveAccount = () => {\n    console.log(removeAccountRequestOptions.body);\n    fetch(config.serviceAPI.removeAccountURL, removeAccountRequestOptions).then(res => {\n      if (!res.ok) {\n        console.log(res);\n        window.alert(\"Error\");\n        Promise.reject(\"\");\n        return;\n      }\n\n      if (res.ok) {\n        oktaAuth.signOut();\n      }\n    });\n  };\n\n  return /*#__PURE__*/_jsxDEV(\"div\", {\n    className: \"modal-content\",\n    children: /*#__PURE__*/_jsxDEV(\"div\", {\n      className: \"confirmRemoveAccountModal\",\n      children: [/*#__PURE__*/_jsxDEV(\"h2\", {\n        children: \"Delete account\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 57,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"label\", {\n        children: \"Are you sure you want to delete your account?\"\n      }, void 0, false, {\n        fileName: _jsxFileName,\n        lineNumber: 58,\n        columnNumber: 9\n      }, this), /*#__PURE__*/_jsxDEV(\"div\", {\n        className: \"buttonContainer\",\n        children: [/*#__PURE__*/_jsxDEV(\"button\", {\n          className: \"noButton\",\n          onClick: e => removeModal(),\n          children: \"No\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 62,\n          columnNumber: 11\n        }, this), /*#__PURE__*/_jsxDEV(\"button\", {\n          className: \"yesButton\",\n          onClick: handleRemoveAccount,\n          children: \"Yes\"\n        }, void 0, false, {\n          fileName: _jsxFileName,\n          lineNumber: 65,\n          columnNumber: 11\n        }, this)]\n      }, void 0, true, {\n        fileName: _jsxFileName,\n        lineNumber: 61,\n        columnNumber: 9\n      }, this)]\n    }, void 0, true, {\n      fileName: _jsxFileName,\n      lineNumber: 56,\n      columnNumber: 7\n    }, this)\n  }, void 0, false, {\n    fileName: _jsxFileName,\n    lineNumber: 55,\n    columnNumber: 5\n  }, this);\n};\n\n_s(ConfirmRemoveAccountModal, \"/7FunoA1ejJNU8uKGTy1GZFqU2I=\", false, function () {\n  return [useOktaAuth];\n});\n\n_c = ConfirmRemoveAccountModal;\nexport default ConfirmRemoveAccountModal;\n\nvar _c;\n\n$RefreshReg$(_c, \"ConfirmRemoveAccountModal\");","map":{"version":3,"sources":["C:/Users/Bruger/Desktop/Web-projects/pipit/client/src/components/removeAccount/confirmRemoveAccountModal/ConfirmRemoveAccountModal.jsx"],"names":["React","useEffect","useState","useOktaAuth","config","ConfirmRemoveAccountModal","removeModal","headerMessage","bodyMessage","authState","oktaAuth","userInfo","setUserInfo","accessToken","getAccessToken","stopProp","e","stopPropagation","isAuthenticated","getUser","then","info","removeAccountRequestOptions","method","headers","Authorization","body","JSON","stringify","email","handleRemoveAccount","console","log","fetch","serviceAPI","removeAccountURL","res","ok","window","alert","Promise","reject","signOut"],"mappings":";;;AAAA,OAAOA,KAAP,IAAgBC,SAAhB,EAA2BC,QAA3B,QAA2C,OAA3C;AACA,SAASC,WAAT,QAA4B,kBAA5B;AACA,OAAO,iCAAP;AACA,OAAOC,MAAP,MAAmB,iBAAnB;;;AAEA,MAAMC,yBAAyB,GAAG,CAAC;AAAEC,EAAAA,WAAF;AAAeC,EAAAA,aAAf;AAA8BC,EAAAA;AAA9B,CAAD,KAAiD;AAAA;;AACjF,QAAM;AAAEC,IAAAA,SAAF;AAAaC,IAAAA;AAAb,MAA0BP,WAAW,EAA3C;AACA,QAAM,CAACQ,QAAD,EAAWC,WAAX,IAA0BV,QAAQ,CAAC,IAAD,CAAxC;AACA,QAAMW,WAAW,GAAGH,QAAQ,CAACI,cAAT,EAApB;;AAEA,QAAMC,QAAQ,GAAGC,CAAC,IAAI;AACpBA,IAAAA,CAAC,CAACC,eAAF;AACD,GAFD;;AAIAhB,EAAAA,SAAS,CAAC,MAAM;AACd,QAAI,CAACQ,SAAS,CAACS,eAAf,EAAgC;AAC9B;AACAN,MAAAA,WAAW,CAAC,IAAD,CAAX;AACD,KAHD,MAGO;AACLF,MAAAA,QAAQ,CAACS,OAAT,GAAmBC,IAAnB,CAAwBC,IAAI,IAAI;AAC9BT,QAAAA,WAAW,CAACS,IAAD,CAAX;AACD,OAFD;AAGD;AACF,GATQ,EASN,CAACZ,SAAD,EAAYC,QAAZ,CATM,CAAT,CATiF,CAkBtD;;AAE3B,QAAMY,2BAA2B,GAAG;AAClCC,IAAAA,MAAM,EAAE,QAD0B;AAElCC,IAAAA,OAAO,EAAE;AACPC,MAAAA,aAAa,EAAG,UAASZ,WAAY;AAD9B,KAFyB;AAKlCa,IAAAA,IAAI,EAAEC,IAAI,CAACC,SAAL,CACJ;AACEC,MAAAA,KAAK,EAAG,GAAElB,QAAQ,IAAIA,QAAQ,CAACkB,KAAM;AADvC,KADI;AAL4B,GAApC;;AAYA,QAAMC,mBAAmB,GAAG,MAAM;AAChCC,IAAAA,OAAO,CAACC,GAAR,CAAYV,2BAA2B,CAACI,IAAxC;AACAO,IAAAA,KAAK,CAAC7B,MAAM,CAAC8B,UAAP,CAAkBC,gBAAnB,EAAqCb,2BAArC,CAAL,CACGF,IADH,CACSgB,GAAD,IAAS;AACb,UAAI,CAACA,GAAG,CAACC,EAAT,EAAa;AACXN,QAAAA,OAAO,CAACC,GAAR,CAAYI,GAAZ;AACAE,QAAAA,MAAM,CAACC,KAAP,CAAa,OAAb;AACAC,QAAAA,OAAO,CAACC,MAAR,CAAe,EAAf;AACA;AACD;;AACD,UAAIL,GAAG,CAACC,EAAR,EAAY;AACV3B,QAAAA,QAAQ,CAACgC,OAAT;AACD;AACF,KAXH;AAYD,GAdD;;AAgBA,sBACE;AAAK,IAAA,SAAS,EAAC,eAAf;AAAA,2BACE;AAAK,MAAA,SAAS,EAAC,2BAAf;AAAA,8BACE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cADF,eAEE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cAFF,eAKE;AAAK,QAAA,SAAS,EAAC,iBAAf;AAAA,gCACE;AAAQ,UAAA,SAAS,EAAC,UAAlB;AAA6B,UAAA,OAAO,EAAE1B,CAAC,IAAIV,WAAW,EAAtD;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBADF,eAIE;AAAQ,UAAA,SAAS,EAAC,WAAlB;AAA8B,UAAA,OAAO,EAAEwB,mBAAvC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAJF;AAAA;AAAA;AAAA;AAAA;AAAA,cALF;AAAA;AAAA;AAAA;AAAA;AAAA;AADF;AAAA;AAAA;AAAA;AAAA,UADF;AAkBD,CAlED;;GAAMzB,yB;UAC4BF,W;;;KAD5BE,yB;AAoEN,eAAeA,yBAAf","sourcesContent":["import React, { useEffect, useState } from 'react'\r\nimport { useOktaAuth } from '@okta/okta-react';\r\nimport \"./ConfirmRemoveAccountModal.css\"\r\nimport config from '../../../config';\r\n\r\nconst ConfirmRemoveAccountModal = ({ removeModal, headerMessage, bodyMessage }) => {\r\n  const { authState, oktaAuth } = useOktaAuth();\r\n  const [userInfo, setUserInfo] = useState(null);\r\n  const accessToken = oktaAuth.getAccessToken();\r\n\r\n  const stopProp = e => {\r\n    e.stopPropagation()\r\n  }\r\n\r\n  useEffect(() => {\r\n    if (!authState.isAuthenticated) {\r\n      // When user isn't authenticated, forget any user info\r\n      setUserInfo(null);\r\n    } else {\r\n      oktaAuth.getUser().then(info => {\r\n        setUserInfo(info);\r\n      });\r\n    }\r\n  }, [authState, oktaAuth]); // Update if authState changes\r\n\r\n  const removeAccountRequestOptions = {\r\n    method: 'DELETE',\r\n    headers: {\r\n      Authorization: `Bearer ${accessToken}`,\r\n    },\r\n    body: JSON.stringify(\r\n      {\r\n        email: `${userInfo && userInfo.email}`,\r\n      }\r\n    )\r\n  }\r\n\r\n  const handleRemoveAccount = () => {\r\n    console.log(removeAccountRequestOptions.body)\r\n    fetch(config.serviceAPI.removeAccountURL, removeAccountRequestOptions)\r\n      .then((res) => {\r\n        if (!res.ok) {\r\n          console.log(res)\r\n          window.alert(\"Error\")\r\n          Promise.reject(\"\")\r\n          return\r\n        }\r\n        if (res.ok) {\r\n          oktaAuth.signOut()\r\n        }\r\n      })\r\n  }\r\n\r\n  return (\r\n    <div className=\"modal-content\">\r\n      <div className=\"confirmRemoveAccountModal\">\r\n        <h2>Delete account</h2>\r\n        <label>\r\n          Are you sure you want to delete your account?\r\n        </label>\r\n        <div className=\"buttonContainer\">\r\n          <button className=\"noButton\" onClick={e => removeModal()}>\r\n            No\r\n          </button>\r\n          <button className=\"yesButton\" onClick={handleRemoveAccount}>\r\n            Yes\r\n          </button>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  )\r\n}\r\n\r\nexport default ConfirmRemoveAccountModal\r\n"]},"metadata":{},"sourceType":"module"}