From 115520f6dcf92a33e305ecd489062a42fe4907c1 Mon Sep 17 00:00:00 2001 From: Jonathan Zernik Date: Mon, 28 Mar 2022 16:01:51 -0700 Subject: [PATCH] Remove media tab (#2046) * Remove media tab * Fix liked tab in profile page * Remove log line * Update frontend build --- frontend/src/components/Profile/index.js | 35 +++++++++---------- .../webapp/static/build/asset-manifest.json | 12 +++---- .../admin/webapp/static/build/index.html | 2 +- ...ifest.bc046f54d06329b2e84e733ad62e3053.js} | 12 +++---- .../webapp/static/build/service-worker.js | 2 +- .../build/static/js/5.7dc1a0b0.chunk.js | 2 ++ .../build/static/js/5.7dc1a0b0.chunk.js.map | 1 + .../build/static/js/5.af0b8162.chunk.js | 2 -- .../build/static/js/5.af0b8162.chunk.js.map | 1 - ...n.a34d324b.js => runtime-main.4b05e8f4.js} | 4 +-- ...4b.js.map => runtime-main.4b05e8f4.js.map} | 2 +- 11 files changed, 37 insertions(+), 38 deletions(-) rename squeaknode/admin/webapp/static/build/{precache-manifest.4f14c68f1c9bcc9dc9343a1e0a46cbeb.js => precache-manifest.bc046f54d06329b2e84e733ad62e3053.js} (79%) create mode 100644 squeaknode/admin/webapp/static/build/static/js/5.7dc1a0b0.chunk.js create mode 100644 squeaknode/admin/webapp/static/build/static/js/5.7dc1a0b0.chunk.js.map delete mode 100644 squeaknode/admin/webapp/static/build/static/js/5.af0b8162.chunk.js delete mode 100644 squeaknode/admin/webapp/static/build/static/js/5.af0b8162.chunk.js.map rename squeaknode/admin/webapp/static/build/static/js/{runtime-main.a34d324b.js => runtime-main.4b05e8f4.js} (96%) rename squeaknode/admin/webapp/static/build/static/js/{runtime-main.a34d324b.js.map => runtime-main.4b05e8f4.js.map} (98%) diff --git a/frontend/src/components/Profile/index.js b/frontend/src/components/Profile/index.js index 56045eed..3edd067b 100644 --- a/frontend/src/components/Profile/index.js +++ b/frontend/src/components/Profile/index.js @@ -243,8 +243,6 @@ const Profile = (props) => { const handleMenuClick = (e) => { e.stopPropagation() } - console.log(user && user.getProfileName()); - return(
@@ -345,24 +343,25 @@ const Profile = (props) => {
changeTab('Squeaks&Replies')} className={activeTab ==='Squeaks&Replies' ? `profile-nav-item activeTab` : `profile-nav-item`}> Squeaks & replies
-
changeTab('Media')} className={activeTab ==='Media' ? `profile-nav-item activeTab` : `profile-nav-item`}> - Media -
-
changeTab('Likes')} className={activeTab ==='Likes' ? `profile-nav-item activeTab` : `profile-nav-item`}> - Likes +
changeTab('Liked')} className={activeTab ==='Liked' ? `profile-nav-item activeTab` : `profile-nav-item`}> + Liked
{activeTab === 'Squeaks' ? profileSqueaks.map(t=>{ if(!t.getReplyTo()) return - }) : activeTab === 'Squeaks&Replies' ? + }) : + activeTab === 'Squeaks&Replies' ? profileSqueaks.map(t=>{ return }) : - activeTab === 'Likes' ? - null: activeTab === 'Media' ? - null: null} + activeTab === 'Liked' ? + profileSqueaks.map(t=>{ + if(t.getLikedTimeMs()) + return + }) : + null} {/* TODO: fix get loading state by doing this: https://medium.com/stashaway-engineering/react-redux-tips-better-way-to-handle-loading-flags-in-your-reducers-afda42a804c6 */} {profileSqueaks.length > 0 && <> @@ -409,14 +408,14 @@ const Profile = (props) => {
-
-
-
- - setName(e.target.value)} type="text" name="name" className="edit-input"/> -
+ +
+
+ + setName(e.target.value)} type="text" name="name" className="edit-input"/>
- +
+
diff --git a/squeaknode/admin/webapp/static/build/asset-manifest.json b/squeaknode/admin/webapp/static/build/asset-manifest.json index d873696f..5f907362 100644 --- a/squeaknode/admin/webapp/static/build/asset-manifest.json +++ b/squeaknode/admin/webapp/static/build/asset-manifest.json @@ -3,8 +3,8 @@ "main.css": "/static/css/main.6b2fbaff.chunk.css", "main.js": "/static/js/main.14f1c503.chunk.js", "main.js.map": "/static/js/main.14f1c503.chunk.js.map", - "runtime-main.js": "/static/js/runtime-main.a34d324b.js", - "runtime-main.js.map": "/static/js/runtime-main.a34d324b.js.map", + "runtime-main.js": "/static/js/runtime-main.4b05e8f4.js", + "runtime-main.js.map": "/static/js/runtime-main.4b05e8f4.js.map", "static/js/2.9336a0d0.chunk.js": "/static/js/2.9336a0d0.chunk.js", "static/js/2.9336a0d0.chunk.js.map": "/static/js/2.9336a0d0.chunk.js.map", "static/css/3.1f6bb621.chunk.css": "/static/css/3.1f6bb621.chunk.css", @@ -14,10 +14,10 @@ "static/js/4.a6dcfe5f.chunk.js": "/static/js/4.a6dcfe5f.chunk.js", "static/js/4.a6dcfe5f.chunk.js.map": "/static/js/4.a6dcfe5f.chunk.js.map", "static/css/5.3aaab79d.chunk.css": "/static/css/5.3aaab79d.chunk.css", - "static/js/5.af0b8162.chunk.js": "/static/js/5.af0b8162.chunk.js", - "static/js/5.af0b8162.chunk.js.map": "/static/js/5.af0b8162.chunk.js.map", + "static/js/5.7dc1a0b0.chunk.js": "/static/js/5.7dc1a0b0.chunk.js", + "static/js/5.7dc1a0b0.chunk.js.map": "/static/js/5.7dc1a0b0.chunk.js.map", "index.html": "/index.html", - "precache-manifest.4f14c68f1c9bcc9dc9343a1e0a46cbeb.js": "/precache-manifest.4f14c68f1c9bcc9dc9343a1e0a46cbeb.js", + "precache-manifest.bc046f54d06329b2e84e733ad62e3053.js": "/precache-manifest.bc046f54d06329b2e84e733ad62e3053.js", "service-worker.js": "/service-worker.js", "static/css/3.1f6bb621.chunk.css.map": "/static/css/3.1f6bb621.chunk.css.map", "static/css/4.6512f3a3.chunk.css.map": "/static/css/4.6512f3a3.chunk.css.map", @@ -27,7 +27,7 @@ "static/media/icon.a0c2d343.svg": "/static/media/icon.a0c2d343.svg" }, "entrypoints": [ - "static/js/runtime-main.a34d324b.js", + "static/js/runtime-main.4b05e8f4.js", "static/js/2.9336a0d0.chunk.js", "static/css/main.6b2fbaff.chunk.css", "static/js/main.14f1c503.chunk.js" diff --git a/squeaknode/admin/webapp/static/build/index.html b/squeaknode/admin/webapp/static/build/index.html index f307ad97..03d5e30f 100644 --- a/squeaknode/admin/webapp/static/build/index.html +++ b/squeaknode/admin/webapp/static/build/index.html @@ -1 +1 @@ -Squeaknode
\ No newline at end of file +Squeaknode
\ No newline at end of file diff --git a/squeaknode/admin/webapp/static/build/precache-manifest.4f14c68f1c9bcc9dc9343a1e0a46cbeb.js b/squeaknode/admin/webapp/static/build/precache-manifest.bc046f54d06329b2e84e733ad62e3053.js similarity index 79% rename from squeaknode/admin/webapp/static/build/precache-manifest.4f14c68f1c9bcc9dc9343a1e0a46cbeb.js rename to squeaknode/admin/webapp/static/build/precache-manifest.bc046f54d06329b2e84e733ad62e3053.js index 00cfe9c1..bdf81449 100644 --- a/squeaknode/admin/webapp/static/build/precache-manifest.4f14c68f1c9bcc9dc9343a1e0a46cbeb.js +++ b/squeaknode/admin/webapp/static/build/precache-manifest.bc046f54d06329b2e84e733ad62e3053.js @@ -1,6 +1,6 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ { - "revision": "53755e3c00dd514b14ff440b9d3e0a78", + "revision": "12c469de60ed14a12cfff56763b62553", "url": "/index.html" }, { @@ -12,7 +12,7 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/css/4.6512f3a3.chunk.css" }, { - "revision": "2c70a0ca42b6f45b2e26", + "revision": "00bf7180042992d7f310", "url": "/static/css/5.3aaab79d.chunk.css" }, { @@ -36,16 +36,16 @@ self.__precacheManifest = (self.__precacheManifest || []).concat([ "url": "/static/js/4.a6dcfe5f.chunk.js" }, { - "revision": "2c70a0ca42b6f45b2e26", - "url": "/static/js/5.af0b8162.chunk.js" + "revision": "00bf7180042992d7f310", + "url": "/static/js/5.7dc1a0b0.chunk.js" }, { "revision": "3401adc27893fd7175ac", "url": "/static/js/main.14f1c503.chunk.js" }, { - "revision": "d47ae313184b63388df1", - "url": "/static/js/runtime-main.a34d324b.js" + "revision": "b8a697d145e06313175a", + "url": "/static/js/runtime-main.4b05e8f4.js" }, { "revision": "a0c2d343127a93b025409da6fd970700", diff --git a/squeaknode/admin/webapp/static/build/service-worker.js b/squeaknode/admin/webapp/static/build/service-worker.js index c7d2b5ae..389af708 100644 --- a/squeaknode/admin/webapp/static/build/service-worker.js +++ b/squeaknode/admin/webapp/static/build/service-worker.js @@ -14,7 +14,7 @@ importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js"); importScripts( - "/precache-manifest.4f14c68f1c9bcc9dc9343a1e0a46cbeb.js" + "/precache-manifest.bc046f54d06329b2e84e733ad62e3053.js" ); self.addEventListener('message', (event) => { diff --git a/squeaknode/admin/webapp/static/build/static/js/5.7dc1a0b0.chunk.js b/squeaknode/admin/webapp/static/build/static/js/5.7dc1a0b0.chunk.js new file mode 100644 index 00000000..97167929 --- /dev/null +++ b/squeaknode/admin/webapp/static/build/static/js/5.7dc1a0b0.chunk.js @@ -0,0 +1,2 @@ +(this["webpackJsonptwitter-frontend"]=this["webpackJsonptwitter-frontend"]||[]).push([[5],{136:function(e,a,t){},138:function(e,a,t){"use strict";t.r(a);var n=t(7),l=t(0),c=t.n(l),r=(t(136),t(8)),i=t(14),m=t(17),o=t(12),s=(t(16),t(18)),u=(t(39),t(5)),d=t(3),p=t(13),f=t(11);a.default=Object(i.h)((function(e){var a=Object(l.useState)("Squeaks"),t=Object(n.a)(a,2),i=t[0],E=t[1],v=Object(l.useState)(!1),N=Object(n.a)(v,2),b=N[0],k=N[1],g=Object(l.useState)(""),y=Object(n.a)(g,2),O=y[0],j=y[1],h=Object(l.useState)(""),C=Object(n.a)(h,2),S=C[0],w=C[1],I=Object(l.useState)(!1),P=Object(n.a)(I,2),q=P[0],x=P[1],T=Object(l.useState)(!1),M=Object(n.a)(T,2),B=M[0],R=M[1],L=Object(l.useState)(!1),F=Object(n.a)(L,2),H=F[0],A=F[1],D=Object(l.useState)(!1),K=Object(n.a)(D,2),V=K[0],J=K[1],U=Object(l.useState)(!1),z=Object(n.a)(U,2),G=z[0],Q=z[1],W=Object(l.useState)(!1),X=Object(n.a)(W,2),Y=(X[0],X[1]),Z=Object(l.useState)("Sats Spent"),$=Object(n.a)(Z,2),_=$[0],ee=$[1],ae=Object(l.useState)(!1),te=Object(n.a)(ae,2),ne=te[0],le=te[1],ce=e.match.params.username,re=Object(d.c)(f.v),ie=Object(d.c)(f.r),me=Object(d.c)(f.w),oe=Object(d.c)(p.j),se=Object(d.b)();Object(l.useEffect)((function(){window.scrollTo(0,0),se(Object(p.e)(e.match.params.username)),ye(),x(!1),j("")}),[e.match.params.username]);var ue=Object(l.useRef)(!0);Object(l.useEffect)((function(){ue.current?ue.current=!1:document.getElementsByTagName("body")[0].style.cssText=ne&&"overflow-y: hidden; margin-right: 17px"}),[ne]),Object(l.useEffect)((function(){return function(){return document.getElementsByTagName("body")[0].style.cssText=""}}),[]);var de=function(e){E(e)},pe=function(e,a){le(!ne),Y(!1),j(oe.getProfileName()),setTimeout((function(){x(!q)}),20)},fe=function(){le(!ne),Y(!1),setTimeout((function(){R(!B)}),20)},Ee=function(){le(!ne),Y(!1),setTimeout((function(){A(!H)}),20)},ve=function(e,a){le(!ne),a&&ee(a),a&&ee(a),setTimeout((function(){J(!V)}),20)},Ne=function(e,a){le(!ne),Y(!1),setTimeout((function(){Q(!G)}),20)},be=function(e){e.stopPropagation()},ke=function(e){if(null!=e){var a=new FileReader;a.addEventListener("load",(function(){var e=a.result.split(",")[1];ge(e)}),!1),e&&a.readAsDataURL(e)}},ge=function(e){se(Object(p.s)({profileId:oe.getProfileId(),imageBase64:e})),Y(!0),pe()},ye=function(){se(Object(f.a)()),se(Object(f.f)({profilePubkey:e.match.params.username,limit:10,lastSqueak:null}))},Oe=function(){k(!b)};return c.a.createElement("div",null,c.a.createElement("div",null,c.a.createElement("div",{className:"profile-wrapper"},c.a.createElement("div",{className:"profile-header-wrapper"},c.a.createElement("div",{className:"profile-header-back"},c.a.createElement("div",{onClick:function(){return window.history.back()},className:"header-back-wrapper"},c.a.createElement(r.a,null))),c.a.createElement("div",{className:"profile-header-content"},c.a.createElement("div",{className:"profile-header-name"},ce))),c.a.createElement("div",{className:"profile-banner-wrapper"},c.a.createElement("img",{alt:""})),c.a.createElement("div",{className:"profile-details-wrapper"},c.a.createElement("div",{className:"profile-options"},c.a.createElement("div",{className:"profile-image-wrapper"},c.a.createElement("img",{src:oe?"".concat(Object(m.a)(oe)):null,alt:""})),oe&&c.a.createElement("div",{id:"profileMoreMenu",onClick:Oe,className:"Nav-link"},c.a.createElement("div",{className:"Nav-item-hover"},c.a.createElement(r.w,null)),c.a.createElement("div",{onClick:function(){return Oe()},style:{display:b?"block":"none"},className:"more-menu-background"},c.a.createElement("div",{className:"more-modal-wrapper"},b?c.a.createElement("div",{style:{top:document.getElementById("profileMoreMenu")&&"".concat(document.getElementById("profileMoreMenu").getBoundingClientRect().top-40,"px"),left:document.getElementById("profileMoreMenu")&&"".concat(document.getElementById("profileMoreMenu").getBoundingClientRect().left,"px"),height:"210px"},onClick:function(e){return function(e){e.stopPropagation()}(e)},className:"more-menu-content"},c.a.createElement("div",{onClick:fe,className:"more-menu-item"},c.a.createElement("span",null,"Delete Profile")),c.a.createElement("div",{onClick:pe,className:"more-menu-item"},c.a.createElement("span",null,"Edit Profile")),oe.getHasPrivateKey()&&c.a.createElement("div",{onClick:Ee,className:"more-menu-item"},c.a.createElement("span",null,"Export Private Key"))):null))),oe&&c.a.createElement("div",{onClick:function(e){return oe.getFollowing()?function(e,a){console.log(e),e.stopPropagation(),se(Object(p.u)(a))}(e,oe.getProfileId()):function(e,a){e.stopPropagation(),se(Object(p.q)(a))}(e,oe.getProfileId())},className:oe.getFollowing()?"unfollow-switch profile-edit-button":"profile-edit-button"},c.a.createElement("span",null,c.a.createElement("span",null,oe.getFollowing()?"Following":"Follow"))),!oe&&c.a.createElement("div",{onClick:function(e){return Ne("create")},className:"profiles-create-button"},c.a.createElement("span",null,"Add Contact Profile"))),c.a.createElement("div",{className:"profile-details-box"},c.a.createElement("div",{className:"profile-name"},oe?oe.getProfileName():""),c.a.createElement("div",{className:"profile-username"},"@",ce),c.a.createElement("div",{className:"profile-info-box"},"\xa0")),c.a.createElement("div",{className:"profile-social-box"},c.a.createElement("div",{onClick:function(){return ve(0,"Sats Spent")}},c.a.createElement("p",{className:"follow-num"}," 0 "),c.a.createElement("p",{className:"follow-text"}," sats spent ")),c.a.createElement("div",{onClick:function(){return ve(0,"Sats Earned")}},c.a.createElement("p",{className:"follow-num"}," 0 "),c.a.createElement("p",{className:"follow-text"}," sats earned ")))),c.a.createElement("div",{className:"profile-nav-menu"},c.a.createElement("div",{key:"squeaks",onClick:function(){return de("Squeaks")},className:"Squeaks"===i?"profile-nav-item activeTab":"profile-nav-item"},"Squeaks"),c.a.createElement("div",{key:"replies",onClick:function(){return de("Squeaks&Replies")},className:"Squeaks&Replies"===i?"profile-nav-item activeTab":"profile-nav-item"},"Squeaks & replies"),c.a.createElement("div",{key:"liked",onClick:function(){return de("Liked")},className:"Liked"===i?"profile-nav-item activeTab":"profile-nav-item"},"Liked")),"Squeaks"===i?re.map((function(e){if(!e.getReplyTo())return c.a.createElement(s.a,{squeak:e,key:e.getSqueakHash(),id:e.getSqueakHash(),user:e.getAuthor()})})):"Squeaks&Replies"===i?re.map((function(e){return c.a.createElement(s.a,{squeak:e,key:e.getSqueakHash(),id:e.getSqueakHash(),user:e.getAuthor()})})):"Liked"===i?re.map((function(e){if(e.getLikedTimeMs())return c.a.createElement(s.a,{squeak:e,key:e.getSqueakHash(),id:e.getSqueakHash(),user:e.getAuthor()})})):null,re.length>0&&c.a.createElement(c.a.Fragment,null,"loading"==me?c.a.createElement(o.a,null):c.a.createElement("div",{onClick:function(){return function(){var a;null==(a=re)||0===a.length||a.slice(-1)[0];se(Object(f.f)({profilePubkey:e.match.params.username,limit:10,lastSqueak:ie}))}()},className:"squeak-btn-side squeak-btn-active"},"Load more"))),c.a.createElement("div",{onClick:function(){return pe()},style:{display:q?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return pe()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},"'Edit Profile'"),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){se(Object(p.m)({profileId:oe.getProfileId()})),Y(!0),pe()},className:"save-modal-btn"},"Clear Image")),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){oe.getProfileId();se(Object(p.t)({profileId:oe.getProfileId(),profileName:O})),Y(!0),pe()},className:"save-modal-btn"},"Save"))),c.a.createElement("div",{className:"modal-body"},c.a.createElement("div",{className:"modal-banner"}),c.a.createElement("div",{className:"modal-profile-pic"},c.a.createElement("div",{className:"modal-back-pic"},c.a.createElement("img",{src:oe?"".concat(Object(m.a)(oe)):null,alt:"profile"}),c.a.createElement("div",null,c.a.createElement(r.y,null),c.a.createElement("input",{onChange:function(){return function(){var e=document.getElementById("avatar").files[0];ke(e)}()},title:" ",id:"avatar",style:{opacity:"0"},type:"file"})))),c.a.createElement("form",{className:"edit-form"},c.a.createElement("div",{className:"edit-input-wrap"},c.a.createElement("div",{className:"edit-input-content"},c.a.createElement("label",null,"Name"),c.a.createElement("input",{defaultValue:"",onChange:function(e){return j(e.target.value)},type:"text",name:"name",className:"edit-input"}))))))),c.a.createElement("div",{onClick:function(){return fe()},style:{display:B?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return fe()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},"'Delete Profile'"),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){var e={profileId:oe.getProfileId()};console.log("Delete user here"),se(Object(p.p)(e)),fe()},className:"save-modal-btn"},"Delete"))))),c.a.createElement("div",{onClick:function(){return Ee()},style:{display:H?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return Ee()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},"'Export Private Key'"),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){var e={profileId:oe.getProfileId()};se(Object(p.g)(e)).then(u.d).then((function(e){console.log(e),w(e)}))},className:"save-modal-btn"},"Export"))),c.a.createElement("div",{className:"modal-body"},c.a.createElement("form",{className:"edit-form"},c.a.createElement("div",{className:"edit-input-wrap"},c.a.createElement("div",{className:"edit-input-content"},c.a.createElement("label",null,"Private Key"),c.a.createElement("input",{defaultValue:S,readOnly:!0,type:"text",name:"name",className:"edit-input"}))))))),c.a.createElement("div",{onClick:function(){return ve()},style:{display:V?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header no-b-border"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return pe()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},null)),c.a.createElement("div",{className:"modal-body"},c.a.createElement("div",{className:"explore-nav-menu"},c.a.createElement("div",{onClick:function(){return ee("Sats Spent")},className:"Sats Spent"==_?"explore-nav-item activeTab":"explore-nav-item"},"Sats Spent"),c.a.createElement("div",{onClick:function(){return ee("Sats Earned")},className:"Sats Earned"==_?"explore-nav-item activeTab":"explore-nav-item"},"Sats Earned")),c.a.createElement("div",{className:"modal-scroll"})))),c.a.createElement("div",{onClick:function(){return Ne()},style:{display:G?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return Ne()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},"Add Contact Profile"),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){se(Object(p.n)({pubkey:ce,profileName:O})).then((function(){se(Object(p.e)(e.match.params.username))})),Ne()},className:"save-modal-btn"},"Submit"))),c.a.createElement("div",{className:"modal-body"},c.a.createElement("form",{className:"edit-form"},c.a.createElement("div",{className:"edit-input-wrap"},c.a.createElement("div",{className:"edit-input-content"},c.a.createElement("label",null,"Profile Name"),c.a.createElement("input",{defaultValue:"",onChange:function(e){return j(e.target.value)},type:"text",name:"name",className:"edit-input"}))),c.a.createElement("div",{className:"edit-input-wrap"},c.a.createElement("div",{className:"edit-input-content"},c.a.createElement("label",null,"Public Key"),c.a.createElement("input",{defaultValue:ce,readOnly:!0,type:"text",name:"name",className:"edit-input"})))))))))}))}}]); +//# sourceMappingURL=5.7dc1a0b0.chunk.js.map \ No newline at end of file diff --git a/squeaknode/admin/webapp/static/build/static/js/5.7dc1a0b0.chunk.js.map b/squeaknode/admin/webapp/static/build/static/js/5.7dc1a0b0.chunk.js.map new file mode 100644 index 00000000..f345461f --- /dev/null +++ b/squeaknode/admin/webapp/static/build/static/js/5.7dc1a0b0.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["components/Profile/index.js"],"names":["withRouter","props","useState","activeTab","setActiveTab","moreMenu","setMoreMenu","editName","setName","privateKey","setPrivateKey","editModalOpen","setEditModalOpen","deleteModalOpen","setDeleteModalOpen","exportModalOpen","setExportModalOpen","spendingModalOpen","setSpendingModalOpen","createModalOpen","setCreateModalOpen","setSaved","tab","setTab","styleBody","setStyleBody","userParam","match","params","username","profileSqueaks","useSelector","selectProfileSqueaks","lastUserSqueak","selectLastProfileSqueak","profileSqueaksStatus","selectProfileSqueaksStatus","user","selectCurrentProfile","dispatch","useDispatch","useEffect","window","scrollTo","fetchProfile","reloadSqueaks","isInitialMount","useRef","current","document","getElementsByTagName","style","cssText","changeTab","toggleEditModal","param","type","getProfileName","setTimeout","toggleDeleteModal","toggleExportModal","toggleSpendingModal","toggleCreateModal","handleModalClick","e","stopPropagation","uploadAvatar","file","reader","FileReader","addEventListener","imageBase64Stripped","result","split","uploadAvatarAsBase64","readAsDataURL","imageBase64","setProfileImage","profileId","getProfileId","clearProfileSqueaks","fetchProfileSqueaks","profilePubkey","limit","lastSqueak","openMore","className","onClick","history","back","alt","src","getProfileImageSrcString","id","display","top","getElementById","getBoundingClientRect","left","height","handleMenuClick","getHasPrivateKey","getFollowing","console","log","setUnfollowProfile","unfollowUser","setFollowProfile","followUser","key","map","t","getReplyTo","squeak","getSqueakHash","getAuthor","getLikedTimeMs","length","squeakLst","slice","getMoreSqueaks","setClearProfileImage","setRenameProfile","profileName","onChange","files","changeAvatar","title","opacity","defaultValue","target","value","name","values","setDeleteProfile","getProfilePrivateKey","then","unwrapResult","readOnly","setCreateContactProfile","pubkey"],"mappings":"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","file":"static/js/5.7dc1a0b0.chunk.js","sourcesContent":["import React , { useEffect, useState, useContext, useRef} from 'react'\r\nimport './style.scss'\r\nimport { ICON_ARROWBACK, ICON_MARKDOWN, ICON_DATE, ICON_CLOSE, ICON_UPLOAD, ICON_NEWMSG, ICON_SETTINGS, ICON_DARK } from '../../Icons'\r\nimport { withRouter, Link } from 'react-router-dom'\r\nimport { getProfileImageSrcString } from '../../squeakimages/images';\r\nimport Loader from '../Loader'\r\nimport moment from 'moment'\r\nimport SqueakCard from '../SqueakCard'\r\nimport {API_URL} from '../../config'\r\n\r\nimport { unwrapResult } from '@reduxjs/toolkit'\r\nimport { useSelector } from 'react-redux'\r\nimport { useDispatch } from 'react-redux'\r\n\r\nimport {\r\n fetchProfile,\r\n setFollowProfile,\r\n setUnfollowProfile,\r\n selectCurrentProfile,\r\n setDeleteProfile,\r\n setRenameProfile,\r\n setCreateContactProfile,\r\n setProfileImage,\r\n setClearProfileImage,\r\n getProfilePrivateKey,\r\n} from '../../features/profiles/profilesSlice'\r\nimport {\r\n fetchProfileSqueaks,\r\n selectProfileSqueaks,\r\n selectLastProfileSqueak,\r\n selectProfileSqueaksStatus,\r\n clearProfileSqueaks,\r\n} from '../../features/squeaks/squeaksSlice'\r\n\r\n\r\nconst Profile = (props) => {\r\n const [activeTab, setActiveTab] = useState('Squeaks')\r\n const [moreMenu, setMoreMenu] = useState(false)\r\n const [editName, setName] = useState('')\r\n const [privateKey, setPrivateKey] = useState('')\r\n const [editModalOpen, setEditModalOpen] = useState(false)\r\n const [deleteModalOpen, setDeleteModalOpen] = useState(false)\r\n const [exportModalOpen, setExportModalOpen] = useState(false)\r\n const [spendingModalOpen, setSpendingModalOpen] = useState(false)\r\n const [createModalOpen, setCreateModalOpen] = useState(false)\r\n const [saved, setSaved] = useState(false)\r\n const [tab, setTab] = useState('Sats Spent')\r\n const [styleBody, setStyleBody] = useState(false)\r\n const userParam = props.match.params.username\r\n\r\n const profileSqueaks = useSelector(selectProfileSqueaks);\r\n const lastUserSqueak = useSelector(selectLastProfileSqueak);\r\n const profileSqueaksStatus = useSelector(selectProfileSqueaksStatus);\r\n // const privateKey = 'TODO';\r\n\r\n const user = useSelector(selectCurrentProfile);\r\n const dispatch = useDispatch();\r\n\r\n\r\n\r\n useEffect(() => {\r\n window.scrollTo(0, 0)\r\n dispatch(fetchProfile(props.match.params.username));\r\n reloadSqueaks();\r\n //preventing edit modal from apprearing after clicking a user on memOpen\r\n setEditModalOpen(false)\r\n setName('')\r\n }, [props.match.params.username])\r\n\r\n const isInitialMount = useRef(true);\r\n useEffect(() => {\r\n if (isInitialMount.current){ isInitialMount.current = false }\r\n else {\r\n document.getElementsByTagName(\"body\")[0].style.cssText = styleBody && \"overflow-y: hidden; margin-right: 17px\"\r\n }\r\n }, [styleBody])\r\n\r\n useEffect( () => () => document.getElementsByTagName(\"body\")[0].style.cssText = \"\", [] )\r\n\r\n const changeTab = (tab) => {\r\n setActiveTab(tab)\r\n }\r\n\r\n const editProfile = () => {\r\n let values = {\r\n profileId: user.getProfileId(),\r\n name: editName,\r\n }\r\n dispatch(setRenameProfile({\r\n profileId: user.getProfileId(),\r\n profileName: editName,\r\n }));\r\n // TODO: chain action to update profile squeaks with the new name.\r\n setSaved(true)\r\n toggleEditModal()\r\n }\r\n\r\n const deleteProfile = () => {\r\n let values = {\r\n profileId: user.getProfileId(),\r\n }\r\n console.log('Delete user here');\r\n dispatch(setDeleteProfile(values));\r\n toggleDeleteModal();\r\n }\r\n\r\n\r\n const exportPrivateKey = () => {\r\n let values = {\r\n profileId: user.getProfileId(),\r\n }\r\n dispatch(getProfilePrivateKey(values))\r\n .then(unwrapResult)\r\n .then((privateKey) =>{\r\n console.log(privateKey);\r\n setPrivateKey(privateKey);\r\n });\r\n }\r\n\r\n const createContactProfile = () => {\r\n dispatch(setCreateContactProfile({\r\n pubkey: userParam,\r\n profileName: editName,\r\n }))\r\n .then(() => {\r\n dispatch(fetchProfile(props.match.params.username));\r\n });\r\n toggleCreateModal();\r\n }\r\n\r\n const toggleEditModal = (param, type) => {\r\n setStyleBody(!styleBody)\r\n setSaved(false)\r\n setName(user.getProfileName())\r\n setTimeout(()=>{ setEditModalOpen(!editModalOpen) },20)\r\n }\r\n\r\n const toggleDeleteModal = () => {\r\n setStyleBody(!styleBody)\r\n setSaved(false)\r\n setTimeout(()=>{ setDeleteModalOpen(!deleteModalOpen) },20)\r\n }\r\n\r\n const toggleExportModal = () => {\r\n setStyleBody(!styleBody)\r\n setSaved(false)\r\n setTimeout(()=>{ setExportModalOpen(!exportModalOpen) },20)\r\n }\r\n\r\n const toggleSpendingModal = (param, type) => {\r\n setStyleBody(!styleBody)\r\n if(type){setTab(type)}\r\n if(type){setTab(type)}\r\n setTimeout(()=>{ setSpendingModalOpen(!spendingModalOpen) },20)\r\n }\r\n\r\n const toggleCreateModal = (param, type) => {\r\n setStyleBody(!styleBody)\r\n setSaved(false)\r\n setTimeout(()=>{ setCreateModalOpen(!createModalOpen) },20)\r\n }\r\n\r\n const handleModalClick = (e) => {\r\n e.stopPropagation()\r\n }\r\n\r\n const followUser = (e,id) => {\r\n e.stopPropagation()\r\n dispatch(setFollowProfile(id));\r\n }\r\n\r\n const unfollowUser = (e,id) => {\r\n console.log(e);\r\n e.stopPropagation()\r\n dispatch(setUnfollowProfile(id));\r\n }\r\n\r\n const changeAvatar = () => {\r\n let file = document.getElementById('avatar').files[0];\r\n uploadAvatar(file);\r\n }\r\n\r\n const clearAvatar = () => {\r\n dispatch(setClearProfileImage({\r\n profileId: user.getProfileId(),\r\n }));\r\n setSaved(true)\r\n toggleEditModal()\r\n }\r\n\r\n const uploadAvatar = (file) => {\r\n if (file == null)\r\n return;\r\n const reader = new FileReader();\r\n reader.addEventListener('load', () => {\r\n // convert image file to base64 string\r\n // preview.src = reader.result;\r\n const imageBase64Stripped = reader.result.split(',')[1];\r\n uploadAvatarAsBase64(imageBase64Stripped);\r\n }, false);\r\n if (file) {\r\n reader.readAsDataURL(file);\r\n }\r\n };\r\n\r\n const uploadAvatarAsBase64 = (imageBase64) => {\r\n dispatch(setProfileImage({\r\n profileId: user.getProfileId(),\r\n imageBase64: imageBase64,\r\n }));\r\n setSaved(true)\r\n toggleEditModal()\r\n };\r\n\r\n const getLastSqueak = (squeakLst) => {\r\n if (squeakLst == null) {\r\n return null;\r\n } if (squeakLst.length === 0) {\r\n return null;\r\n }\r\n return squeakLst.slice(-1)[0];\r\n };\r\n\r\n const getMoreSqueaks = () => {\r\n let lastSqueak = getLastSqueak(profileSqueaks);\r\n dispatch(fetchProfileSqueaks({\r\n profilePubkey: props.match.params.username,\r\n limit: 10,\r\n lastSqueak: lastUserSqueak,\r\n }));\r\n }\r\n\r\n const reloadSqueaks = () => {\r\n dispatch(clearProfileSqueaks());\r\n dispatch(fetchProfileSqueaks({\r\n profilePubkey: props.match.params.username,\r\n limit: 10,\r\n lastSqueak: null,\r\n }));\r\n }\r\n\r\n const openMore = () => { setMoreMenu(!moreMenu) }\r\n\r\n const handleMenuClick = (e) => { e.stopPropagation() }\r\n\r\n return(\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
window.history.back()} className=\"header-back-wrapper\">\r\n \r\n
\r\n
\r\n
\r\n
\r\n {userParam}\r\n
\r\n
\r\n
\r\n
\r\n \"\"/\r\n
\r\n
\r\n
\r\n
\r\n \"\"/\r\n
\r\n\r\n {user &&\r\n
\r\n
\r\n \r\n
\r\n
openMore()} style={{display: moreMenu ? 'block' : 'none'}} className=\"more-menu-background\">\r\n
\r\n {moreMenu ?\r\n
handleMenuClick(e)} className=\"more-menu-content\">\r\n
\r\n Delete Profile\r\n
\r\n
\r\n Edit Profile\r\n
\r\n {user.getHasPrivateKey() &&\r\n
\r\n Export Private Key\r\n
\r\n }\r\n
: null }\r\n
\r\n
\r\n
\r\n }\r\n\r\n {user &&\r\n
\r\n user.getFollowing() ?\r\n unfollowUser(e,user.getProfileId()) :\r\n followUser(e,user.getProfileId())\r\n }\r\n className={user.getFollowing() ? 'unfollow-switch profile-edit-button' : 'profile-edit-button'}>\r\n { user.getFollowing() ? 'Following' : 'Follow'}\r\n
\r\n }\r\n\r\n {!user &&\r\n
toggleCreateModal('create')}\r\n className='profiles-create-button'>\r\n Add Contact Profile\r\n
\r\n }\r\n
\r\n
\r\n
{user ? user.getProfileName() : ''}
\r\n
@{userParam}
\r\n
\r\n  \r\n
\r\n
\r\n
\r\n {/* TODO: Implement sats spent */}\r\n
toggleSpendingModal('members','Sats Spent')}>\r\n

