"use strict";(self.webpackChunktinode_webapp=self.webpackChunktinode_webapp||[]).push([[352],{2352:function(e,s,i){i.r(s);var t=i(1594),o=i.n(t),n=i(8181),a=i(1166),d=i(1485),l=i(6235),r=i(5446);const c=(0,n.defineMessages)({delete_account:{id:"delete_account",defaultMessage:"Delete account",description:"Title for delete account warning"},delete_account_warning:{id:"delete_account_warning",defaultMessage:"Are you sure you want to delete your account? It cannot be undone.",description:"Warning message when deleting an account"}});class h extends o().Component{constructor(e){super(e);const s=this.props.tinode.getMeTopic();let i=0;s.contacts(e=>{e.acs&&!e.acs.isJoiner()&&i++});const t=s.getDefaultAccess();this.state={auth:t?t.auth:null,anon:t?t.anon:null,showPermissionEditorFor:void 0,blockedCount:i},this.handlePasswordUpdate=this.handlePasswordUpdate.bind(this),this.handleLaunchPermissionsEditor=this.handleLaunchPermissionsEditor.bind(this),this.handleHidePermissionsEditor=this.handleHidePermissionsEditor.bind(this),this.handlePermissionsChanged=this.handlePermissionsChanged.bind(this),this.handleDeleteAccount=this.handleDeleteAccount.bind(this),this.handleCheckboxClick=this.handleCheckboxClick.bind(this)}handlePasswordUpdate(e){this.setState({password:e}),this.props.onUpdatePassword(e)}handleLaunchPermissionsEditor(e){this.setState({showPermissionEditorFor:e,editedPermissions:this.state[e]})}handleHidePermissionsEditor(){this.setState({showPermissionEditorFor:void 0})}handlePermissionsChanged(e){let s={};s[this.state.showPermissionEditorFor]=e,this.props.onUpdateAccountDesc("me",void 0,void 0,s);let i={showPermissionEditorFor:void 0};i[this.state.showPermissionEditorFor]=e,this.setState(i)}handleCheckboxClick(e,s){this.props.onToggleIncognitoMode(s)}handleDeleteAccount(e){e.preventDefault();const{formatMessage:s}=this.props.intl;this.props.onShowAlert(s(c.delete_account),s(c.delete_account_warning),e=>this.props.onDeleteAccount(),null,!0,null)}render(){return(0,r.jsxDEV)(r.Fragment,{children:this.state.showPermissionEditorFor?(0,r.jsxDEV)(l.A,{mode:this.state.editedPermissions,skip:"O",onSubmit:this.handlePermissionsChanged,onCancel:this.handleHidePermissionsEditor},void 0,!1):(0,r.jsxDEV)("div",{className:"scrollable-panel",children:[(0,r.jsxDEV)("div",{className:"panel-form-column",children:[(0,r.jsxDEV)("label",{className:"small",children:(0,r.jsxDEV)(n.FormattedMessage,{id:"label_password",defaultMessage:"Password",description:"Label for password editing"},void 0,!1)},void 0,!1),(0,r.jsxDEV)("div",{children:(0,r.jsxDEV)(n.FormattedMessage,{id:"password_unchanged_prompt",defaultMessage:"Unchanged",description:"Message in editor while password is unchanged",children:e=>(0,r.jsxDEV)(d.A,{placeholder:e,type:"password",onFinished:this.handlePasswordUpdate},void 0,!1)},void 0,!1)},void 0,!1)]},void 0,!0),(0,r.jsxDEV)("div",{className:"hr"},void 0,!1),(0,r.jsxDEV)("div",{className:"panel-form-row",children:[(0,r.jsxDEV)("label",{htmlFor:"incognito-mode",children:(0,r.jsxDEV)(n.FormattedMessage,{id:"label_incognito_mode",defaultMessage:"Incognito mode:",description:"Label for incognito mode toggle"},void 0,!1)},void 0,!1),(0,r.jsxDEV)(a.A,{name:"incognito",id:"incognito-mode",checked:this.props.incognitoMode,onChange:this.handleCheckboxClick},void 0,!1)]},void 0,!0),(0,r.jsxDEV)("div",{className:"panel-form-row",children:(0,r.jsxDEV)("span",{className:"small gray",children:(0,r.jsxDEV)(n.FormattedMessage,{id:"incognito_mode_description",defaultMessage:"Hide your online status and typing indicators.",description:"Description for incognito mode toggle"},void 0,!1)},void 0,!1)},void 0,!1),(0,r.jsxDEV)("div",{className:"hr"},void 0,!1),(0,r.jsxDEV)("div",{className:"panel-form-column",children:[(0,r.jsxDEV)("a",{href:"#",className:"danger flat-button",onClick:e=>{e.preventDefault(),this.props.onLogout()},children:[(0,r.jsxDEV)("i",{className:"material-icons",children:"exit_to_app"},void 0,!1),"  ",(0,r.jsxDEV)(n.FormattedMessage,{id:"button_logout",defaultMessage:"Logout",description:"Button [Logout]"},void 0,!1)]},void 0,!0),(0,r.jsxDEV)("a",{href:"#",className:"danger flat-button",onClick:e=>{this.handleDeleteAccount(e)},children:[(0,r.jsxDEV)("i",{className:"material-icons",children:"delete"},void 0,!1),"  ",(0,r.jsxDEV)(n.FormattedMessage,{id:"button_delete_account",defaultMessage:"Delete account",description:"Button [Delete account]"},void 0,!1)]},void 0,!0)]},void 0,!0),(0,r.jsxDEV)("div",{className:"hr"},void 0,!1),(0,r.jsxDEV)("div",{className:"panel-form-column",children:[(0,r.jsxDEV)("div",{children:(0,r.jsxDEV)("label",{className:"small",children:(0,r.jsxDEV)(n.FormattedMessage,{id:"label_default_access_mode",defaultMessage:"Default access mode:",description:"Label for default access mode"},void 0,!1)},void 0,!1)},void 0,!1),(0,r.jsxDEV)("div",{className:"quoted",children:[(0,r.jsxDEV)("div",{children:["Auth: ",(0,r.jsxDEV)("tt",{className:"clickable",onClick:this.handleLaunchPermissionsEditor.bind(this,"auth"),children:this.state.auth},void 0,!1)]},void 0,!0),(0,r.jsxDEV)("div",{children:["Anon: ",(0,r.jsxDEV)("tt",{className:"clickable",onClick:this.handleLaunchPermissionsEditor.bind(this,"anon"),children:this.state.anon},void 0,!1)]},void 0,!0)]},void 0,!0)]},void 0,!0),this.state.blockedCount>0?(0,r.jsxDEV)(r.Fragment,{children:[(0,r.jsxDEV)("div",{className:"hr"},void 0,!1),(0,r.jsxDEV)("div",{className:"panel-form-row",children:[(0,r.jsxDEV)("i",{className:"material-icons",children:"block"},void 0,!1)," ",(0,r.jsxDEV)("a",{href:"#",className:"gray",onClick:e=>{e.preventDefault(),this.props.onShowBlocked()},children:(0,r.jsxDEV)(n.FormattedMessage,{id:"blocked_contacts_link",defaultMessage:"Blocked contacts ({count})",values:{count:this.state.blockedCount},description:"Blocked contacts link"},void 0,!1)},void 0,!1)]},void 0,!0)]},void 0,!0):null]},void 0,!0)},void 0,!1)}}s.default=(0,n.injectIntl)(h)},6235:function(e,s,i){var t=i(1594),o=i.n(t),n=i(8181),a=i(1166),d=i(6005),l=i(6110),r=i(5446);const c=(0,n.defineMessages)({joiner:{id:"permission_join",defaultMessage:"Join ({val})",description:"Name of J permission"},reader:{id:"permission_read",defaultMessage:"Read ({val})",description:"Name of R permission"},writer:{id:"permission_write",defaultMessage:"Write ({val})",description:"Name of W permission"},preser:{id:"permission_pres",defaultMessage:"Get notified ({val})",description:"Name of P permission"},approver:{id:"permission_admin",defaultMessage:"Approve ({val})",description:"Name of A permission"},sharer:{id:"permission_share",defaultMessage:"Share ({val})",description:"Name of S permission"},deleter:{id:"permission_delete",defaultMessage:"Delete ({val})",description:"Name of D permission"},owner:{id:"permission_owner",defaultMessage:"Owner ({val})",description:"Name of O permission"}});class h extends o().Component{constructor(e){super(e),this.state={mode:(e.mode||"").replace("N","")},this.handleChange=this.handleChange.bind(this),this.handleSubmit=this.handleSubmit.bind(this),this.handleCancel=this.handleCancel.bind(this)}handleChange(e){let s=this.state.mode;-1==s.indexOf(e)?s+=e:s=s.replace(e,""),this.setState({mode:s})}handleSubmit(){const e=(this.state.mode||"N").split("").sort().join("");e!==(this.props.mode||"N").split("").sort().join("")?this.props.onSubmit(e):this.props.onCancel()}handleCancel(){this.props.onCancel()}render(){const{formatMessage:e}=this.props.intl,s={J:e(c.joiner,{val:"J"}),R:e(c.reader,{val:"R"}),W:e(c.writer,{val:"W"}),P:e(c.preser,{val:"P"}),A:e(c.approver,{val:"A"}),S:e(c.sharer,{val:"S"}),D:e(c.deleter,{val:"D"}),O:e(c.owner,{val:"O"})};let i=this.props.skip||"",t=this.state.mode,o=(this.props.compare||"").replace("N",""),h=[];for(let e=0;e<8;e++){let n="JRWPASDO".charAt(e);i.indexOf(n)>=0&&t.indexOf(n)<0||h.push((0,r.jsxDEV)("tr",{children:[(0,r.jsxDEV)("td",{children:s[n]},void 0,!1),(0,r.jsxDEV)("td",{className:"checkbox",children:i.indexOf(n)<0?(0,r.jsxDEV)(a.A,{name:n,checked:t.indexOf(n)>=0,onChange:this.handleChange},void 0,!1):(0,r.jsxDEV)(a.A,{name:n,checked:t.indexOf(n)>=0},void 0,!1)},void 0,!1),this.props.compare?(0,r.jsxDEV)("td",{className:"checkbox",children:(0,r.jsxDEV)(a.A,{name:n,checked:o.indexOf(n)>=0},void 0,!1)},void 0,!1):null]},n,!0))}return(0,r.jsxDEV)("div",{className:"panel-form-column",children:[this.props.userTitle?(0,r.jsxDEV)("ul",{className:"contact-box small",children:(0,r.jsxDEV)(d.A,{tinode:this.props.tinode,item:this.props.item,title:this.props.userTitle,small:!0,avatar:(0,l.to)(this.props.userAvatar?this.props.userAvatar:null)},void 0,!1)},void 0,!1):null,(0,r.jsxDEV)("label",{className:"small",children:(0,r.jsxDEV)(n.FormattedMessage,{id:"title_permissions",defaultMessage:"Permissions",description:"Section title"},void 0,!1)},void 0,!1),(0,r.jsxDEV)("table",{className:"permission-editor",children:[this.props.compare?(0,r.jsxDEV)("thead",{children:(0,r.jsxDEV)("tr",{children:[(0,r.jsxDEV)("th",{},void 0,!1),(0,r.jsxDEV)("th",{children:this.props.modeTitle},void 0,!1),(0,r.jsxDEV)("th",{children:this.props.compareTitle},void 0,!1)]},void 0,!0)},void 0,!1):null,(0,r.jsxDEV)("tbody",{children:h},void 0,!1)]},void 0,!0),(0,r.jsxDEV)("br",{},void 0,!1),(0,r.jsxDEV)("div",{className:"dialog-buttons",children:[(0,r.jsxDEV)("button",{className:"outline",onClick:this.handleCancel,children:(0,r.jsxDEV)(n.FormattedMessage,{id:"button_cancel",defaultMessage:"Cancel",description:"Button [Cancel]"},void 0,!1)},void 0,!1),(0,r.jsxDEV)("button",{className:"primary",onClick:this.handleSubmit,children:(0,r.jsxDEV)(n.FormattedMessage,{id:"button_ok",defaultMessage:"OK",description:"Button [OK]"},void 0,!1)},void 0,!1)]},void 0,!0)]},void 0,!0)}}s.A=(0,n.injectIntl)(h)}}]); //# sourceMappingURL=352.prod.js.map