From bb8558287a2144de72233722fd430925766dea8b Mon Sep 17 00:00:00 2001 From: Ben Gotow Date: Wed, 11 Oct 2017 22:31:37 -0700 Subject: [PATCH] Add company profile to the participant sidebar --- .../assets/crunchbase-sidebar-icon@2x.png | Bin 0 -> 56621 bytes .../assets/employees-icon@2x.png | Bin 0 -> 1268 bytes .../assets/funding-icon@2x.png | Bin 0 -> 1384 bytes .../assets/holding-icon@2x.png | Bin 0 -> 597 bytes .../assets/industry-icon@2x.png | Bin 0 -> 985 bytes .../assets/location-icon@2x.png | Bin 734 -> 1419 bytes .../assets/phone-icon@2x.png | Bin 0 -> 1231 bytes .../assets/timezone-icon@2x.png | Bin 0 -> 1226 bytes .../lib/participant-profile-data-source.es6 | 59 +-- .../lib/sidebar-participant-profile.jsx | 474 +++++++++++------- .../styles/participant-profile.less | 56 ++- app/src/flux/stores/draft-editing-session.es6 | 9 + app/src/flux/stores/draft-store.es6 | 9 +- 13 files changed, 375 insertions(+), 232 deletions(-) create mode 100644 app/internal_packages/participant-profile/assets/crunchbase-sidebar-icon@2x.png create mode 100644 app/internal_packages/participant-profile/assets/employees-icon@2x.png create mode 100644 app/internal_packages/participant-profile/assets/funding-icon@2x.png create mode 100644 app/internal_packages/participant-profile/assets/holding-icon@2x.png create mode 100644 app/internal_packages/participant-profile/assets/industry-icon@2x.png create mode 100644 app/internal_packages/participant-profile/assets/phone-icon@2x.png create mode 100644 app/internal_packages/participant-profile/assets/timezone-icon@2x.png diff --git a/app/internal_packages/participant-profile/assets/crunchbase-sidebar-icon@2x.png b/app/internal_packages/participant-profile/assets/crunchbase-sidebar-icon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..f94d96280edbe07728baa0647d10f3a4721ae8c1 GIT binary patch literal 56621 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 es^i{Oyng{9%^B*?78slW0000 zh8r3hF2PGnwq9Eoz`(#ja&~t1WgMNLm#pW|%C9rFCzHt!Yiep{*Roj?04qMYw6ydd z4$9<&RgKbz>0d)$D=se9$|IALlgh+aGO(AvpI$CLZ7eS@?-&^wS|)RULjm9*+SS!{ z3iTFiG7^u+U#+jN|2Ee}E~mG*_sPY@#nVVsDz&zzrlyks&n%NGzc~ODyt}*mJmYhy zEmG5?te_*zc*RZbOn%7VVfM`XNaNUFXl!hJKIkVFG}X#&@CkxHh0)odk+bRS?0lD= zvnt7DBU|}^oRCkORcCHS9{|-HuF|fRAH>0TKJ8rMm{??NN3Lj@BOmewwMcKVF|z8} z64>27ilhvKmxMm66`1t(_1(F!u<$gi`qYZvWU~!pH<6#8f3v!}`bNM+AdgUvGw{ba z9p&zHWHVrons)n$Y94gp=>Goxd*|lne#Y5(Hd=(mzXZ$*wlV-a4;cX-X@>&ZFwhb z%t%}e>avSLm(10*jv6a`TaHNgG=cB0t*!lA_G+I~)dd^KCgcQIT{1HcKV zrl!_SAs~(x6cpTt&0B27UjY=unKs=%#!G;C&G`!(T@38Z4Qc>Dn6DaVc}tj4kf)SW z?>FcVvGa>5&2EB!!v46$cv2suppBzFG5!?KWxxP{-s%*?##Ab`J;>LMMpk|R%nJY+ zCqN;k*%Q?B&@P6FX#jv)H&ldiuSd~0WmP-52QGJXbo}HK_=#aIne9b;ozJYn2vTXrG z+GIcznC;T0ey0hNa~jZ@Vb|ZK6r+}eJ`SL>lx2WPkZewOQ zVMGr|1Y`6{R(n`l-d0yvr?ao@rsIy?F0|~8j|57*y;Au z=UA~!^R1M?dW3$4L=O_ZhSq$Lupw`EC84fy$mg@vnL#WuJC>e_Gf2A5AC05RAcdc9s?x>>08k_p=r(k&_~ zdVm!@6880zjco18H_NAd%g)<;C2#^6Q?pahEtdEHJIqP)R+<`kC z9dB9U@%X1yD)q6I9<=8q$6~Qz(=@lpon+l=nzrqByLbG4|J_sTJ&8avne5Nya;pIP zAfN;GkM%)7vE8sXJs!`l&*!@rTQkxW0f2k*`TPO}=K$^kD9?Tmu+?I*I9MnY);W(0 zAiis2zPenlgJ3WyaSf#*0q)pMcA!)$MbN#KN+^9n5BW@iD8um&WDI%ljECUUISs1g8pkl;<$R3$;~ zFGkn<+;c%qYIe_e;Gr3Vc!Rofog$~yTn+>RzvNIRkVqu@0J$WnTZ}I)Ou~fRn2_ic zFt68po5^HOaFoXdkzuiO{v+BFJNy6qb@DP0xVG{h>1Z@+%BpqP*{wJ`znxw3Tvl?s zv_rs|fHMJS0?q{5K7s20fV>6u9-x(uLzE;llCj2@lP>*RV joj1yD`ve-1dmp|B?~&A@hkEO+00000NkvXXu0mjf07DWd literal 0 HcmV?d00001 diff --git a/app/internal_packages/participant-profile/assets/industry-icon@2x.png b/app/internal_packages/participant-profile/assets/industry-icon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..1dbfa597401aa6ca79b2568e827f2a1521c48371 GIT binary patch literal 985 zcmV;~119{5P)IFnoTG{QK}_r5)d35 z?BG@%90U=ErfDd#f|jgK{sD1Oa2Lf2id0Z4p+S=-@pG>4#^?JLYm<86_S|>Qx!-f% z_nvcK>ht~Q;qOQMd_F%3?pYV?)oeC<$M5&I#oqG-+U>TV1UA4Pa7n;N@bO$O_fqU3 zH>ZEqmrA7}_6`tagL&PILvq)cW9WyqzUK)LK!bmV>Vgg=5@se4W6VK$mJ#?RdiQs8 zb90}8_Qi@yay8MlTCJ$I^*jN9H3MID5H00cjCKDQ;4NJlAh=>65D4^-0qAvQfaJE$ z0ELq(6be#2j$?j)J}FZhdAqI*m}|hZ3jn@C)-qVu0i} zu**Hry#|WK;t}v32q*z|i8POeg@uFYOH8@UBH9LcR|fF)t^vTqjYi`!j=MFmSrRnB ze1z_RSubn!t~J2h|6L8>I0x1^)7Hxpgal^^begwalV|hL3?QBMsxH9aodLj4;cx?h zW-u7cn!#ngxVU(n;B(m9oatq&T{D2R-2+kshQD(SaPGrw6lwzmxD^hEE9L+sH`Hu4 zpP-ZCy_?Boo|)~&TGc=(6xuoiT%$!2I7IMDEEcm&rJurB)%7YE0s#E zTkSBa7y!f00B@JUa1MZPWPdT4Og7B`*wfgP*sD-^fe%f?Y?t-&@^TCxT>R_Imer0< z)c~?n1L_`FT3R|>uh;L%2EcRabo#wz^AN!IMaSkG!QWc!KJJW4tyWX*h_CJZ#owt5 zR06cz88!_9{*-fFv4ZnFfL+uN2`=r~8SGibHiF`WR-$t{e@R|3fPaSp{WT04n?Gt0 zt7P-*Xf%4&s*gk>$2i-QGO^8yodAvu#N%=AF0g|0{GGsZsCDY%{M6Kx2I#m>PfxGI z+H;vC@ktE$J2H?+Bz|C%+KQCRW%bgUfexT~A>eGd1n>lP@ycv-TJz?r1>G1h_NZg1 zR;#KLR1G+RX`S`Vwcbe*SQvZ9{NQ9abdtaxie2iU+BE?WAe)I_x_Oi`T?a}2aTjqFm9^M$r z{YaVp9`c<~ogzP{)ZjZm%0mB|F|>UXYcn%5Uai`)h-hzWYC5e7iP>nqy}c`E zXJ?zSzXTZ%QV2c`c0yxPWkv#w{6m8LB#I!PZEkM2y{ylJCt)g2CXejCdJEt~1rLB*`{7I9L=8hfiX7 z5dUF_Ka+Ht6k7spxO{f_C9q`_f1ct(#Ap!Pg7QA(HYt-V%_VScjg5^%+NPG|N1luE zKMIMjv`ki`&w<&(vkqqWeV`O26DTVEBy=!<)X1{_MyKWSAghHWqp4Zba@*a>Y+i3VU zC^e*HQrKQZ9Jvbw-bc}G9JQ|{LPkz;v6u3Ak$!-FUWg*))_ep##^@jBZD?#f>^Yo> zD~RQgs^D%oFE-sQXFxf>5J}SHZmzAZy@qKUMPz!t^bhExU;?W6pZK<$i+6W-%jlP5 zpGYl^-FgYcK|+H7fk^^lXEuJ};@N^--j1Il$LKQMt;qEp(G!Bxjoa}lr61Qev$S0T z2spWRuOdr1)9Xk)ZVt>=XZpVd`w--ILf#mZIo5Uw2#5nbB49|gn1iy_8Nh0=o5?jz zpZ6k?JhlYHNzl6pxmtZz_qbrvHR4+FOO212!H5+$EdiN!NDLF`M!ss5z|N)!KSx|F zH#hekJ6u`<62y_(i!f$^m(&WoM5%TP%g5^y`Y^ly_f)@r&PaeG^(){Zx|^3&9|>(Y zu1?C@-;Le~i39`Kr|niUBLN92C@9#2xJL2ENG`fsQykPC>> z)JY&4<}_@NgOQyt zUrf8JtE;Ex04yG|CLpnVg1v%}yL=raj!`gQ?9$lvTX|*6)WgBi2H~;)J?VclZm87o zo}Qk&qS5Fn>?#YeScO}O`t^+kQ}VL{5LpCZ)M~`Q{JrA Z{{UtZJ1O1h*RB8n002ovPDHLkV1kiznEL<# literal 734 zcmeAS@N?(olHy`uVBq!ia0vp^Qb4T8!3-onXnIcqQY`6?zK#qG8~eHcB(ehe3dtTp zz6=aiY77hwEes65fIP_xXooXO?kBBgajH^4$tmPu_D{zf%h*eH z?d9OPS}$qBlD{HAQSR!L>n*y;mTT30)H7H57$=lj&tUdE9%Rd&^Cwf|wDg6|*DKl2 zY}zn$T9~xdW%dh?T=hPjoIl6hc*Rr;*F`H@pK2V{x-g-Kw#gL;WRh*ZR+Fi=J3`2_N6qo)=Yo`t6x5hqh1fw!hCE=yAvS zMbvh#;NU6J^_Q+R%+T76*8G!C^7Sul;Cdl{X4==g@}&jh)4#3B RDFOyOgQu&X%Q~loCIC@M&wBs> diff --git a/app/internal_packages/participant-profile/assets/phone-icon@2x.png b/app/internal_packages/participant-profile/assets/phone-icon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..2f28d12d22352270444e29a917ed1d74b23a9a69 GIT binary patch literal 1231 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 oy8fDZ9bsF3$j_ 0) { - profiles.twitter = { - handle: person.twitter.handle, - url: `https://twitter.com/${person.twitter.handle}`, - }; - } - if (((person.facebook && person.facebook.handle) || '').length > 0) { - profiles.facebook = { - handle: person.facebook.handle, - url: `https://facebook.com/${person.facebook.handle}`, - }; - } - if (((person.linkedin && person.linkedin.handle) || '').length > 0) { - profiles.linkedin = { - handle: person.linkedin.handle, - url: `https://linkedin.com/${person.linkedin.handle}`, - }; - } - return profiles; + this.setCache(email, body); + return body; } // LocalStorage Retrieval / Saving diff --git a/app/internal_packages/participant-profile/lib/sidebar-participant-profile.jsx b/app/internal_packages/participant-profile/lib/sidebar-participant-profile.jsx index 59068029a..34f2445ef 100644 --- a/app/internal_packages/participant-profile/lib/sidebar-participant-profile.jsx +++ b/app/internal_packages/participant-profile/lib/sidebar-participant-profile.jsx @@ -8,22 +8,171 @@ import { Utils, } from 'mailspring-exports'; import { RetinaImg } from 'mailspring-component-kit'; +import moment from 'moment-timezone'; import ParticipantProfileDataSource from './participant-profile-data-source'; -/* We expect ParticipantProfileDataSource.find to return the - * following schema: - * { - * profilePhotoUrl: string - * bio: string - * location: string - * currentTitle: string - * currentEmployer: string - * socialProfiles: hash keyed by type: ('twitter', 'facebook' etc) - * url: string - * handle: string - * } - */ +class ProfilePictureOrColorBox extends React.Component { + static propTypes = { + loading: PropTypes.bool, + contact: PropTypes.object, + profilePicture: PropTypes.string, + }; + render() { + const { contact, loading, avatar } = this.props; + + const hue = Utils.hueForString(contact.email); + const bgColor = `hsl(${hue}, 50%, 45%)`; + + let content = ( +
+ {contact.nameAbbreviation()} +
+ ); + + if (loading) { + content = ( +
+ +
+ ); + } + + if (avatar) { + content = Profile; + } + + return ( +
+
{content}
+
+ ); + } +} +class SocialProfileLink extends React.Component { + static propTypes = { + service: PropTypes.string, + handle: PropTypes.string, + }; + + render() { + const { handle, service } = this.props; + + if (!handle) { + return false; + } + return ( + + + + ); + } +} + +class TextBlockWithAutolinkedElements extends React.Component { + static propTypes = { + className: PropTypes.string, + string: PropTypes.string, + }; + + render() { + if (!this.props.string) { + return false; + } + + const nodes = []; + const hashtagOrMentionRegex = RegExpUtils.hashtagOrMentionRegex(); + + let remainder = this.props.string; + let match = null; + let count = 0; + + /* I thought we were friends. */ + /* eslint no-cond-assign: 0 */ + while ((match = hashtagOrMentionRegex.exec(remainder))) { + // the first char of the match is whitespace, match[1] is # or @, match[2] is the tag itself. + nodes.push(remainder.substr(0, match.index + 1)); + if (match[1] === '#') { + nodes.push( + {`#${match[2]}`} + ); + } + if (match[1] === '@') { + nodes.push({`@${match[2]}`}); + } + remainder = remainder.substr(match.index + match[0].length); + count += 1; + } + nodes.push(remainder); + + return

{nodes}

; + } +} + +class IconRow extends React.Component { + static propTypes = { + string: PropTypes.string, + icon: PropTypes.string, + }; + + render() { + const { string, icon } = this.props; + + if (!string) { + return false; + } + return ( +
+ + + {string} + +
+ ); + } +} + +class LocationRow extends React.Component { + static propTypes = { + string: PropTypes.string, + }; + + render() { + return ( + + {this.props.string} + {' ['} + + View + + {']'} + + ) + } + /> + ); + } +} export default class SidebarParticipantProfile extends React.Component { static displayName = 'SidebarParticipantProfile'; @@ -94,156 +243,7 @@ export default class SidebarParticipantProfile extends React.Component { }); }; - _renderProfilePhoto() { - const hue = Utils.hueForString(this.props.contact.email); - const bgColor = `hsl(${hue}, 50%, 45%)`; - - let content = ( -
- {this.props.contact.nameAbbreviation()} -
- ); - - if (this.state.loading) { - content = ( -
- -
- ); - } - - if (this.state.profilePhotoUrl) { - content = Profile; - } - - return ( -
-
{content}
-
- ); - } - - _renderCorePersonalInfo() { - const fullName = this.props.contact.fullName(); - let renderName = false; - if (fullName !== this.props.contact.email) { - renderName = ( -
- {this.props.contact.fullName()} -
- ); - } - return ( -
- {renderName} -
- {this.props.contact.email} -
- {this._renderSocialProfiles()} -
- ); - } - - _renderSocialProfiles() { - if (!this.state.socialProfiles) { - return false; - } - const profiles = Object.entries(this.state.socialProfiles).map(([type, profile]) => { - return ( - - - - ); - }); - return
{profiles}
; - } - - _renderAdditionalInfo() { - return ( -
- {this._renderCurrentJob()} - {this._renderBio()} - {this._renderLocation()} -
- ); - } - - _renderCurrentJob() { - if (!this.state.employer) { - return false; - } - let title = false; - if (this.state.title) { - title = {this.state.title}, ; - } - return ( -

- {title} - {this.state.employer} -

- ); - } - - _renderBio() { - if (!this.state.bio) { - return false; - } - - const bioNodes = []; - const hashtagOrMentionRegex = RegExpUtils.hashtagOrMentionRegex(); - - let bioRemainder = this.state.bio; - let match = null; - let count = 0; - - /* I thought we were friends. */ - /* eslint no-cond-assign: 0 */ - while ((match = hashtagOrMentionRegex.exec(bioRemainder))) { - // the first char of the match is whitespace, match[1] is # or @, match[2] is the tag itself. - bioNodes.push(bioRemainder.substr(0, match.index + 1)); - if (match[1] === '#') { - bioNodes.push( - {`#${match[2]}`} - ); - } - if (match[1] === '@') { - bioNodes.push({`@${match[2]}`}); - } - bioRemainder = bioRemainder.substr(match.index + match[0].length); - count += 1; - } - bioNodes.push(bioRemainder); - - return

{bioNodes}

; - } - - _renderLocation() { - if (!this.state.location) { - return false; - } - return ( -

- - - {this.state.location} - -

- ); - } - - _select(event) { + _onSelect = event => { const el = event.target; const sel = document.getSelection(); if (el.contains(sel.anchorNode) && !sel.isCollapsed) { @@ -254,7 +254,7 @@ export default class SidebarParticipantProfile extends React.Component { if (anchor && focus && focus.data) { sel.setBaseAndExtent(anchor, 0, focus, focus.data.length); } - } + }; _renderFindCTA() { if (!this.state.trialing || this.state.loaded) { @@ -277,12 +277,150 @@ export default class SidebarParticipantProfile extends React.Component { ); } - render() { + _renderCompanyInfo() { + const { + name, + domain, + category, + description, + location, + timeZone, + logo, + facebook, + twitter, + linkedin, + crunchbase, + type, + ticker, + phone, + metrics, + } = + this.state.company || {}; + + if (!name) { + return; + } + + let employees = null; + let funding = null; + + if (metrics) { + if (metrics.raised) { + funding = `Raised $${(metrics.raised / 1 || 0).toLocaleString()}`; + } else if (metrics.marketCap) { + funding = `Market cap $${(metrics.marketCap / 1 || 0).toLocaleString()}`; + } + + if (metrics.employees) { + employees = `${(metrics.employees / 1 || 0).toLocaleString()} employees`; + } else if (metrics.employeesRange) { + employees = `${metrics.employeesRange} employees`; + } + } + + return ( +
+ {logo && ( + + )} + +
+ {name} +
+ + {domain && ( + + {domain} + + )} + +
+ + + + {`${timeZone.replace('_', ' ')} - `} + + {`Currently ${moment() + .tz(timeZone) + .format('h:MMa')}`} + + + ) + } + /> + + + + + + +
+ + + + +
+
+
+ ); + } + + _renderPersonInfo() { + const { facebook, linkedin, twitter, employment, location, bio } = this.state.person || {}; + return (
- {this._renderProfilePhoto()} - {this._renderCorePersonalInfo()} - {this._renderAdditionalInfo()} + +
+ {this.props.contact.fullName() !== this.props.contact.email && ( +
+ {this.props.contact.fullName()} +
+ )} + + {employment && ( +
+ {employment.title && {employment.title}, } + {employment.name} +
+ )} + +
+ {this.props.contact.email} +
+ +
+ + + +
+
+ +
+ + +
+
+ ); + } + + render() { + return ( +
+ {this._renderPersonInfo()} + + {this._renderCompanyInfo()} {this._renderFindCTA()}
diff --git a/app/internal_packages/participant-profile/styles/participant-profile.less b/app/internal_packages/participant-profile/styles/participant-profile.less index 81117cb13..dd826d3bb 100644 --- a/app/internal_packages/participant-profile/styles/participant-profile.less +++ b/app/internal_packages/participant-profile/styles/participant-profile.less @@ -45,9 +45,25 @@ } } -.participant-profile { +.company-profile { + padding-top: 20px; + border-top: 1px solid @border-color-divider; + .company-logo { + margin-left: 12px; + float: right; + max-width: 60px; + max-height: 44px; + } +} + +.participant-profile, +.company-profile { margin-bottom: 22px; + .larger { + font-size: 16px; + } + .profile-photo-wrap { width: 50px; height: 50px; @@ -87,7 +103,20 @@ } } - .core-personal-info { + .social-profiles-wrap { + margin-bottom: @spacing-standard; + } + .social-profile-item { + margin: 0 10px; + &:first-child { + margin-left: 0; + } + &:last-child { + margin-right: 0; + } + } + + .personal-info { padding-top: 30px; text-align: center; margin-bottom: @spacing-standard; @@ -99,24 +128,24 @@ white-space: nowrap; } - .full-name { - font-size: 16px; - } .email { color: @text-color-very-subtle; margin-bottom: @spacing-standard; } - .social-profiles-wrap { - margin-bottom: @spacing-standard; - } - .social-profile-item { - margin: 0 10px; - } } + .additional-info { + margin-top: 10px; font-size: 12px; + clear: both; p { - margin-bottom: 15px; + margin-bottom: 16px; + } + .icon-row { + margin-bottom: 8px; + a.plain { + color: @text-color; + } } .bio { color: @text-color-very-subtle; @@ -125,7 +154,8 @@ } body.platform-win32 { - .participant-profile { + .participant-profile, + .company-profile { border-radius: 0; .profile-photo { border-radius: 0; diff --git a/app/src/flux/stores/draft-editing-session.es6 b/app/src/flux/stores/draft-editing-session.es6 index 726c05866..3a387de5c 100644 --- a/app/src/flux/stores/draft-editing-session.es6 +++ b/app/src/flux/stores/draft-editing-session.es6 @@ -81,7 +81,9 @@ class DraftChangeSet extends EventEmitter { this._saving = this._pending; this._pending = {}; + console.log('_saving = ' + JSON.stringify(this._saving)); return this.callbacks.onCommit().then(() => { + console.log('_saving cleared'); this._saving = {}; }); }; @@ -347,6 +349,8 @@ export default class DraftEditingSession extends MailspringStore { return; } + console.log('_onDraftChanged'); + // If our draft has been changed, only accept values which are present. // If `body` is undefined, assume it's not loaded. Do not overwrite old body. const nextDraft = change.objects @@ -364,6 +368,7 @@ export default class DraftEditingSession extends MailspringStore { } nextValues[key] = nextDraft[key]; } + console.log('_setDraft nextValues: ' + JSON.stringify(nextValues)); this._setDraft(Object.assign(new Message(), this._draft, nextValues)); this.trigger(); } @@ -391,8 +396,12 @@ export default class DraftEditingSession extends MailspringStore { const baseDraft = draft || inMemoryDraft; const updatedDraft = this.changes.applyToModel(baseDraft); const task = new SyncbackDraftTask({ draft: updatedDraft }); + console.log('changeSetCommit queueing task'); Actions.queueTask(task); await TaskQueue.waitForPerformLocal(task); + console.log( + 'changeSetCommit finished waiting for performLocal. At this point, onDraftChanged should have been called.' + ); } // Undo / Redo diff --git a/app/src/flux/stores/draft-store.es6 b/app/src/flux/stores/draft-store.es6 index d91786c68..b5fa5e948 100644 --- a/app/src/flux/stores/draft-store.es6 +++ b/app/src/flux/stores/draft-store.es6 @@ -355,8 +355,12 @@ class DraftStore extends MailspringStore { // completely saved and the user won't see old content briefly. const session = await this.sessionForClientId(headerMessageId); await session.ensureCorrectAccount(); - await session.changes.commit(); let draft = session.draft(); + console.log('1:'); + console.log(JSON.stringify(draft)); + await session.changes.commit(); + console.log('2:'); + console.log(JSON.stringify(session.draft())); await session.teardown(); draft = await DraftHelpers.applyExtensionTransforms(draft); @@ -369,6 +373,9 @@ class DraftStore extends MailspringStore { // the new message text (and never old draft text or blank text) sending. await MessageBodyProcessor.updateCacheForMessage(draft); + console.log('3:'); + console.log(JSON.stringify(draft)); + // At this point the message UI enters the sending state and the composer is unmounted. this.trigger({ headerMessageId });