0

\r\n

sats spent

\r\n
\r\n {/* TODO: Implement sats eaned */}\r\n
toggleSpendingModal('members', 'Sats Earned')}>\r\n

0

\r\n

sats earned

\r\n
\r\n
\r\n
\r\n
\r\n
changeTab('Squeaks')} className={activeTab ==='Squeaks' ? `profile-nav-item activeTab` : `profile-nav-item`}>\r\n Squeaks\r\n
\r\n
changeTab('Squeaks&Replies')} className={activeTab ==='Squeaks&Replies' ? `profile-nav-item activeTab` : `profile-nav-item`}>\r\n Squeaks & replies\r\n
\r\n
changeTab('Liked')} className={activeTab ==='Liked' ? `profile-nav-item activeTab` : `profile-nav-item`}>\r\n Liked\r\n
\r\n
\r\n {activeTab === 'Squeaks' ?\r\n profileSqueaks.map(t=>{\r\n if(!t.getReplyTo())\r\n return \r\n }) :\r\n activeTab === 'Squeaks&Replies' ?\r\n profileSqueaks.map(t=>{\r\n return \r\n }) :\r\n activeTab === 'Liked' ?\r\n profileSqueaks.map(t=>{\r\n if(t.getLikedTimeMs())\r\n return \r\n }) :\r\n null}\r\n {/* TODO: fix get loading state by doing this: https://medium.com/stashaway-engineering/react-redux-tips-better-way-to-handle-loading-flags-in-your-reducers-afda42a804c6 */}\r\n {profileSqueaks.length > 0 &&\r\n <>\r\n {profileSqueaksStatus == 'loading' ?\r\n :\r\n
getMoreSqueaks()} className='squeak-btn-side squeak-btn-active'>\r\n Load more\r\n
}\r\n \r\n }\r\n\r\n
\r\n\r\n {/* Modal for edit profile */}\r\n
toggleEditModal()} style={{display: editModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleEditModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

'Edit Profile'

\r\n
\r\n
\r\n Clear Image\r\n
\r\n
\r\n
\r\n
\r\n Save\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"profile\"\r\n
\r\n \r\n changeAvatar()} title=\" \" id=\"avatar\" style={{opacity:'0'}} type=\"file\"/>\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n setName(e.target.value)} type=\"text\" name=\"name\" className=\"edit-input\"/>\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n {/* Modal for delete profile */}\r\n
toggleDeleteModal()} style={{display: deleteModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleDeleteModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

'Delete Profile'

\r\n
\r\n
\r\n Delete\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n {/* Modal for export profile */}\r\n
toggleExportModal()} style={{display: exportModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleExportModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

'Export Private Key'

\r\n
\r\n
\r\n Export\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n {/* Modal for sats spent and earned */}\r\n
toggleSpendingModal()} style={{display: spendingModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleEditModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

{null}

\r\n
\r\n
\r\n
\r\n
setTab('Sats Spent')} className={tab =='Sats Spent' ? `explore-nav-item activeTab` : `explore-nav-item`}>\r\n Sats Spent\r\n
\r\n
setTab('Sats Earned')} className={tab =='Sats Earned' ? `explore-nav-item activeTab` : `explore-nav-item`}>\r\n Sats Earned\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n {/* Modal for create signing profile */}\r\n
toggleCreateModal()} style={{display: createModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleCreateModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

Add Contact Profile

\r\n\r\n
\r\n
\r\n Submit\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n setName(e.target.value)} type=\"text\" name=\"name\" className=\"edit-input\"/>\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n )\r\n }\r\n\r\n export default withRouter(Profile)\r\n"],"sourceRoot":""} \ No newline at end of file diff --git a/squeaknode/admin/webapp/static/build/static/js/5.af0b8162.chunk.js b/squeaknode/admin/webapp/static/build/static/js/5.af0b8162.chunk.js deleted file mode 100644 index b780eb8b..00000000 --- a/squeaknode/admin/webapp/static/build/static/js/5.af0b8162.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -(this["webpackJsonptwitter-frontend"]=this["webpackJsonptwitter-frontend"]||[]).push([[5],{136:function(e,a,t){},138:function(e,a,t){"use strict";t.r(a);var n=t(7),l=t(0),c=t.n(l),r=(t(136),t(8)),i=t(14),o=t(17),m=t(12),s=(t(16),t(18)),d=(t(39),t(5)),u=t(3),p=t(13),f=t(11);a.default=Object(i.h)((function(e){var a=Object(l.useState)("Squeaks"),t=Object(n.a)(a,2),i=t[0],E=t[1],v=Object(l.useState)(!1),N=Object(n.a)(v,2),b=N[0],k=N[1],g=Object(l.useState)(""),y=Object(n.a)(g,2),O=y[0],j=y[1],C=Object(l.useState)(""),w=Object(n.a)(C,2),S=w[0],h=w[1],I=Object(l.useState)(!1),P=Object(n.a)(I,2),x=P[0],q=P[1],T=Object(l.useState)(!1),M=Object(n.a)(T,2),B=M[0],R=M[1],F=Object(l.useState)(!1),L=Object(n.a)(F,2),A=L[0],D=L[1],H=Object(l.useState)(!1),K=Object(n.a)(H,2),V=K[0],J=K[1],U=Object(l.useState)(!1),z=Object(n.a)(U,2),G=z[0],Q=z[1],W=Object(l.useState)(!1),X=Object(n.a)(W,2),Y=(X[0],X[1]),Z=Object(l.useState)("Sats Spent"),$=Object(n.a)(Z,2),_=$[0],ee=$[1],ae=Object(l.useState)(!1),te=Object(n.a)(ae,2),ne=te[0],le=te[1],ce=e.match.params.username,re=Object(u.c)(f.v),ie=Object(u.c)(f.r),oe=Object(u.c)(f.w),me=Object(u.c)(p.j),se=Object(u.b)();Object(l.useEffect)((function(){window.scrollTo(0,0),se(Object(p.e)(e.match.params.username)),ye(),q(!1),j("")}),[e.match.params.username]);var de=Object(l.useRef)(!0);Object(l.useEffect)((function(){de.current?de.current=!1:document.getElementsByTagName("body")[0].style.cssText=ne&&"overflow-y: hidden; margin-right: 17px"}),[ne]),Object(l.useEffect)((function(){return function(){return document.getElementsByTagName("body")[0].style.cssText=""}}),[]);var ue=function(e){E(e)},pe=function(e,a){le(!ne),Y(!1),j(me.getProfileName()),setTimeout((function(){q(!x)}),20)},fe=function(){le(!ne),Y(!1),setTimeout((function(){R(!B)}),20)},Ee=function(){le(!ne),Y(!1),setTimeout((function(){D(!A)}),20)},ve=function(e,a){le(!ne),a&&ee(a),a&&ee(a),setTimeout((function(){J(!V)}),20)},Ne=function(e,a){le(!ne),Y(!1),setTimeout((function(){Q(!G)}),20)},be=function(e){e.stopPropagation()},ke=function(e){if(null!=e){var a=new FileReader;a.addEventListener("load",(function(){var e=a.result.split(",")[1];ge(e)}),!1),e&&a.readAsDataURL(e)}},ge=function(e){se(Object(p.s)({profileId:me.getProfileId(),imageBase64:e})),Y(!0),pe()},ye=function(){se(Object(f.a)()),se(Object(f.f)({profilePubkey:e.match.params.username,limit:10,lastSqueak:null}))},Oe=function(){k(!b)};return console.log(me&&me.getProfileName()),c.a.createElement("div",null,c.a.createElement("div",null,c.a.createElement("div",{className:"profile-wrapper"},c.a.createElement("div",{className:"profile-header-wrapper"},c.a.createElement("div",{className:"profile-header-back"},c.a.createElement("div",{onClick:function(){return window.history.back()},className:"header-back-wrapper"},c.a.createElement(r.a,null))),c.a.createElement("div",{className:"profile-header-content"},c.a.createElement("div",{className:"profile-header-name"},ce))),c.a.createElement("div",{className:"profile-banner-wrapper"},c.a.createElement("img",{alt:""})),c.a.createElement("div",{className:"profile-details-wrapper"},c.a.createElement("div",{className:"profile-options"},c.a.createElement("div",{className:"profile-image-wrapper"},c.a.createElement("img",{src:me?"".concat(Object(o.a)(me)):null,alt:""})),me&&c.a.createElement("div",{id:"profileMoreMenu",onClick:Oe,className:"Nav-link"},c.a.createElement("div",{className:"Nav-item-hover"},c.a.createElement(r.w,null)),c.a.createElement("div",{onClick:function(){return Oe()},style:{display:b?"block":"none"},className:"more-menu-background"},c.a.createElement("div",{className:"more-modal-wrapper"},b?c.a.createElement("div",{style:{top:document.getElementById("profileMoreMenu")&&"".concat(document.getElementById("profileMoreMenu").getBoundingClientRect().top-40,"px"),left:document.getElementById("profileMoreMenu")&&"".concat(document.getElementById("profileMoreMenu").getBoundingClientRect().left,"px"),height:"210px"},onClick:function(e){return function(e){e.stopPropagation()}(e)},className:"more-menu-content"},c.a.createElement("div",{onClick:fe,className:"more-menu-item"},c.a.createElement("span",null,"Delete Profile")),c.a.createElement("div",{onClick:pe,className:"more-menu-item"},c.a.createElement("span",null,"Edit Profile")),me.getHasPrivateKey()&&c.a.createElement("div",{onClick:Ee,className:"more-menu-item"},c.a.createElement("span",null,"Export Private Key"))):null))),me&&c.a.createElement("div",{onClick:function(e){return me.getFollowing()?function(e,a){console.log(e),e.stopPropagation(),se(Object(p.u)(a))}(e,me.getProfileId()):function(e,a){e.stopPropagation(),se(Object(p.q)(a))}(e,me.getProfileId())},className:me.getFollowing()?"unfollow-switch profile-edit-button":"profile-edit-button"},c.a.createElement("span",null,c.a.createElement("span",null,me.getFollowing()?"Following":"Follow"))),!me&&c.a.createElement("div",{onClick:function(e){return Ne("create")},className:"profiles-create-button"},c.a.createElement("span",null,"Add Contact Profile"))),c.a.createElement("div",{className:"profile-details-box"},c.a.createElement("div",{className:"profile-name"},me?me.getProfileName():""),c.a.createElement("div",{className:"profile-username"},"@",ce),c.a.createElement("div",{className:"profile-info-box"},"\xa0")),c.a.createElement("div",{className:"profile-social-box"},c.a.createElement("div",{onClick:function(){return ve(0,"Sats Spent")}},c.a.createElement("p",{className:"follow-num"}," 0 "),c.a.createElement("p",{className:"follow-text"}," sats spent ")),c.a.createElement("div",{onClick:function(){return ve(0,"Sats Earned")}},c.a.createElement("p",{className:"follow-num"}," 0 "),c.a.createElement("p",{className:"follow-text"}," sats earned ")))),c.a.createElement("div",{className:"profile-nav-menu"},c.a.createElement("div",{key:"squeaks",onClick:function(){return ue("Squeaks")},className:"Squeaks"===i?"profile-nav-item activeTab":"profile-nav-item"},"Squeaks"),c.a.createElement("div",{key:"replies",onClick:function(){return ue("Squeaks&Replies")},className:"Squeaks&Replies"===i?"profile-nav-item activeTab":"profile-nav-item"},"Squeaks & replies"),c.a.createElement("div",{key:"media",onClick:function(){return ue("Media")},className:"Media"===i?"profile-nav-item activeTab":"profile-nav-item"},"Media"),c.a.createElement("div",{key:"likes",onClick:function(){return ue("Likes")},className:"Likes"===i?"profile-nav-item activeTab":"profile-nav-item"},"Likes")),"Squeaks"===i?re.map((function(e){if(!e.getReplyTo())return c.a.createElement(s.a,{squeak:e,key:e.getSqueakHash(),id:e.getSqueakHash(),user:e.getAuthor()})})):"Squeaks&Replies"===i?re.map((function(e){return c.a.createElement(s.a,{squeak:e,key:e.getSqueakHash(),id:e.getSqueakHash(),user:e.getAuthor()})})):null,re.length>0&&c.a.createElement(c.a.Fragment,null,"loading"==oe?c.a.createElement(m.a,null):c.a.createElement("div",{onClick:function(){return function(){var a;null==(a=re)||0===a.length||a.slice(-1)[0];se(Object(f.f)({profilePubkey:e.match.params.username,limit:10,lastSqueak:ie}))}()},className:"squeak-btn-side squeak-btn-active"},"Load more"))),c.a.createElement("div",{onClick:function(){return pe()},style:{display:x?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return pe()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},"'Edit Profile'"),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){se(Object(p.m)({profileId:me.getProfileId()})),Y(!0),pe()},className:"save-modal-btn"},"Clear Image")),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){me.getProfileId();se(Object(p.t)({profileId:me.getProfileId(),profileName:O})),Y(!0),pe()},className:"save-modal-btn"},"Save"))),c.a.createElement("div",{className:"modal-body"},c.a.createElement("div",{className:"modal-banner"}),c.a.createElement("div",{className:"modal-profile-pic"},c.a.createElement("div",{className:"modal-back-pic"},c.a.createElement("img",{src:me?"".concat(Object(o.a)(me)):null,alt:"profile"}),c.a.createElement("div",null,c.a.createElement(r.y,null),c.a.createElement("input",{onChange:function(){return function(){var e=document.getElementById("avatar").files[0];ke(e)}()},title:" ",id:"avatar",style:{opacity:"0"},type:"file"})))),c.a.createElement("form",{className:"edit-form"},c.a.createElement("div",{className:"edit-input-wrap"},c.a.createElement("div",{className:"edit-input-content"},c.a.createElement("label",null,"Name"),c.a.createElement("input",{defaultValue:"",onChange:function(e){return j(e.target.value)},type:"text",name:"name",className:"edit-input"}))))))),c.a.createElement("div",{onClick:function(){return fe()},style:{display:B?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return fe()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},"'Delete Profile'"),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){var e={profileId:me.getProfileId()};console.log("Delete user here"),se(Object(p.p)(e)),fe()},className:"save-modal-btn"},"Delete"))))),c.a.createElement("div",{onClick:function(){return Ee()},style:{display:A?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return Ee()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},"'Export Private Key'"),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){var e={profileId:me.getProfileId()};se(Object(p.g)(e)).then(d.d).then((function(e){console.log(e),h(e)}))},className:"save-modal-btn"},"Export"))),c.a.createElement("div",{className:"modal-body"},c.a.createElement("form",{className:"edit-form"},c.a.createElement("div",{className:"edit-input-wrap"},c.a.createElement("div",{className:"edit-input-content"},c.a.createElement("label",null,"Private Key"),c.a.createElement("input",{defaultValue:S,readOnly:!0,type:"text",name:"name",className:"edit-input"}))))))),c.a.createElement("div",{onClick:function(){return ve()},style:{display:V?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header no-b-border"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return pe()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},null)),c.a.createElement("div",{className:"modal-body"},c.a.createElement("div",{className:"explore-nav-menu"},c.a.createElement("div",{onClick:function(){return ee("Sats Spent")},className:"Sats Spent"==_?"explore-nav-item activeTab":"explore-nav-item"},"Sats Spent"),c.a.createElement("div",{onClick:function(){return ee("Sats Earned")},className:"Sats Earned"==_?"explore-nav-item activeTab":"explore-nav-item"},"Sats Earned")),c.a.createElement("div",{className:"modal-scroll"})))),c.a.createElement("div",{onClick:function(){return Ne()},style:{display:G?"block":"none"},className:"modal-edit"},c.a.createElement("div",{onClick:function(e){return be(e)},className:"modal-content"},c.a.createElement("div",{className:"modal-header"},c.a.createElement("div",{className:"modal-closeIcon"},c.a.createElement("div",{onClick:function(){return Ne()},className:"modal-closeIcon-wrap"},c.a.createElement(r.d,null))),c.a.createElement("p",{className:"modal-title"},"Add Contact Profile"),c.a.createElement("div",{className:"save-modal-wrapper"},c.a.createElement("div",{onClick:function(){se(Object(p.n)({pubkey:ce,profileName:O})).then((function(){se(Object(p.e)(e.match.params.username))})),Ne()},className:"save-modal-btn"},"Submit"))),c.a.createElement("div",{className:"modal-body"},c.a.createElement("form",{className:"edit-form"},c.a.createElement("div",{className:"edit-input-wrap"},c.a.createElement("div",{className:"edit-input-content"},c.a.createElement("label",null,"Profile Name"),c.a.createElement("input",{defaultValue:"",onChange:function(e){return j(e.target.value)},type:"text",name:"name",className:"edit-input"}))),c.a.createElement("div",{className:"edit-input-wrap"},c.a.createElement("div",{className:"edit-input-content"},c.a.createElement("label",null,"Public Key"),c.a.createElement("input",{defaultValue:ce,readOnly:!0,type:"text",name:"name",className:"edit-input"})))))))))}))}}]); -//# sourceMappingURL=5.af0b8162.chunk.js.map \ No newline at end of file diff --git a/squeaknode/admin/webapp/static/build/static/js/5.af0b8162.chunk.js.map b/squeaknode/admin/webapp/static/build/static/js/5.af0b8162.chunk.js.map deleted file mode 100644 index f0ebd088..00000000 --- a/squeaknode/admin/webapp/static/build/static/js/5.af0b8162.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["components/Profile/index.js"],"names":["withRouter","props","useState","activeTab","setActiveTab","moreMenu","setMoreMenu","editName","setName","privateKey","setPrivateKey","editModalOpen","setEditModalOpen","deleteModalOpen","setDeleteModalOpen","exportModalOpen","setExportModalOpen","spendingModalOpen","setSpendingModalOpen","createModalOpen","setCreateModalOpen","setSaved","tab","setTab","styleBody","setStyleBody","userParam","match","params","username","profileSqueaks","useSelector","selectProfileSqueaks","lastUserSqueak","selectLastProfileSqueak","profileSqueaksStatus","selectProfileSqueaksStatus","user","selectCurrentProfile","dispatch","useDispatch","useEffect","window","scrollTo","fetchProfile","reloadSqueaks","isInitialMount","useRef","current","document","getElementsByTagName","style","cssText","changeTab","toggleEditModal","param","type","getProfileName","setTimeout","toggleDeleteModal","toggleExportModal","toggleSpendingModal","toggleCreateModal","handleModalClick","e","stopPropagation","uploadAvatar","file","reader","FileReader","addEventListener","imageBase64Stripped","result","split","uploadAvatarAsBase64","readAsDataURL","imageBase64","setProfileImage","profileId","getProfileId","clearProfileSqueaks","fetchProfileSqueaks","profilePubkey","limit","lastSqueak","openMore","console","log","className","onClick","history","back","alt","src","getProfileImageSrcString","id","display","top","getElementById","getBoundingClientRect","left","height","handleMenuClick","getHasPrivateKey","getFollowing","setUnfollowProfile","unfollowUser","setFollowProfile","followUser","key","map","t","getReplyTo","squeak","getSqueakHash","getAuthor","length","squeakLst","slice","getMoreSqueaks","setClearProfileImage","setRenameProfile","profileName","onChange","files","changeAvatar","title","opacity","defaultValue","target","value","name","values","setDeleteProfile","getProfilePrivateKey","then","unwrapResult","readOnly","setCreateContactProfile","pubkey"],"mappings":"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","file":"static/js/5.af0b8162.chunk.js","sourcesContent":["import React , { useEffect, useState, useContext, useRef} from 'react'\r\nimport './style.scss'\r\nimport { ICON_ARROWBACK, ICON_MARKDOWN, ICON_DATE, ICON_CLOSE, ICON_UPLOAD, ICON_NEWMSG, ICON_SETTINGS, ICON_DARK } from '../../Icons'\r\nimport { withRouter, Link } from 'react-router-dom'\r\nimport { getProfileImageSrcString } from '../../squeakimages/images';\r\nimport Loader from '../Loader'\r\nimport moment from 'moment'\r\nimport SqueakCard from '../SqueakCard'\r\nimport {API_URL} from '../../config'\r\n\r\nimport { unwrapResult } from '@reduxjs/toolkit'\r\nimport { useSelector } from 'react-redux'\r\nimport { useDispatch } from 'react-redux'\r\n\r\nimport {\r\n fetchProfile,\r\n setFollowProfile,\r\n setUnfollowProfile,\r\n selectCurrentProfile,\r\n setDeleteProfile,\r\n setRenameProfile,\r\n setCreateContactProfile,\r\n setProfileImage,\r\n setClearProfileImage,\r\n getProfilePrivateKey,\r\n} from '../../features/profiles/profilesSlice'\r\nimport {\r\n fetchProfileSqueaks,\r\n selectProfileSqueaks,\r\n selectLastProfileSqueak,\r\n selectProfileSqueaksStatus,\r\n clearProfileSqueaks,\r\n} from '../../features/squeaks/squeaksSlice'\r\n\r\n\r\nconst Profile = (props) => {\r\n const [activeTab, setActiveTab] = useState('Squeaks')\r\n const [moreMenu, setMoreMenu] = useState(false)\r\n const [editName, setName] = useState('')\r\n const [privateKey, setPrivateKey] = useState('')\r\n const [editModalOpen, setEditModalOpen] = useState(false)\r\n const [deleteModalOpen, setDeleteModalOpen] = useState(false)\r\n const [exportModalOpen, setExportModalOpen] = useState(false)\r\n const [spendingModalOpen, setSpendingModalOpen] = useState(false)\r\n const [createModalOpen, setCreateModalOpen] = useState(false)\r\n const [saved, setSaved] = useState(false)\r\n const [tab, setTab] = useState('Sats Spent')\r\n const [styleBody, setStyleBody] = useState(false)\r\n const userParam = props.match.params.username\r\n\r\n const profileSqueaks = useSelector(selectProfileSqueaks);\r\n const lastUserSqueak = useSelector(selectLastProfileSqueak);\r\n const profileSqueaksStatus = useSelector(selectProfileSqueaksStatus);\r\n // const privateKey = 'TODO';\r\n\r\n const user = useSelector(selectCurrentProfile);\r\n const dispatch = useDispatch();\r\n\r\n\r\n\r\n useEffect(() => {\r\n window.scrollTo(0, 0)\r\n dispatch(fetchProfile(props.match.params.username));\r\n reloadSqueaks();\r\n //preventing edit modal from apprearing after clicking a user on memOpen\r\n setEditModalOpen(false)\r\n setName('')\r\n }, [props.match.params.username])\r\n\r\n const isInitialMount = useRef(true);\r\n useEffect(() => {\r\n if (isInitialMount.current){ isInitialMount.current = false }\r\n else {\r\n document.getElementsByTagName(\"body\")[0].style.cssText = styleBody && \"overflow-y: hidden; margin-right: 17px\"\r\n }\r\n }, [styleBody])\r\n\r\n useEffect( () => () => document.getElementsByTagName(\"body\")[0].style.cssText = \"\", [] )\r\n\r\n const changeTab = (tab) => {\r\n setActiveTab(tab)\r\n }\r\n\r\n const editProfile = () => {\r\n let values = {\r\n profileId: user.getProfileId(),\r\n name: editName,\r\n }\r\n dispatch(setRenameProfile({\r\n profileId: user.getProfileId(),\r\n profileName: editName,\r\n }));\r\n // TODO: chain action to update profile squeaks with the new name.\r\n setSaved(true)\r\n toggleEditModal()\r\n }\r\n\r\n const deleteProfile = () => {\r\n let values = {\r\n profileId: user.getProfileId(),\r\n }\r\n console.log('Delete user here');\r\n dispatch(setDeleteProfile(values));\r\n toggleDeleteModal();\r\n }\r\n\r\n\r\n const exportPrivateKey = () => {\r\n let values = {\r\n profileId: user.getProfileId(),\r\n }\r\n dispatch(getProfilePrivateKey(values))\r\n .then(unwrapResult)\r\n .then((privateKey) =>{\r\n console.log(privateKey);\r\n setPrivateKey(privateKey);\r\n });\r\n }\r\n\r\n const createContactProfile = () => {\r\n dispatch(setCreateContactProfile({\r\n pubkey: userParam,\r\n profileName: editName,\r\n }))\r\n .then(() => {\r\n dispatch(fetchProfile(props.match.params.username));\r\n });\r\n toggleCreateModal();\r\n }\r\n\r\n const toggleEditModal = (param, type) => {\r\n setStyleBody(!styleBody)\r\n setSaved(false)\r\n setName(user.getProfileName())\r\n setTimeout(()=>{ setEditModalOpen(!editModalOpen) },20)\r\n }\r\n\r\n const toggleDeleteModal = () => {\r\n setStyleBody(!styleBody)\r\n setSaved(false)\r\n setTimeout(()=>{ setDeleteModalOpen(!deleteModalOpen) },20)\r\n }\r\n\r\n const toggleExportModal = () => {\r\n setStyleBody(!styleBody)\r\n setSaved(false)\r\n setTimeout(()=>{ setExportModalOpen(!exportModalOpen) },20)\r\n }\r\n\r\n const toggleSpendingModal = (param, type) => {\r\n setStyleBody(!styleBody)\r\n if(type){setTab(type)}\r\n if(type){setTab(type)}\r\n setTimeout(()=>{ setSpendingModalOpen(!spendingModalOpen) },20)\r\n }\r\n\r\n const toggleCreateModal = (param, type) => {\r\n setStyleBody(!styleBody)\r\n setSaved(false)\r\n setTimeout(()=>{ setCreateModalOpen(!createModalOpen) },20)\r\n }\r\n\r\n const handleModalClick = (e) => {\r\n e.stopPropagation()\r\n }\r\n\r\n const followUser = (e,id) => {\r\n e.stopPropagation()\r\n dispatch(setFollowProfile(id));\r\n }\r\n\r\n const unfollowUser = (e,id) => {\r\n console.log(e);\r\n e.stopPropagation()\r\n dispatch(setUnfollowProfile(id));\r\n }\r\n\r\n const changeAvatar = () => {\r\n let file = document.getElementById('avatar').files[0];\r\n uploadAvatar(file);\r\n }\r\n\r\n const clearAvatar = () => {\r\n dispatch(setClearProfileImage({\r\n profileId: user.getProfileId(),\r\n }));\r\n setSaved(true)\r\n toggleEditModal()\r\n }\r\n\r\n const uploadAvatar = (file) => {\r\n if (file == null)\r\n return;\r\n const reader = new FileReader();\r\n reader.addEventListener('load', () => {\r\n // convert image file to base64 string\r\n // preview.src = reader.result;\r\n const imageBase64Stripped = reader.result.split(',')[1];\r\n uploadAvatarAsBase64(imageBase64Stripped);\r\n }, false);\r\n if (file) {\r\n reader.readAsDataURL(file);\r\n }\r\n };\r\n\r\n const uploadAvatarAsBase64 = (imageBase64) => {\r\n dispatch(setProfileImage({\r\n profileId: user.getProfileId(),\r\n imageBase64: imageBase64,\r\n }));\r\n setSaved(true)\r\n toggleEditModal()\r\n };\r\n\r\n const getLastSqueak = (squeakLst) => {\r\n if (squeakLst == null) {\r\n return null;\r\n } if (squeakLst.length === 0) {\r\n return null;\r\n }\r\n return squeakLst.slice(-1)[0];\r\n };\r\n\r\n const getMoreSqueaks = () => {\r\n let lastSqueak = getLastSqueak(profileSqueaks);\r\n dispatch(fetchProfileSqueaks({\r\n profilePubkey: props.match.params.username,\r\n limit: 10,\r\n lastSqueak: lastUserSqueak,\r\n }));\r\n }\r\n\r\n const reloadSqueaks = () => {\r\n dispatch(clearProfileSqueaks());\r\n dispatch(fetchProfileSqueaks({\r\n profilePubkey: props.match.params.username,\r\n limit: 10,\r\n lastSqueak: null,\r\n }));\r\n }\r\n\r\n const openMore = () => { setMoreMenu(!moreMenu) }\r\n\r\n const handleMenuClick = (e) => { e.stopPropagation() }\r\n\r\n console.log(user && user.getProfileName());\r\n\r\n return(\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
window.history.back()} className=\"header-back-wrapper\">\r\n \r\n
\r\n
\r\n
\r\n
\r\n {userParam}\r\n
\r\n
\r\n
\r\n
\r\n \"\"/\r\n
\r\n
\r\n
\r\n
\r\n \"\"/\r\n
\r\n\r\n {user &&\r\n
\r\n
\r\n \r\n
\r\n
openMore()} style={{display: moreMenu ? 'block' : 'none'}} className=\"more-menu-background\">\r\n
\r\n {moreMenu ?\r\n
handleMenuClick(e)} className=\"more-menu-content\">\r\n
\r\n Delete Profile\r\n
\r\n
\r\n Edit Profile\r\n
\r\n {user.getHasPrivateKey() &&\r\n
\r\n Export Private Key\r\n
\r\n }\r\n
: null }\r\n
\r\n
\r\n
\r\n }\r\n\r\n {user &&\r\n
\r\n user.getFollowing() ?\r\n unfollowUser(e,user.getProfileId()) :\r\n followUser(e,user.getProfileId())\r\n }\r\n className={user.getFollowing() ? 'unfollow-switch profile-edit-button' : 'profile-edit-button'}>\r\n { user.getFollowing() ? 'Following' : 'Follow'}\r\n
\r\n }\r\n\r\n {!user &&\r\n
toggleCreateModal('create')}\r\n className='profiles-create-button'>\r\n Add Contact Profile\r\n
\r\n }\r\n
\r\n
\r\n
{user ? user.getProfileName() : ''}
\r\n
@{userParam}
\r\n
\r\n  \r\n
\r\n
\r\n
\r\n {/* TODO: Implement sats spent */}\r\n
toggleSpendingModal('members','Sats Spent')}>\r\n

0

\r\n

sats spent

\r\n
\r\n {/* TODO: Implement sats eaned */}\r\n
toggleSpendingModal('members', 'Sats Earned')}>\r\n

0

\r\n

sats earned

\r\n
\r\n
\r\n
\r\n
\r\n
changeTab('Squeaks')} className={activeTab ==='Squeaks' ? `profile-nav-item activeTab` : `profile-nav-item`}>\r\n Squeaks\r\n
\r\n
changeTab('Squeaks&Replies')} className={activeTab ==='Squeaks&Replies' ? `profile-nav-item activeTab` : `profile-nav-item`}>\r\n Squeaks & replies\r\n
\r\n
changeTab('Media')} className={activeTab ==='Media' ? `profile-nav-item activeTab` : `profile-nav-item`}>\r\n Media\r\n
\r\n
changeTab('Likes')} className={activeTab ==='Likes' ? `profile-nav-item activeTab` : `profile-nav-item`}>\r\n Likes\r\n
\r\n
\r\n {activeTab === 'Squeaks' ?\r\n profileSqueaks.map(t=>{\r\n if(!t.getReplyTo())\r\n return \r\n }) : activeTab === 'Squeaks&Replies' ?\r\n profileSqueaks.map(t=>{\r\n return \r\n }) :\r\n activeTab === 'Likes' ?\r\n null: activeTab === 'Media' ?\r\n null: null}\r\n {/* TODO: fix get loading state by doing this: https://medium.com/stashaway-engineering/react-redux-tips-better-way-to-handle-loading-flags-in-your-reducers-afda42a804c6 */}\r\n {profileSqueaks.length > 0 &&\r\n <>\r\n {profileSqueaksStatus == 'loading' ?\r\n :\r\n
getMoreSqueaks()} className='squeak-btn-side squeak-btn-active'>\r\n Load more\r\n
}\r\n \r\n }\r\n\r\n
\r\n\r\n {/* Modal for edit profile */}\r\n
toggleEditModal()} style={{display: editModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleEditModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

'Edit Profile'

\r\n
\r\n
\r\n Clear Image\r\n
\r\n
\r\n
\r\n
\r\n Save\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"profile\"\r\n
\r\n \r\n changeAvatar()} title=\" \" id=\"avatar\" style={{opacity:'0'}} type=\"file\"/>\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n setName(e.target.value)} type=\"text\" name=\"name\" className=\"edit-input\"/>\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n {/* Modal for delete profile */}\r\n
toggleDeleteModal()} style={{display: deleteModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleDeleteModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

'Delete Profile'

\r\n
\r\n
\r\n Delete\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n {/* Modal for export profile */}\r\n
toggleExportModal()} style={{display: exportModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleExportModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

'Export Private Key'

\r\n
\r\n
\r\n Export\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n {/* Modal for sats spent and earned */}\r\n
toggleSpendingModal()} style={{display: spendingModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleEditModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

{null}

\r\n
\r\n
\r\n
\r\n
setTab('Sats Spent')} className={tab =='Sats Spent' ? `explore-nav-item activeTab` : `explore-nav-item`}>\r\n Sats Spent\r\n
\r\n
setTab('Sats Earned')} className={tab =='Sats Earned' ? `explore-nav-item activeTab` : `explore-nav-item`}>\r\n Sats Earned\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n {/* Modal for create signing profile */}\r\n
toggleCreateModal()} style={{display: createModalOpen ? 'block' : 'none'}} className=\"modal-edit\">\r\n
handleModalClick(e)} className=\"modal-content\">\r\n
\r\n
\r\n
toggleCreateModal()} className=\"modal-closeIcon-wrap\">\r\n \r\n
\r\n
\r\n

Add Contact Profile

\r\n\r\n
\r\n
\r\n Submit\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n setName(e.target.value)} type=\"text\" name=\"name\" className=\"edit-input\"/>\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n )\r\n }\r\n\r\n export default withRouter(Profile)\r\n"],"sourceRoot":""} \ No newline at end of file diff --git a/squeaknode/admin/webapp/static/build/static/js/runtime-main.a34d324b.js b/squeaknode/admin/webapp/static/build/static/js/runtime-main.4b05e8f4.js similarity index 96% rename from squeaknode/admin/webapp/static/build/static/js/runtime-main.a34d324b.js rename to squeaknode/admin/webapp/static/build/static/js/runtime-main.4b05e8f4.js index 88fd9dec..49d62bed 100644 --- a/squeaknode/admin/webapp/static/build/static/js/runtime-main.a34d324b.js +++ b/squeaknode/admin/webapp/static/build/static/js/runtime-main.4b05e8f4.js @@ -1,2 +1,2 @@ -!function(e){function t(t){for(var n,o,i=t[0],c=t[1],l=t[2],f=0,d=[];f