define("spectrum/icon_admin/index",["require","exports","tslib","react","spectrum/icon_templates/actionable/index","spectrum/svg_icon_bundle/index","spectrum/icon_admin/bundle"],(function(e,t,a,s,n,i,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IconAdmin=t.ICONS=void 0,s=a.__importStar(s),Object.defineProperty(t,"ICONS",{enumerable:!0,get:function(){return r.ICONS}}),t.IconAdmin=e=>{const{name:t}=e,a=s.createElement(i.SvgIconBundle,{focusable:"false",icon:r.ICONS[t]});return s.createElement(n.Component,Object.assign({icon:a},e))},t.IconAdmin.displayName="IconAdmin"})),define("spectrum/icon_admin/bundle",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ICONS=void 0,t.ICONS=JSON.parse('\n {"add-admin-permissions":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"add-licenses":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"add-user-to-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"change-admin-permissions":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"change-or-add-admin-permission":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"create-activity-report":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"delete-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"delete-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"disable-2fa":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"edit-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-add-admin-permissions":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-add-licenses":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-add-user-to-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-change-admin-permissions":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-create-activity-report":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-delete-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-delete-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-disable-2fa":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-disconnect-account":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-edit-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-leave-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-make-company-managed-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-make-user-managed-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-manage-files":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-manage-security-keys":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-remove-admin-permissions":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-resend-invite":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-reset-2fa":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-reset-password":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-restore-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-sign-in-as-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-suspend-or-delete-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-suspend-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"greyscale-unsuspend-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"leave-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"make-company-managed-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"make-user-managed-group":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"manage-files":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"manage-security-keys":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"remove-admin-permissions":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"resend-invite":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"reset-2fa":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"reset-password":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"restore-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"sign-in-as-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"suspend-or-delete-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"suspend-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""},"unsuspend-user":{"attrs":{"width":"32","height":"32","viewBox":"0 0 32 32"},"dangerouslySetInnerIconHtml":""}}\n ')})),define("metaserver/static/js/modules/clean/account/security_keys",["require","exports","tslib","classnames","react","prop-types","spectrum/icon_admin/index","lodash","ts-key-enum","jquery","metaserver/static/js/modules/clean/deprecated_ajax/ajax_jquery","metaserver/static/js/api_v2/user_client","metaserver/static/js/modules/clean/react/input_dig","metaserver/static/js/modules/clean/react/modal_dig","metaserver/static/js/modules/clean/react/components/modal_controller","metaserver/static/js/modules/clean/react/sprite","metaserver/static/js/modules/clean/account_page/components/info_tooltip","metaserver/static/js/modules/clean/react/components/css","metaserver/static/js/modules/clean/viewer","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/core/notify","dig-components/buttons","dig-components/icons","dig-components/icons/src"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m,p,f,g,_,v,h,y,M,b,E,w){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SecurityKeyManagerWithCSS=void 0,s=a.__importDefault(s),n=a.__importDefault(n),i=a.__importDefault(i),o=a.__importStar(o),c=a.__importDefault(c),d=a.__importStar(d),m=a.__importStar(m),f=a.__importStar(f);const k=m.text,S=h.Viewer.get_viewer();class C extends n.default.Component{constructor(){super(...arguments),this.state={keys:this.props.initialKeys},this.addKey=e=>{if(f.unmountModal(),!(e.target instanceof SVGElement)||e.target.textContent)return c.default(document).trigger("twofactor:ADD_SECURITY_KEY",this.props.userId)},this.disableKey=e=>{let t,a;void 0===e&&(e=this.currentDisableKey),this.currentDisableKey=e,this.props.isAdmin?(t="/account/team/twofactor/u2f_disable_device",S.work_user&&(a=S.work_user.id)):(t="/account/twofactor/u2f_disable_device",a=this.props.userId);const s=e=>(f.unmountModal(),c.default(document).trigger("twofactor:ASK_PASSWORD_CONFIRM",e));p.SimpleModal.show({title_text:y.intl.formatMessage({id:"ibYLR+",defaultMessage:"Disable security key?"}),body_html:y.intl.formatMessage({id:"1GvDn+",defaultMessage:"Are you sure you want to disable this security key?"}),confirm_text:y.intl.formatMessage({id:"l1boqz",defaultMessage:"Disable"}),cancel_text:y.intl.formatMessage({id:"Pm8Roc",defaultMessage:"Cancel"}),autoclose:!this.props.isAdmin,confirm_callback:()=>d.WebRequest({url:t,subject_user:a,data:{user_id:this.props.userId,u2f_gid:e.gid,checkpoint_token:this.checkpoint_token},success:t=>(this.props.isAdmin||this.setState({keys:o.without(this.state.keys,e)}),M.Notify.success(y.intl.formatMessage({id:"rtlpkG",defaultMessage:"Successfully disabled security key."})),f.unmountModal()),error(e){switch(e.responseText){case"err:EXPIRED":return s(this.props.userId);default:return M.Notify.error(y.intl.formatMessage({id:"Yuyqtu",defaultMessage:"There was a problem disabling your security key."}))}}})}),this.props.isAdmin||null!=this.checkpoint_token||s(this.props.userId)},this.renameKey=(e,t,a)=>{(new u.UserApiV2Client).ns("security_settings").rpc("rename_auth_device_v2",{device_gid:e.gid,nickname:t},{subjectUserId:this.props.userId}).then(s=>{e.nickname=t,a()},e=>{a()})},this.manageKeys=()=>f.mountModal(n.default.createElement(j,{addKeyHandler:this.addKey,communicateCheckpointToken:this.sendCheckpointToken,disableKeyHandler:this.disableKey,renameKeyHandler:this.renameKey,keys:this.state.keys,userId:this.props.userId,isAdmin:this.props.isAdmin})),this.sendCheckpointToken=e=>this.checkpoint_token=e,this.keysLabel=()=>y.intl.formatMessage({id:"wxquVh",defaultMessage:"{count, plural, one{{count} key} other{{count} keys}}"},{count:this.state.keys.length}),this.fetchKeyInfo=()=>d.WebRequest({url:"/account/twofactor/security_keys/",success:e=>this.setState({keys:JSON.parse(e)}),subject_user:this.props.userId}),this.fetchKeyInfoTeam=()=>d.WebRequest({url:"/account/team/twofactor/security_keys/",data:{user_id:this.props.userId},subject_user:S.work_user,success:e=>this.setState({keys:JSON.parse(e)})}),this.renderAdminActionDescription=()=>this.props.useMclIcon?n.default.createElement("div",{className:"action_list_button_content"},n.default.createElement("span",{className:"action_list_button_icon_wrapper"},n.default.createElement(r.IconAdmin,{name:"greyscale-manage-security-keys"})),n.default.createElement("span",{className:"action_list_icon_text"},y.intl.formatMessage({id:"XvlZxz",defaultMessage:"Manage security keys"}))):n.default.createElement("div",null,n.default.createElement(g.Sprite,{group:"teams",name:"actions_seckey",className:"icon_no_hover",alt:""}),y.intl.formatMessage({id:"XvlZxz",defaultMessage:"Manage security keys"}))}componentWillMount(){if(!this.props.isAdmin)return this.user=S.get_user_by_id(this.props.userId)}componentDidMount(){return c.default(document).on("security-key-manager:UPDATE_KEYS",(e,t)=>this.props.isAdmin?this.fetchKeyInfoTeam():this.user.id===t?this.fetchKeyInfo():void 0),this.props.isAdmin?this.fetchKeyInfoTeam():this.fetchKeyInfo()}render(){const e=this.state.keys.length>0;return this.props.isAdmin?n.default.createElement("a",{className:s.default({action_list_button_content_wrapper:this.props.useMclIcon}),href:"#",onClick:this.manageKeys},this.renderAdminActionDescription()):n.default.createElement("div",{className:"manage-twofactor-security-keys"},n.default.createElement("span",{hidden:!0,className:"update",onClick:this.fetchKeyInfo}),n.default.createElement("span",{hidden:!e,className:"num-keys"},n.default.createElement("div",{className:"num-keys-text"},this.keysLabel()),n.default.createElement(b.Button,{variant:"transparent",className:"edit-link",onClick:this.manageKeys,"aria-label":y.intl.formatMessage({id:"CYfaKX",defaultMessage:"Edit security keys"})},y.intl.formatMessage({id:"uCrKx9",defaultMessage:"Edit"}))),n.default.createElement("span",{hidden:e},n.default.createElement(b.Button,{variant:"transparent",className:"add-link",onClick:this.addKey,"aria-label":y.intl.formatMessage({id:"ZI39vb",defaultMessage:"Add security keys"})},y.intl.formatMessage({id:"Pjnwc0",defaultMessage:"Add"}))))}}C.displayName="SecurityKeyManager",C.propTypes={initialKeys:i.default.arrayOf(i.default.object),userId:i.default.number,isAdmin:i.default.bool,useMclIcon:i.default.bool};class j extends n.default.Component{constructor(e){super(e),this.disableKey=e=>this.props.disableKeyHandler(e),this.renameKey=e=>{this.setState({keyBeingRenamed:e,newName:e.nickname})},this.cancelRenamingKey=()=>{this.setState({keyBeingRenamed:void 0})},this.finishRenamingKey=()=>{this.setState({renameSubmitting:!0}),this.props.renameKeyHandler(this.state.keyBeingRenamed,this.state.newName,()=>{this.setState({keyBeingRenamed:void 0,renameSubmitting:!1})})},this.changeNewName=e=>{this.setState({newName:e.currentTarget.value})},this.renameInputKeyDown=e=>{e.key===l.Key.Escape?this.cancelRenamingKey():e.key===l.Key.Enter&&this.finishRenamingKey()},this.renderTooltipContents=e=>n.default.createElement("span",null,e.vendor?n.default.createElement("p",null,n.default.createElement("span",{style:{fontWeight:"bold"}},y.intl.formatMessage({id:"tfZFkx",defaultMessage:"Type:"}))," "+e.vendor):null,n.default.createElement("p",{style:{fontWeight:"bold"}},y.intl.formatMessage({id:"SJkFun",defaultMessage:"Added"})),n.default.createElement("p",null,`${e.created.ts_tz} (${e.created.ts_ago})`,n.default.createElement("br",null),e.created.country,n.default.createElement("br",null),e.created.device),n.default.createElement("p",{style:{fontWeight:"bold"}},y.intl.formatMessage({id:"jLtv48",defaultMessage:"Last used"})),n.default.createElement("p",null,`${e.last_used.ts_tz} (${e.last_used.ts_ago})`,n.default.createElement("br",null),e.last_used.country,n.default.createElement("br",null),e.last_used.device)),this.renderKeyRows=()=>this.props.keys.map(e=>n.default.createElement("div",{key:e.gid},n.default.createElement("div",{className:"key-row"},e!==this.state.keyBeingRenamed?n.default.createElement("span",{className:"nickname"},e.nickname||y.intl.formatMessage({id:"JgbBd3",defaultMessage:"Unnamed security key"}),!this.props.isAdmin&&n.default.createElement(b.Button,{className:"rename-key",onClick:()=>this.renameKey(e),variant:"transparent",hasNoUnderline:!0},n.default.createElement(E.UIIcon,{src:w.EditLine,"aria-label":y.intl.formatMessage({id:"drcrxe",defaultMessage:"Rename"})}))):n.default.createElement("span",{className:"nickname"},n.default.createElement(k,{variant:"small","disable-errors":!0,placeholder:y.intl.formatMessage({id:"jfRuvL",defaultMessage:"for example, ‘yellow USB key’"}),value:this.state.newName,onChange:this.changeNewName,maxLength:100,inline:!0,autofocus:!0,onKeyDown:this.renameInputKeyDown,disabled:this.state.renameSubmitting})),n.default.createElement("span",{className:"last-used-info",title:e.last_used.ts_tz},y.intl.formatMessage({id:"42yYLf",defaultMessage:"Used {ago}"},{ago:e.last_used.ts_ago}),n.default.createElement(_.InfoTooltip,{content:this.renderTooltipContents(e),position:_.TooltipPlacement.LEFT})),n.default.createElement("div",{className:"disable"},n.default.createElement(b.Button,{onClick:()=>this.disableKey(e),variant:"transparent",hasNoUnderline:!0},n.default.createElement(E.UIIcon,{src:w.CloseLine})))),n.default.createElement("hr",null))),this.doneClicked=e=>(this.state.keyBeingRenamed&&this.finishRenamingKey(),f.unmountModal()),this.state={keyBeingRenamed:void 0,newName:void 0,renameSubmitting:!1}}componentWillMount(){if(!this.props.isAdmin)return this.user=S.get_user_by_id(this.props.userId)}componentDidMount(){return c.default(document).on("security-key-modal:PASSWORD_CONFIRMED",(e,t,a)=>{this.props.userId===t&&(this.checkpoint_token=a,this.props.communicateCheckpointToken(a),this.disableKey())})}render(){let e;this.user&&(e=S.get_title_by_role(this.user.role));const t=e?` • ${e}`:"",a={title:y.intl.formatMessage({id:"FjMHOe",defaultMessage:"Security Keys"})+t,acceptButtonText:y.intl.formatMessage({id:"53kN+a",defaultMessage:"Done"}),onAccept:this.doneClicked,width:680};return this.props.isAdmin||(a.dismissButtonText=y.intl.formatMessage({id:"wMsf7x",defaultMessage:"Add new key"}),a.onDismiss=this.props.addKeyHandler),n.default.createElement(p.Modal,Object.assign({},a),n.default.createElement("div",{className:"twofactor-security-keys-edit-modal"},n.default.createElement("p",null,this.props.isAdmin?y.intl.formatMessage({id:"zu5OQ0",defaultMessage:"Security keys are a secure method to complete Dropbox two-step verification."}):y.intl.formatMessage({id:"93Qjms",defaultMessage:"Security keys help you complete two-step verification when logging into Dropbox."})),n.default.createElement("div",{className:"twofactor-security-keys-container"},n.default.createElement("ul",{id:"key-rows",className:"key-rows"},this.renderKeyRows()))))}}j.displayName="SecurityKeyModal",j.propTypes={addKeyHandler:i.default.func,communicateCheckpointToken:i.default.func,disableKeyHandler:i.default.func,renameKeyHandler:i.default.func,keys:i.default.arrayOf(i.default.object),userId:i.default.number,isAdmin:i.default.bool},t.SecurityKeyManagerWithCSS=v.requireCssWithComponent(C,["/static/css/account_page/security_keys-vflc1xMAg.css"])})),define("metaserver/static/js/modules/clean/account_page/tabs/security",["require","exports","tslib","react","styled-components","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/clean/viewer","metaserver/static/js/modules/clean/account_page/widgets/change_password/view","metaserver/static/js/modules/clean/account_page/widgets/delegated_account_recovery/view","metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/view","metaserver/static/js/modules/clean/account_page/widgets/paper_unlink/view","metaserver/static/js/modules/clean/account_page/widgets/passwords_app/passwords_campaigns_container","metaserver/static/js/modules/clean/account_page/widgets/security_checkup/view","metaserver/static/js/modules/clean/account_page/widgets/two_step_verification/view","metaserver/static/js/modules/clean/account_page/widgets/web_sessions/view","metaserver/static/js/modules/clean/account_page/widgets/mobile_contacts/view"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m,p,f,g){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.initialize_module=t.moduleInit=t.SecurityTab=void 0,s=a.__importDefault(s);const _=n.createGlobalStyle` .four-column-table { td, th { &:nth-child(1) { width: 260px; } &:nth-child(2) { width: 180px; } &:nth-child(3) { width: 170px; } &:nth-child(4) { width: 16px; } } } .account-page-security { .account-button-block { height: auto; } } `;t.SecurityTab=()=>s.default.createElement(s.default.Fragment,null,s.default.createElement(_,null),s.default.createElement("div",{className:"account-page-tab account-page-security"},s.default.createElement(m.SecurityCheckup,null),s.default.createElement(o.ChangePassword,null),s.default.createElement(u.PasswordsCampaignsContainer,null),s.default.createElement(p.TwoStepVerification,null),(()=>{const e=i.mustGetActiveUser(),t=r.Viewer.get_viewer();return!(e.is_team||t.is_assume_user_session||t.is_team_assume_user_session||e.is_guest_admin)})()&&s.default.createElement(l.DelegatedAccountRecovery,null),s.default.createElement(f.WebSessions,null),s.default.createElement(c.LinkedHosts,null),s.default.createElement(d.PaperUnlink,null),s.default.createElement(g.MobileContacts,null))),t.SecurityTab.displayName="SecurityTab",t.moduleInit=function(e){},t.initialize_module=function(e){}})),define("metaserver/static/js/modules/clean/account_page/widgets/change_password/api",["require","exports","tslib","metaserver/static/js/modules/clean/deprecated_ajax/ajax_as_promised_jquery"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.changePassword=t.getPasswordState=void 0,t.getPasswordState=function(e){return a.__awaiter(this,void 0,void 0,(function*(){return s.WebRequest({url:"/account/get_authentication_status",subject_user:e,dataType:"json"})}))},t.changePassword=function(e,t,n){return a.__awaiter(this,void 0,void 0,(function*(){const a=(function(e){if(0===e.indexOf("err:")){const t=JSON.parse(e.substr(4));return{oldPasswordMessage:t.oldpass&&t.oldpass.message_text,newPasswordMessage:t.newpass&&t.newpass.message_text}}})(yield s.WebRequest({url:"/account/change_password",subject_user:e,data:{oldpass:t,newpass:n}}));return a||!0}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/change_password/view",["require","exports","tslib","react","metaserver/static/js/api_v2/client_base","metaserver/static/js/api_v2/user_client","metaserver/static/js/modules/clean/account_page/components/button_block","metaserver/static/js/modules/clean/account_page/components/loading","metaserver/static/js/modules/clean/account_page/widgets/change_password/api","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/clean/portaled-snackbar","metaserver/static/js/modules/clean/react/components/modal_controller","metaserver/static/js/modules/clean/react/async/loadable","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/core/uri","metaserver/static/js/modules/clean/web_timing_logger"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m,p,f,g){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ChangePassword=void 0,s=a.__importStar(s),u=a.__importStar(u);const _=m.Loadable({loader:()=>a.__awaiter(void 0,void 0,void 0,(function*(){const{DropboxPasswordsSplashModal:t}=yield new Promise((t,a)=>{e(["metaserver/static/js/modules/clean/account_page/widgets/change_password/modals/passwords_splash"],t,a)}).then(a.__importStar);return t}))});t.ChangePassword=function(){const[t,m]=s.useState(void 0),[v,h]=s.useState(!1),[y,M]=s.useState(!1);if(s.useEffect(()=>{(()=>{a.__awaiter(this,void 0,void 0,(function*(){const e=yield l.getPasswordState(c.mustGetActiveUser().id);m(e),g.mark_time_to_view(),g.mark_time_to_interactive()}))})()},[]),!t)return s.default.createElement("div",{className:"account-page-block account-page-block--no-header account-page-block--change-password"},s.default.createElement(o.Loading,null));const b=p.intl.formatMessage({id:"i+PJQ7",defaultMessage:"Password"}),E="personal"===c.mustGetActiveUser().role?p.intl.formatMessage({id:"c+7pvZ",defaultMessage:"Set a unique password to protect your personal Dropbox account."}):p.intl.formatMessage({id:"snvpS3",defaultMessage:"Set a unique password to protect your work Dropbox account."}),w={email:c.mustGetActiveUser().email,is_reset:"true"},k=new f.URI({path:"/forgot",query:w});return s.default.createElement(s.default.Fragment,null,s.default.createElement("div",{className:"account-page-block account-page-block--no-header"},t.needs_password?s.default.createElement(r.ButtonBlock,{label:b,subtext:E,buttonText:p.intl.formatMessage({id:"9cj0Es",defaultMessage:"Set a password"}),kind:"transparent",buttonAction:{kind:"link",href:k.toString()},className:"set-password-block"}):s.default.createElement(r.ButtonBlock,{label:b,subtext:E,buttonText:p.intl.formatMessage({id:"jGhCkM",defaultMessage:"Change password"}),kind:"transparent",buttonAction:{kind:"function",handler:function(){return a.__awaiter(this,void 0,void 0,(function*(){const{ChangePasswordModal:s}=yield new Promise((t,a)=>{e(["metaserver/static/js/modules/clean/account_page/widgets/change_password/modals/change_password"],t,a)}).then(a.__importStar),r=c.mustGetActiveUser();s.show({user:r,requiredPasswordStrengthCount:t.required_password_strength,fedrampPasswordPolicy:t.fedramp_password_policy,onPasswordChange:()=>a.__awaiter(this,void 0,void 0,(function*(){h(!0),u.unmountModal(),M(yield(e=>a.__awaiter(void 0,void 0,void 0,(function*(){const t=new i.UserApiV2Client(new n.DefaultApiV2Transport),{show_splash:a}=yield t.ns("passwords").rpc("update_freemium_eligibility",{entry_point:{".tag":"change_password"}},{subjectUserId:e.id});return a})))(r))}))})}))}},hideClickOption:t.authentication_delegated,hideClickText:p.intl.formatMessage({id:"HigOCc",defaultMessage:"Authentication managed by admin"}),className:"change-password-block"})),y&&s.default.createElement(_,{open:y,onRequestClose:()=>M(!1)}),s.default.createElement(d.PortaledSnackbar,{timeoutInMs:0,isOpen:v,close:()=>h(!1)},p.intl.formatMessage({id:"AUX6bx",defaultMessage:"Password changed successfully. Any existing sessions, devices and apps can still access your Dropbox."},{a:e=>s.default.createElement("a",{className:"account-page__link",href:"security"},e)})))}})),define("metaserver/static/js/modules/clean/account_page/widgets/delegated_account_recovery/api",["require","exports","metaserver/static/js/api_v2/user_client"],(function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.confirmPassword=t.createRecoveryToken=t.deleteReferenceToken=t.getReferenceTokens=void 0,t.getReferenceTokens=function(e){return(new a.UserApiV2Client).ns("delegated_account_recovery").rpc("get_reference_tokens",void 0,{subjectUserId:e})},t.deleteReferenceToken=function(e,t){return(new a.UserApiV2Client).ns("delegated_account_recovery").rpc("delete_reference_token",{token_id:t.token_id},{subjectUserId:e})},t.createRecoveryToken=function(e){return(new a.UserApiV2Client).ns("delegated_account_recovery").rpc("create_recovery_token",{recovery_provider_name:"Facebook"},{subjectUserId:e})},t.confirmPassword=function(e,t){throw new Error("Endpoint not implemented. Passwords now required to be encrypted before confirmation")}})),define("metaserver/static/js/modules/clean/account_page/widgets/delegated_account_recovery/modal",["require","exports","tslib","react","metaserver/static/js/modules/clean/react/input","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/clean/react/components/modal","metaserver/static/js/api_v2/error"],(function(e,t,a,s,n,i,r,o){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.confirmPasswordIfNecessary=t.ConfirmPasswordModal=void 0,s=a.__importDefault(s);const l=(n=a.__importStar(n)).password;class c extends s.default.Component{constructor(e){super(e),this.onAccept=()=>a.__awaiter(this,void 0,void 0,(function*(){throw new Error("Not implemented")})),this.setPassword=e=>this.setState({password:e.currentTarget.value}),this.state={password:"",submitting:!1}}render(){return s.default.createElement(r.Modal,{acceptButtonText:i.intl.formatMessage({id:"Laz2WV",defaultMessage:"Submit"}),autoClose:!1,onAccept:this.onAccept,title:i.intl.formatMessage({id:"dQMRoQ",defaultMessage:"Confirm password to continue"}),submitting:this.state.submitting,id:"confirm-password-modal",className:"confirm-password-modal"},s.default.createElement("div",{className:"confirm-password-modal-form"},s.default.createElement("p",null,i.intl.formatMessage({id:"+HVGgM",defaultMessage:"For security, please enter your password for {email}."},{email:this.props.user.email})),s.default.createElement(l,{id:"password",value:this.state.password,variant:"small",onChange:this.setPassword,error:void 0===this.state.error?void 0:{message_text:this.state.error},placeholder:i.intl.formatMessage({id:"i+PJQ7",defaultMessage:"Password"})}),this.state.unexpectedError&&s.default.createElement("div",{className:"error-message"},this.state.unexpectedError)))}}t.ConfirmPasswordModal=c,c.displayName="ConfirmPasswordModal",t.confirmPasswordIfNecessary=function(e,t){return a.__awaiter(this,void 0,void 0,(function*(){try{yield t()}catch(a){a instanceof o.AppError&&a.error&&"invalid_checkpoint"===a.error[".tag"]&&r.Modal.showInstance(s.default.createElement(c,{user:e,onSuccessfulPassword:t}))}}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/delegated_account_recovery/util",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.postURL=void 0,t.postURL=function(e,t){const a=document.createElement("form");a.method="POST",a.action=e,a.style.display="none";for(const e of Object.keys(t)){const s=document.createElement("input");s.type="hidden",s.name=e,s.value=t[e],a.appendChild(s)}document.body.appendChild(a),a.submit()}})),define("metaserver/static/js/modules/clean/account_page/widgets/delegated_account_recovery/view",["require","exports","tslib","react","metaserver/static/js/modules/clean/datetime/datetime","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/clean/static_urls","metaserver/static/js/modules/clean/account_page/components/action_table","metaserver/static/js/modules/clean/account_page/components/button_block","metaserver/static/js/modules/clean/react/sprite_div","metaserver/static/js/modules/clean/account_page/components/loading","metaserver/static/js/api_v2/error","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/core/notify","metaserver/static/js/modules/clean/account_page/widgets/delegated_account_recovery/util","metaserver/static/js/modules/clean/account_page/widgets/delegated_account_recovery/modal","metaserver/static/js/modules/clean/account_page/widgets/delegated_account_recovery/api"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m,p,f,g,_){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DelegatedAccountRecovery=void 0,s=a.__importStar(s),c=a.__importDefault(c),t.DelegatedAccountRecovery=function(){const[e,t]=s.useState([]),[v,h]=s.useState(!1),[y,M]=s.useState(!1),[b,E]=s.useState("init");if(s.useEffect(()=>{(()=>{a.__awaiter(this,void 0,void 0,(function*(){h(!0);const e=yield _.getReferenceTokens(i.mustGetActiveUser().id);M("ON"===e.stormcrow_variant),t(e.tokens),h(!1)}))})()},[]),!y)return null;if(v)return s.default.createElement(d.Loading,null);const w={provider:m.intl.formatMessage({id:"fO7j82",defaultMessage:"Provider"}),create_time:m.intl.formatMessage({id:"RIa54Y",defaultMessage:"Create time"}),last_recovery_time:m.intl.formatMessage({id:"P28eHo",defaultMessage:"Last recovery time"})};return s.default.createElement("div",{className:"account-page-block account-page-block--no-header"},s.default.createElement(l.ButtonBlock,{label:m.intl.formatMessage({id:"/sv7zG",defaultMessage:"Recovery tokens"}),subtext:m.intl.formatMessage({id:"a3uqT3",defaultMessage:"Account recovery with Facebook is a simple way to recover your account and increase security."}),buttonText:"creating"===b?s.default.createElement("img",{src:r.static_url("/static/images/icons/ajax-loading-small-blue-vflVk_QNP.gif"),alt:m.intl.formatMessage({id:"jybGUg",defaultMessage:"Loading"}),style:{verticalAlign:"middle"}}):m.intl.formatMessage({id:"9b3/OP",defaultMessage:"Store a token with Facebook"}),disabled:"creating"===b,kind:"transparent",buttonAction:{kind:"function",handler:()=>{(function(e){a.__awaiter(this,void 0,void 0,(function*(){yield g.confirmPasswordIfNecessary(e,()=>a.__awaiter(this,void 0,void 0,(function*(){E("creating");try{const{save_token_url:t,token:a,state:s}=yield _.createRecoveryToken(e.id);f.postURL(t,{token:a,state:s})}catch(e){if(E("stop"),e instanceof u.AppError)throw e;p.Notify.error(m.intl.formatMessage({id:"c8hBvx",defaultMessage:"Something went wrong. Please try again later."}))}})))}))})(i.mustGetActiveUser())}}}),e.length>0&&s.default.createElement("div",null,s.default.createElement("br",null),s.default.createElement(o.ActionTable,{keys:["provider","create_time","last_recovery_time"],headers:w,data:e,renderRowDetail:function(e,t){return"provider"===t?s.default.createElement(c.default,{group:"web",name:"facebook",text:"Facebook"}):"create_time"===t?n.ago(e.create_time):"last_recovery_time"===t&&(e.last_recovery_time?n.ago(e.last_recovery_time):m.intl.formatMessage({id:"gMMFLT",defaultMessage:"Never"}))},onClosePressed:function(e){return a.__awaiter(this,void 0,void 0,(function*(){try{yield _.deleteReferenceToken(i.mustGetActiveUser().id,e),p.Notify.success(m.intl.formatMessage({id:"A1Asiw",defaultMessage:"Successfully deleted the recovery token."}))}catch(e){p.Notify.error(m.intl.formatMessage({id:"c8hBvx",defaultMessage:"Something went wrong. Please try again later."}))}}))},sortFunction:(e,t)=>e.create_time-t.create_time,tableClass:["four-column-table","recovery-token-table"],dismissAriaLabel:e=>m.intl.formatMessage({id:"m4RmFp",defaultMessage:"Revoke token"}),dismissHeaderAriaLabel:m.intl.formatMessage({id:"m4RmFp",defaultMessage:"Revoke token"})})))}})),define("metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/api",["require","exports","metaserver/static/js/api_v2/user_client","metaserver/static/js/modules/clean/deprecated_ajax/ajax_as_promised_jquery"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.dismissUnlinkedHost=t.unlinkDevice=t.unlinkHost=t.getLinkedHosts=void 0,t.getLinkedHosts=function(e){return(new a.UserApiV2Client).ns("security_settings").rpc("get_all_hosts_and_devices",{},{subjectUserId:e})},t.unlinkHost=function(e,t,s){return(new a.UserApiV2Client).ns("security_settings").rpc("unlink_host_v2",{host_id:t,delete_data:s},{subjectUserId:e})},t.unlinkDevice=function(e,t,s){return(new a.UserApiV2Client).ns("security_settings").rpc("unlink_mobile_device_v2",{device_id:t,app_id:s},{subjectUserId:e})},t.dismissUnlinkedHost=function(e,t){return s.BackgroundRequest({url:"/account/dismiss_unlink",subject_user:e,data:{host_id:t.id,user_id:null,team_id:null}})}})),define("metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/modals",["require","exports","tslib","react","react-intl","spectrum/checkbox/index","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/clean/react/components/modal","metaserver/static/js/modules/constants/legacy","metaserver/static/js/modules/clean/react/components/css"],(function(e,t,a,s,n,i,r,o,l,c){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UnlinkDeviceModal=t.UnlinkHostModal=t.UnlinkHostModalWithoutCss=void 0,s=a.__importDefault(s);class d extends s.default.Component{constructor(e){super(e),this.onAccept=()=>{this.props.onSubmit(this.props.host,this.state.remoteWipe)},this.onCheckboxToggle=e=>{this.setState({remoteWipe:"checked"===e})},this.state={remoteWipe:!1}}render(){const{user:e,host:t,teamName:a}=this.props,c=n.defineMessage({id:"LDLk8Q",defaultMessage:"You’re about to unlink your computer {name}. It’ll immediately stop syncing with your Dropbox."}),d=r.intl.formatMessage(c,{st:e=>s.default.createElement("strong",null,e),name:t.display_name}),u=r.intl.formatMessage({id:"730g/L",defaultMessage:"You can’t delete files from this computer because it’s running an old version of Dropbox"}),m="work"===e.role?r.intl.formatMessage({id:"4vU2gl",defaultMessage:"Delete files from {team_name} Dropbox the next time this computer comes online."},{team_name:a}):r.intl.formatMessage({id:"XsVWRJ",defaultMessage:"Delete files from my personal Dropbox the next time this computer comes online."});let p=null;t.delete_support_type===l.DELETE_ON_UNLINK_OLD_CLIENT?p=s.default.createElement("div",{className:"host-unlink-action"},u):t.can_delete&&(p=s.default.createElement("div",{className:"host-unlink-action u-pad-top-s"},s.default.createElement("div",null,s.default.createElement(i.Checkbox,{className:"host-unlink-action__checkbox",onChange:this.onCheckboxToggle,checked:this.state.remoteWipe?"checked":"unchecked"})),s.default.createElement("div",{className:"host-unlink-action__checkbox-text"},m)));const f=s.default.createElement("a",{href:"/help/mobile/unlink-relink-computer-mobile#unlinkbeforelocal",target:"_blank",rel:"noreferrer noopener"},r.intl.formatMessage({id:"gk12sS",defaultMessage:"Learn more"}));return s.default.createElement(o.Modal,{title:r.intl.formatMessage({id:"K4DUr7",defaultMessage:"Unlink {host}?"},{host:t.display_name}),id:"unlink-host-modal",acceptButtonText:r.intl.formatMessage({id:"DcKRPG",defaultMessage:"Unlink"}),dismissButtonText:r.intl.formatMessage({id:"d9/SE1",defaultMessage:"Cancel"}),onAccept:this.onAccept,helpLink:f},s.default.createElement("div",null,d),p)}}t.UnlinkHostModalWithoutCss=d,d.displayName="UnlinkHostModalWithoutCss",t.UnlinkHostModal=c.requireCssWithComponent(d,["/static/css/account_page/unlink_host_modal-vflloQAQ9.css"]);class u extends s.default.Component{render(){const e=this.props.device,t=r.intl.formatMessage({id:"/VOrjR",defaultMessage:"You’re about to unlink your {device_category}. It will immediately stop syncing and you won’t be able to access files on this device without re-linking. {password_msg}"},{device_category:e.category,password_msg:this.props.hasLinkedPasswordsAppOnDevice?"You will also lose access to your passwords until you re-link this device with your recovery words or another linked device.":""});return s.default.createElement(o.Modal,{title:r.intl.formatMessage({id:"n/JoQ4",defaultMessage:"Unlink {device_name}"},{device_name:e.display_name}),id:"unlink-device-modal",acceptButtonText:r.intl.formatMessage({id:"DcKRPG",defaultMessage:"Unlink"}),dismissButtonText:r.intl.formatMessage({id:"d9/SE1",defaultMessage:"Cancel"}),onAccept:()=>this.props.onSubmit(this.props.device)},t)}}t.UnlinkDeviceModal=u,u.displayName="UnlinkDeviceModal"})),define("metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/types",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isMobileDevice=void 0,t.isMobileDevice=function(e){return void 0!==e.is_emm_enabled}})),define("metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/util",["require","exports","react-intl","metaserver/static/js/modules/core/i18n"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.dismissUnlinkedHostErrorMessage=t.unlinkHostErrorMessage=t.unlinkDeviceErrorMessage=void 0;const n=a.defineMessage({id:"jnkdjf",defaultMessage:"Failed to {failed_action} {device_name}. Please try again later."});t.unlinkDeviceErrorMessage=(e,t)=>s.intl.formatMessage(n,{failed_action:"unlink",device_name:t.display_name});const i={already_unlinked:a.defineMessage({id:"gd+g8Z",defaultMessage:"{device_name} is already unlinked."})};t.unlinkHostErrorMessage=(e,t)=>{var a;let r=n;const o={failed_action:"unlink",device_name:t.display_name},l=null===(a=e.error)||void 0===a?void 0:a[".tag"];return"string"==typeof l&&l in i&&(r=i[l]),s.intl.formatMessage(r,o)},t.dismissUnlinkedHostErrorMessage=(e,t)=>s.intl.formatMessage(n,{failed_action:"dismiss",device_name:t.display_name})})),define("metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/view",["require","exports","tslib","react","styled-components","metaserver/static/js/modules/clean/react/components/modal","metaserver/static/js/modules/clean/react/sprite","metaserver/static/js/modules/clean/viewer","metaserver/static/js/modules/clean/account_page/components/action_table","metaserver/static/js/modules/clean/account_page/components/info_tooltip","metaserver/static/js/modules/clean/account_page/components/loading","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/types","metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/api","metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/modals","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/core/notify","metaserver/static/js/modules/clean/account_page/widgets/linked_hosts/util"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m,p,f,g,_,v){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkedHosts=void 0,s=a.__importStar(s);const h=(n=a.__importDefault(n)).default.div` display: flex; align-items: center; `,y=n.default.div` display: flex; align-items: flex-start; justify-content: center; flex-direction: column; `,M=n.default(r.Sprite)` margin-right: var(--spacing__base_unit); margin-top: -3px; `,b=n.default(c.InfoTooltip)` display: flex; align-items: center; `,E=n.default.p` margin-top: var(--spacing__unit--3); `;function w({host:e}){return e?s.default.createElement(h,{className:"host"},s.default.createElement(M,{group:"web",name:e.icon,alt:""}),s.default.createElement("span",null,e.display_name)):null}function k(e,t){return t.last_activity_raw-e.last_activity_raw}function S({hosts:e,devices:t,setShouldReload:n}){const r={device:g.intl.formatMessage({id:"edehVw",defaultMessage:"Device name"}),location:g.intl.formatMessage({id:"0hnGgQ",defaultMessage:"Location"}),activity:g.intl.formatMessage({id:"5z5P+5",defaultMessage:"Most recent activity"})},d=new Set(t.map(e=>e.device_id)),E=[];for(const e of t)d.has(e.device_id)&&(E.push(e),d.delete(e.device_id));const S={keys:["device","location","activity"],headers:r,data:e.concat(E),renderRowDetail:(e,t)=>{if(m.isMobileDevice(e)){if("device"===t){const t=e.display_name;let a;a=e.is_emm_enabled?g.intl.formatMessage({id:"XnB7kl",defaultMessage:"{display_name} (EMM)"},{display_name:t}):t;const n=a;return s.default.createElement(h,{className:"host"},s.default.createElement(M,{group:"web",name:e.icon,alt:""}),s.default.createElement("span",null,n))}if("location"===t)return e.location;const a=s.default.createElement(y,null,s.default.createElement("div",null,s.default.createElement("b",null,g.intl.formatMessage({id:"n0kScC",defaultMessage:"Version:"}))," ",e.version),s.default.createElement("div",null,s.default.createElement("b",null,g.intl.formatMessage({id:"TjBl9f",defaultMessage:"IP Address:"}))," ",e.last_ip));return s.default.createElement(b,{content:a,prompt:e.last_activity})}if("device"===t)return s.default.createElement(w,{host:e});if("location"===t)return e.location;const a=s.default.createElement("div",{className:"linked-host__tooltip-description"},s.default.createElement("div",null,s.default.createElement("b",null,g.intl.formatMessage({id:"n0kScC",defaultMessage:"Version:"}))," ",e.version),s.default.createElement("div",null,s.default.createElement("b",null,g.intl.formatMessage({id:"TjBl9f",defaultMessage:"IP Address:"}))," ",e.last_ip?e.last_ip:g.intl.formatMessage({id:"vHgZs0",defaultMessage:"Unknown"})),s.default.createElement("div",null,s.default.createElement("b",null,g.intl.formatMessage({id:"ayiXFG",defaultMessage:"OS:"}))," ",e.platform));return s.default.createElement(c.InfoTooltip,{className:"linked-host",prompt:e.last_activity,content:a})},onClosePressed:e=>{m.isMobileDevice(e)?i.Modal.showInstance(s.default.createElement(f.UnlinkDeviceModal,{device:e,hasLinkedPasswordsAppOnDevice:t.some(t=>t.device_id===e.device_id&&t.is_password_app),onSubmit:e=>a.__awaiter(this,void 0,void 0,(function*(){try{const a=t.filter(t=>t.device_id===e.device_id);for(const e of a)yield p.unlinkDevice(u.mustGetActiveUser().id,e.device_id,e.app_id);n(!0),_.Notify.success(g.intl.formatMessage({id:"ZBbRHf",defaultMessage:"Unlinked {device_name}"},{device_name:e.display_name}))}catch(t){_.Notify.error(v.unlinkDeviceErrorMessage(t,e))}}))})):i.Modal.showInstance(s.default.createElement(f.UnlinkHostModal,{host:e,user:u.mustGetActiveUser(),teamName:o.Viewer.get_viewer().team_name,onSubmit:(e,t)=>a.__awaiter(this,void 0,void 0,(function*(){try{yield p.unlinkHost(u.mustGetActiveUser().id,e.id,t),n(!0),_.Notify.success(g.intl.formatMessage({id:"ZBbRHf",defaultMessage:"Unlinked {device_name}"},{device_name:e.display_name}))}catch(t){_.Notify.error(v.unlinkHostErrorMessage(t,e))}}))}))},sortFunction:k,tableClass:["four-column-table","linked-hosts"],dismissAriaLabel:e=>{const t=(m.isMobileDevice(e),e.display_name);return g.intl.formatMessage({id:"n/JoQ4",defaultMessage:"Unlink {device_name}"},{device_name:t})},dismissHeaderAriaLabel:g.intl.formatMessage({id:"Yz4sxa",defaultMessage:"Unlink device"})};return s.default.createElement(l.ActionTable,Object.assign({},S))}t.LinkedHosts=function(){const[e,t]=s.useState(!1),[n,i]=s.useState(!0),[r,o]=s.useState(void 0),[c,m]=s.useState([]),[f,h]=s.useState([]),[y,M]=s.useState([]),[b,C]=s.useState([]),[j,I]=s.useState([]),[x,A]=s.useState([]),[P,O]=s.useState([]),[D,T]=s.useState(!1),[z,N]=s.useState(!1),[H,B]=s.useState(!1);if(s.useEffect(()=>{n&&(i(!1),(()=>{a.__awaiter(this,void 0,void 0,(function*(){t(!0),o(yield p.getLinkedHosts(u.mustGetActiveUser().id)),t(!1)}))})())},[n]),s.useEffect(()=>{m((null==r?void 0:r.desktop_hosts)||[]),I((null==r?void 0:r.mobile_devices)||[])},[r]),s.useEffect(()=>{h(c.filter(e=>e.is_linked&&!e.is_pending)),M(c.filter(e=>e.is_pending)),C(c.filter(e=>!e.is_linked&&!e.is_pending))},[c]),s.useEffect(()=>{A(j.filter(e=>!e.is_pending)),O(j.filter(e=>e.is_pending))},[j]),s.useEffect(()=>{T(f.length>0||x.length>0),N(y.length>0||P.length>0),B(b.length>0)},[f,x,y,P,b]),e)return s.default.createElement("div",{className:"account-page-block account-page-block--linked-hosts",id:"devices"},s.default.createElement(d.Loading,null));const R=e=>s.default.createElement("a",{href:"https://www.dropbox.com/help/desktop-web/download-dropbox",key:"empty-table-install-link",target:"_blank",rel:"noopener noreferrer",className:"account-page__link"},e);let U,F,L;"personal"===u.mustGetActiveUser().role?(U=g.intl.formatMessage({id:"0K5Rmt",defaultMessage:"You haven’t linked any devices to your personal Dropbox account. Install Dropbox to sync your devices."},{a:R}),F=g.intl.formatMessage({id:"qhHpFU",defaultMessage:"These devices are linked to your personal Dropbox account."}),L=g.intl.formatMessage({id:"woRhD3",defaultMessage:"These devices have been unlinked from your personal Dropbox account."})):(U=g.intl.formatMessage({id:"TIt80k",defaultMessage:"You haven’t linked any devices to your work Dropbox account. Install Dropbox to sync your devices."},{a:R}),F=g.intl.formatMessage({id:"f7W0L9",defaultMessage:"These devices are linked to your work Dropbox account."}),L=g.intl.formatMessage({id:"6/zH1E",defaultMessage:"These devices have been unlinked from your work Dropbox account."}));const q=D?F:U,V=g.intl.formatMessage({id:"1esgGu",defaultMessage:"These devices haven’t finished installing the Dropbox app. Continue the installation on these devices to link them to your account."}),K={device:g.intl.formatMessage({id:"edehVw",defaultMessage:"Device name"}),location:g.intl.formatMessage({id:"0hnGgQ",defaultMessage:"Location"}),status:g.intl.formatMessage({id:"ocRCHp",defaultMessage:"Remote wipe status"})};return s.default.createElement("div",{className:"account-page-block account-page-block--linked-hosts",id:"devices"},s.default.createElement("h2",{className:"account-page-block__heading"},g.intl.formatMessage({id:"30hchx",defaultMessage:"Devices"})),s.default.createElement("p",{className:"account-page-block__subtext"},q),D&&s.default.createElement(S,{hosts:f,devices:x,setShouldReload:i}),z&&s.default.createElement("div",null,s.default.createElement(E,{className:"account-page-block__subtext"},V),s.default.createElement(S,{hosts:y,devices:P,setShouldReload:i})),H&&s.default.createElement("div",null,s.default.createElement(E,{className:"account-page-block__subtext"},L),s.default.createElement(l.ActionTable,{keys:["device","location","status"],headers:K,data:b,renderRowDetail:(e,t)=>{if("device"===t)return s.default.createElement(w,{host:e});if("location"===t)return s.default.createElement(s.default.Fragment,null,e.location);if("status"===t){const t={2:g.intl.formatMessage({id:"4iWGkw",defaultMessage:"pending"}),3:g.intl.formatMessage({id:"1ukbKk",defaultMessage:"in progress"}),4:g.intl.formatMessage({id:"Ix5WTb",defaultMessage:"completed"}),5:g.intl.formatMessage({id:"X1+HWP",defaultMessage:"failed"})};return s.default.createElement(s.default.Fragment,null,t[e.unlink_state]||g.intl.formatMessage({id:"UNi0qU",defaultMessage:"unknown"}))}return null},onClosePressed:e=>a.__awaiter(this,void 0,void 0,(function*(){try{yield p.dismissUnlinkedHost(u.mustGetActiveUser().id,e),i(!0),_.Notify.success(g.intl.formatMessage({id:"+4N3an",defaultMessage:"Host dismissed."}))}catch(t){_.Notify.error(v.dismissUnlinkedHostErrorMessage(t,e))}})),sortFunction:k,tableClass:["four-column-table","unlinked-hosts"],dismissAriaLabel:e=>g.intl.formatMessage({id:"z1K6EC",defaultMessage:"Dismiss {host_name}"},{host_name:e.display_name}),dismissHeaderAriaLabel:g.intl.formatMessage({id:"cK/p7/",defaultMessage:"Dismiss"})})))}})),define("metaserver/static/js/modules/clean/account_page/widgets/paper_unlink/api",["require","exports","tslib","metaserver/static/js/modules/clean/deprecated_ajax/ajax_as_promised_jquery"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.unlinkPaperDevices=void 0,t.unlinkPaperDevices=function(e){return a.__awaiter(this,void 0,void 0,(function*(){return s.WebRequest({url:"/unlink_paper_devices",data:{user_id:e}})}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/paper_unlink/view",["require","exports","tslib","react","metaserver/static/js/modules/clean/account_page/widgets/paper_unlink/api","metaserver/static/js/modules/clean/account_page/components/button_block","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/core/notify","metaserver/static/js/modules/core/i18n"],(function(e,t,a,s,n,i,r,o,l){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PaperUnlink=void 0,s=a.__importStar(s),t.PaperUnlink=function(){const[e,t]=s.useState(!1),c=l.intl.formatMessage({id:"46Fhvj",defaultMessage:"Paper mobile devices"}),d=l.intl.formatMessage({id:"ErrGVR",defaultMessage:"Unlink all of your mobile devices from Paper."});return s.default.createElement("div",{className:"account-page-block"},s.default.createElement(i.ButtonBlock,{label:c,subtext:d,buttonText:l.intl.formatMessage({id:"DcKRPG",defaultMessage:"Unlink"}),kind:"transparent",buttonAction:{kind:"function",handler:function(){return a.__awaiter(this,void 0,void 0,(function*(){t(!0);const e=yield n.unlinkPaperDevices(r.mustGetActiveUserId());t(!1),e?o.Notify.success(l.intl.formatMessage({id:"aeADau",defaultMessage:"Successfully unlinked all Paper devices."})):o.Notify.error(l.intl.formatMessage({id:"Ed74Bk",defaultMessage:"Unlinking Paper devices failed. Please try again later."}))}))}},disabled:e}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/passwords_app/api",["require","exports","tslib","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/clean/react/campaigns/campaign_events_api","metaserver/static/js/modules/clean/react/user_metadata/api"],(function(e,t,a,s,n,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.setUserDismissedBanner=t.getHasCurrentUserPreviouslyDismissedHardcodedBanner=t.getHasCurrentUserPreviouslyDismissedLegacyBanner=void 0;const r="PASSWORDS_HAS_USER_DISMISSED_ACCOUNT_SETTINGS_SECURITY_BANNER";t.getHasCurrentUserPreviouslyDismissedLegacyBanner=function(){return a.__awaiter(this,void 0,void 0,(function*(){const e=s.mustGetActiveUserId();return(yield i.getUserMetadata([r],e))[r]||!1}))},t.getHasCurrentUserPreviouslyDismissedHardcodedBanner=function(){return a.__awaiter(this,void 0,void 0,(function*(){const e=s.mustGetActiveUserId();return yield n.getIsCampaignDismissedInUserMetadata(5005,"",e)}))},t.setUserDismissedBanner=function(){return a.__awaiter(this,void 0,void 0,(function*(){const e=s.mustGetActiveUserId(),t=yield i.setUserMetadata({[r]:!0},e);return Boolean(t[r])}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/passwords_app/manage_passwords_view",["require","exports","tslib","react","metaserver/static/js/modules/clean/account_page/components/button_block","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/core/uri","metaserver/static/js/modules/clean/react/onboarding/logging/events","metaserver/static/js/modules/core/browser","metaserver/static/js/modules/clean/react/campaigns/campaign_events_api","metaserver/static/js/modules/clean/react/campaigns/campaign_hooks"],(function(e,t,a,s,n,i,r,o,l,c,d){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ManagePasswords=void 0,s=a.__importStar(s),l=a.__importStar(l),t.ManagePasswords=()=>{const{button_cta_label:e,heading:t,message:a}=u(),i=s.useContext(c.CampaignContext);d.useCampaign(i);const{onCampaignClickCallback:m}=d.useCampaignClick(i,o.AccountSecurityPasswordsAppEvents.PASSWORDS_MANAGER_CTA_CLICK);return s.default.createElement("div",{className:"account-page-block account-page-block--no-header"},s.default.createElement(n.ButtonBlock,{label:t,subtext:a,buttonText:e,kind:"transparent",buttonAction:{kind:"function",handler:()=>{i&&m();const e=new r.URI({path:"/dropbox-passwords-oia/app/open"});l.open_tab(e.toString())}}}))},t.ManagePasswords.displayName="ManagePasswords";const u=()=>({button_cta_label:i.intl.formatMessage({id:"GCPREf",defaultMessage:"Manage passwords"}),heading:i.intl.formatMessage({id:"5B9l7l",defaultMessage:"Dropbox Passwords"}),message:i.intl.formatMessage({id:"C+fdH6",defaultMessage:"Securely store and access all of your passwords in Dropbox."})})})),define("metaserver/static/js/modules/clean/account_page/widgets/passwords_app/passwords_campaigns_container",["require","exports","tslib","react","metaserver/static/js/api_v2/default_user_client","metaserver/static/js/modules/clean/account_page/widgets/passwords_app/manage_passwords_view","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/clean/react/campaigns/campaign_events_api","metaserver/static/js/modules/core/exception","metaserver/static/js/modules/clean/react/campaigns/campaign_formats/index","metaserver/static/js/modules/clean/react/campaigns/campaign_formats/index_new","metaserver/static/js/modules/clean/react/campaigns/types","metaserver/static/js/modules/clean/account_page/widgets/passwords_app/api","metaserver/static/js/modules/clean/react/campaigns/api"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m,p){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PasswordsCampaignsContainer=void 0,s=a.__importStar(s),l=a.__importStar(l),m=a.__importStar(m);const f=e=>l.reportException({err:new Error(e),severity:l.SEVERITY.NONCRITICAL,tags:["passwords","activation-platform","activation","feature-discovery","onboarding-activation"]});t.PasswordsCampaignsContainer=()=>{const[e,t]=s.useState({campaigns:[]}),[a,l]=s.useState({allowed_campaigns:{}}),[g,_]=s.useState(!0),[v,h]=s.useState(!0);s.useEffect(()=>{const e=r.mustGetActiveUser();new n.DefaultUserApiV2Client(e).ns("campaign_impression_gating").rpc("get_campaign_for_page",{page_name:"account_settings_security_tab"},{}).then(l).catch(e=>{f(`Error fetching campaign data for account settings security tab: ${e}`)}),p.getBestCampaignsForUser({campaign_properties:{page:"account_settings_security_tab"}}).then(t).catch(e=>{f(`Error fetching campaign data for account settings security tab: ${e}`)})},[]),s.useEffect(()=>{m.getHasCurrentUserPreviouslyDismissedLegacyBanner().then(e=>{_(e)}).catch(e=>{f(`Error fetching banner impression metadata: ${e}`)})},[]),s.useEffect(()=>{m.getHasCurrentUserPreviouslyDismissedHardcodedBanner().then(e=>{h(e)}).catch(e=>{f(`Error fetching banner impression metadata: ${e}`)})},[]);const y=((null==e?void 0:e.campaigns)||[]).find(e=>{var t;return"Account Page Passwords App Adoption"===(null===(t=null==e?void 0:e.campaign_variant_descriptor)||void 0===t?void 0:t.campaign_name)}),M=null==e?void 0:e.campaigns_result,b=((null==a?void 0:a.allowed_campaigns)||{})["Account Page Passwords App Engagement"];if(b)return s.default.createElement(o.CampaignContext.Provider,{value:o.createMegaphoneCampaignImpressionContextFromMegaphoneImpressionContext(b)},s.default.createElement(i.ManagePasswords,null));if(g)return null;if(y)return s.default.createElement(c.CampaignFormat,{allowedComponents:[u.CampaignFormats.BANNER],impression:y});if(v)return null;if(M&&M.campaigns.length>0){const t=M.campaigns[0],a=M.request_id,n=e.campaigns_to_slots?e.campaigns_to_slots[t.campaign_id]:{".tag":"other"};return s.default.createElement(d.CampaignFormat,{campaign:t,requestId:a,slotId:n})}return null},t.PasswordsCampaignsContainer.displayName="PasswordsCampaignsContainer"})),define("metaserver/static/js/modules/clean/account_page/widgets/security_checkup/api",["require","exports","tslib","metaserver/static/js/modules/clean/deprecated_ajax/ajax_as_promised_jquery"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getSecurityCheckupLastCompleted=void 0,t.getSecurityCheckupLastCompleted=function(e){return a.__awaiter(this,void 0,void 0,(function*(){return s.WebRequest({url:"/account/get_security_checkup_status",subject_user:e,dataType:"json"})}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/security_checkup/view",["require","exports","tslib","react","metaserver/static/js/modules/clean/account_page/components/button_block","metaserver/static/js/modules/clean/account_page/components/loading","metaserver/static/js/modules/clean/account_page/widgets/security_checkup/api","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/core/i18n"],(function(e,t,a,s,n,i,r,o,l){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SecurityCheckup=void 0,s=a.__importStar(s),t.SecurityCheckup=function(){const[e,t]=s.useState(!1),[c,d]=s.useState("");s.useEffect(()=>{(()=>{a.__awaiter(this,void 0,void 0,(function*(){t(!0),d(yield r.getSecurityCheckupLastCompleted(o.mustGetActiveUserId())),t(!1)}))})()},[]);const u=l.intl.formatMessage({id:"lN11v3",defaultMessage:"Security checkup"}),m=l.intl.formatMessage({id:"yL6jvx",defaultMessage:"Take a minute to review your Dropbox security settings."}),p=c?l.intl.formatMessage({id:"rySdAO",defaultMessage:"Last completed: {datetime}"},{datetime:c}):l.intl.formatMessage({id:"f4B8UL",defaultMessage:"Never completed"});return e?s.default.createElement("div",{className:"account-page-block account-page-block--security"},s.default.createElement(i.Loading,null)):s.default.createElement("div",{className:"account-page-block account-page-block--no-header"},s.default.createElement(n.ButtonBlock,{label:u,subtext:m,italicizedSubtext:p,buttonText:l.intl.formatMessage({id:"BrE2tZ",defaultMessage:"Start checkup"}),kind:"transparent",buttonAction:{kind:"link",href:"/security_checkup"}}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/two_step_verification/api",["require","exports","tslib","metaserver/static/js/api_v2/user_client"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getTwoStepInfo=void 0,t.getTwoStepInfo=function(e){return a.__awaiter(this,void 0,void 0,(function*(){const t=new s.UserApiV2Client,a=yield t.ns("security_settings").rpc("get_twofactor_info_v2",void 0,{subjectUserId:e});return a?{enabled:!0,info:{user_can_disable:a.user_can_disable,primary_phone:a.primary_phone,backup:a.backup,num_security_keys:a.num_security_keys}}:{enabled:!1}}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/two_step_verification/two_step_definitions",["require","exports","metaserver/static/js/modules/core/i18n"],(function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TRUSTED_DEVICES=t.SECURITY_KEYS=t.RECOVERY_CODES=t.BACKUP_METHOD=t.PREFERRED_METHOD=void 0,t.PREFERRED_METHOD={actionType:"edit_primary",header:a.intl.formatMessage({id:"c7lcWO",defaultMessage:"Preferred method"}),subtext:a.intl.formatMessage({id:"NMGaUE",defaultMessage:"Choose how to get your security codes."}),actionText:a.intl.formatMessage({id:"UwFkjc",defaultMessage:"Edit"}),actionTextAria:a.intl.formatMessage({id:"oOTndc",defaultMessage:"Edit preferred 2FA method"})},t.BACKUP_METHOD={actionType:"edit_backup",header:a.intl.formatMessage({id:"a+++jI",defaultMessage:"Backup method"}),subtext:a.intl.formatMessage({id:"ImXGVq",defaultMessage:"Add a backup phone number for security codes."}),actionText:a.intl.formatMessage({id:"UwFkjc",defaultMessage:"Edit"}),actionTextAria:a.intl.formatMessage({id:"qjrF3n",defaultMessage:"Edit backup method"})},t.RECOVERY_CODES={actionType:"edit_recovery",header:a.intl.formatMessage({id:"s/X4yk",defaultMessage:"Recovery codes"}),subtext:a.intl.formatMessage({id:"V7zqnY",defaultMessage:"Get security codes to use when you can’t access your phone."}),actionText:a.intl.formatMessage({id:"2X0e4z",defaultMessage:"Show"}),actionTextAria:a.intl.formatMessage({id:"iBIJgM",defaultMessage:"Show recovery codes"})},t.SECURITY_KEYS={actionType:"edit_security_keys",header:a.intl.formatMessage({id:"Zw8AYm",defaultMessage:"Security keys"}),subtext:a.intl.formatMessage({id:"8PKqBc",defaultMessage:"Require a physical key be plugged into your USB port to sign in."}),actionText:a.intl.formatMessage({id:"SeZEPb",defaultMessage:"Add key"})},t.TRUSTED_DEVICES={actionType:"edit_trusted_devices",header:a.intl.formatMessage({id:"xPphSe",defaultMessage:"Trusted Devices"}),subtext:a.intl.formatMessage({id:"yXpwgx",defaultMessage:"Revoke trusted status from your devices that skip two-step verification."}),actionText:a.intl.formatMessage({id:"85a6yC",defaultMessage:"Revoke All"})}})),define("metaserver/static/js/modules/clean/account_page/widgets/two_step_verification/view",["require","exports","tslib","react","styled-components","jquery","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/clean/event_handler","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/clean/account_page/components/loading","metaserver/static/js/modules/clean/account_page/components/toggle_block","metaserver/static/js/modules/clean/account/security_keys","metaserver/static/js/modules/clean/account_page/widgets/two_step_verification/api","metaserver/static/js/modules/clean/account_page/widgets/two_step_verification/two_step_definitions","dig-components/buttons","metaserver/static/js/modules/clean/react/components/css"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m,p,f,g){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TwoStepVerification=void 0,s=a.__importStar(s),n=a.__importDefault(n),i=a.__importDefault(i);const _=n.default.div` background-color: var(--color__faint__background); border: 1px solid var(--color__standard__border); margin-top: var(--spacing__unit--2); color: var(--color__standard__text); `,v=n.default.div` height: 56px; display: flex; justify-content: space-between; align-items: center; padding: 0 var(--spacing__unit--2); &:not(:first-child) { border-top: 1px solid var(--color__standard__border); } `,h=n.default.div` font-size: var(--type__body__small--fontsize); line-height: var(--type__body__standard--lineheight); display: flex; flex-direction: column; } `,y=n.default.span` color: var(--color__faint__text); `,M=n.default.div` display: flex; align-items: center; `,b=n.default.span` margin-right: var(--spacing__unit--2); `,E=n.default.span` .two-step-settings__action-button { line-height: var(--type__body__standard--lineheight); font-size: var(--type__body__small--fontsize); .mc-tertiary-icon-text { line-height: var(--type__body__standard--lineheight); } } `,w=n.default((function({actionType:e,header:t,subtext:n,actionElement:i,actionTextAria:r,linkClass:o,actionTextDetail:c,twoStepEnabled:d,twoStepBackupUpdated:u}){const m=`two-step-settings__row ${o?`${o}-wrapper`:""}`;return s.default.createElement(v,{className:m},s.default.createElement(h,null,s.default.createElement("span",null,t),s.default.createElement(y,null,n)),s.default.createElement(M,null,c&&s.default.createElement(b,null,c),s.default.createElement(E,null,"string"!=typeof i?i:s.default.createElement(f.Button,{variant:"transparent",onClick:function(){return a.__awaiter(this,void 0,void 0,(function*(){const t=yield x();"edit_primary"===e?t.startEditFlow(l.mustGetActiveUser(),d):"edit_backup"===e?t.startAddBackupPhoneFlow(l.mustGetActiveUser(),!!c,u):"edit_recovery"===e?t.startEditRecoveryCodeFlow(l.mustGetActiveUser()):"edit_trusted_devices"===e&&t.startRevokeAllTrustedDevicesFlow(l.mustGetActiveUser())}))},className:o,"aria-label":r},i))))}))` .manage-twofactor-security-keys { a { padding-right: var(--spacing__base_unit); color: inherit; } } `,k=n.default.div` display: flex; flex-direction: row; align-items: center; margin-left: var(--spacing__base_unit); margin-right: var(--spacing__base_unit); margin-bottom: var(--spacing__unit--2); `,S=n.default.div` display: flex; flex-direction: column; justify-content: center; flex-grow: 1; `,C=n.default.span` font-size: var(--type__body__standard--fontsize); font-weight: var(--type__body__standard--fontweight); color: var(--color__standard__text); `,j=n.default.span` font-size: var(--type__body__small--fontsize); color: var(--color__faint__text); margin: var(--spacing__unit--0_5) 0 var(--spacing__unit--2) 0; `,I=n.default(d.ToggleBlock)` && { height: auto; } `;function x(){return new Promise((t,a)=>{e(["metaserver/static/js/modules/clean/account_page/widgets/two_step_verification/modals/twofactor_setup"],t,a)}).then(a.__importStar)}const A=new o.EventHandler;t.TwoStepVerification=g.requireCssWithComponent((function(){const[e,t]=s.useState(!1),[n,o]=s.useState(),[d,f]=s.useState(!1),[g,v]=s.useState(!1);function h(){i.default(document).trigger("security-key-manager:UPDATE_KEYS",l.mustGetActiveUser().id)}function y(e){i.default(document).trigger("security-key-modal:PASSWORD_CONFIRMED",[l.mustGetActiveUser().id,e])}function M(){o({enabled:!1})}function b(e){var t;const a=!n||!n.enabled||(null===(t=null==n?void 0:n.info)||void 0===t?void 0:t.user_can_disable);o({enabled:!0,info:{user_can_disable:a,primary_phone:null==e?void 0:e.phone_number,backup:null==e?void 0:e.backup_number,num_security_keys:0}})}function E(e){n&&n.enabled?o({enabled:!0,info:Object.assign(Object.assign({},n.info),{backup:e.backup})}):o({enabled:!1})}if(s.useEffect(()=>((function(){a.__awaiter(this,void 0,void 0,(function*(){t(!0),o(yield m.getTwoStepInfo(l.mustGetActiveUser().id)),t(!1)}))})(),A.on(document,"twofactor-flow:ENABLE",(e,t)=>{b(t)}),A.on(document,"twofactor-flow:DISABLE",M),A.on(document,"twofactor-flow:BACKUP-UPDATE",(e,t)=>{E(t)}),A.on(document,"twofactor:ADD_SECURITY_KEY",()=>a.__awaiter(this,void 0,void 0,(function*(){(yield x()).startSecurityKeysFlow(l.mustGetActiveUser(),h)}))),A.on(document,"twofactor:ASK_PASSWORD_CONFIRM",()=>a.__awaiter(this,void 0,void 0,(function*(){(yield x()).startPasswordConfirm(l.mustGetActiveUser(),y)}))),()=>{A.removeAll()}),[]),s.useEffect(()=>{var e;f(!!(null==n?void 0:n.enabled)),v(!(null==n||!n.enabled||(null===(e=null==n?void 0:n.info)||void 0===e?void 0:e.user_can_disable)))},[n]),e)return s.default.createElement("div",{className:"account-page-block account-page-block--no-header account-page-block--security"},s.default.createElement(c.Loading,null));const{info:{primary_phone:P="",backup:O=""}={}}=n||{},D=P?r.intl.formatMessage({id:"eHmAQm",defaultMessage:"SMS ({phone_no})"},{phone_no:P}):r.intl.formatMessage({id:"nnFfUf",defaultMessage:"Authenticator app"}),T=O?r.intl.formatMessage({id:"UwFkjc",defaultMessage:"Edit"}):r.intl.formatMessage({id:"YcxVqg",defaultMessage:"Add"}),z=r.intl.formatMessage({id:"Kgtej6",defaultMessage:"Two-step verification"}),N=r.intl.formatMessage({id:"fEIpFO",defaultMessage:"Require a security key or code in addition to your password."});return s.default.createElement("div",{className:"account-page-block account-page-block--no-header account-tfa-settings "},g?s.default.createElement(k,null,s.default.createElement(S,null,s.default.createElement(C,null,z),s.default.createElement(j,null,N)),s.default.createElement("span",null,r.intl.formatMessage({id:"KIXusY",defaultMessage:"Required by admin"}))):s.default.createElement(I,{label:z,subLabel:N,isOn:d,onToggle:function(){return a.__awaiter(this,void 0,void 0,(function*(){const e=yield x();d?e.startCancelFlow(l.mustGetActiveUser(),M):e.startSetupFlow(l.mustGetActiveUser(),b)}))},toggleClass:d?"disable-twofactor":"enable-twofactor",ariaIdBase:"two-step-verification"}),d&&s.default.createElement(_,null,s.default.createElement(w,{linkClass:"edit-twofactor-method",actionType:p.PREFERRED_METHOD.actionType,header:p.PREFERRED_METHOD.header,subtext:p.PREFERRED_METHOD.subtext,actionTextDetail:D,actionElement:p.PREFERRED_METHOD.actionText,actionTextAria:p.PREFERRED_METHOD.actionTextAria,twoStepEnabled:b,twoStepBackupUpdated:E}),s.default.createElement(w,{linkClass:O?"edit-twofactor-backup":"add-twofactor-backup-link",actionType:p.BACKUP_METHOD.actionType,header:p.BACKUP_METHOD.header,subtext:p.BACKUP_METHOD.subtext,actionTextDetail:O,actionElement:T,actionTextAria:p.BACKUP_METHOD.actionTextAria,twoStepEnabled:b,twoStepBackupUpdated:E}),s.default.createElement(w,{linkClass:"edit-twofactor-recovery",actionType:p.RECOVERY_CODES.actionType,header:p.RECOVERY_CODES.header,subtext:p.RECOVERY_CODES.subtext,actionElement:p.RECOVERY_CODES.actionText,actionTextAria:p.RECOVERY_CODES.actionTextAria,twoStepEnabled:b,twoStepBackupUpdated:E}),s.default.createElement(w,{linkClass:"security-key-manager",header:p.SECURITY_KEYS.header,actionType:p.SECURITY_KEYS.actionType,subtext:p.SECURITY_KEYS.subtext,actionElement:s.default.createElement(u.SecurityKeyManagerWithCSS,{initialKeys:[],userId:l.mustGetActiveUser().id}),actionTextAria:p.SECURITY_KEYS.actionTextAria,twoStepEnabled:b,twoStepBackupUpdated:E}),s.default.createElement(w,{header:p.TRUSTED_DEVICES.header,actionType:p.TRUSTED_DEVICES.actionType,subtext:p.TRUSTED_DEVICES.subtext,actionElement:p.TRUSTED_DEVICES.actionText,actionTextAria:p.TRUSTED_DEVICES.actionTextAria,twoStepEnabled:b,twoStepBackupUpdated:E})))}),["/static/css/twofactor-vfluudA6V.css"])})),define("metaserver/static/js/modules/clean/account_page/widgets/web_sessions/api",["require","exports","metaserver/static/js/modules/clean/deprecated_ajax/ajax_as_promised_jquery","metaserver/static/js/api_v2/user_client"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.requestSessionUnlink=t.getWebSessions=void 0,t.getWebSessions=function(e){return a.WebRequest({url:"/account/get_active_sessions",subject_user:e,dataType:"json"})},t.requestSessionUnlink=function(e,t){return(new s.UserApiV2Client).ns("security_settings").rpc("logout_user_session_v2",{remote_login_id:t.login_id},{subjectUserId:e})}})),define("metaserver/static/js/modules/clean/account_page/widgets/web_sessions/util",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getBrowserIcon=void 0,t.getBrowserIcon=function(e){let t="s_browser_generic";const a=[["Chrome","s_browser_chrome"],["Firefox","s_browser_firefox"],["Internet Explorer","s_browser_ie"],["Safari","s_browser_safari"],["Opera","s_browser_opera"]];for(const s of a){const[a,n]=s;e.indexOf(a)>-1&&(t=n)}return t}})),define("metaserver/static/js/modules/clean/account_page/widgets/web_sessions/view",["require","exports","tslib","react","styled-components","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/core/notify","metaserver/static/js/modules/clean/datetime/datetime","metaserver/static/js/modules/clean/react/sprite","metaserver/static/js/modules/clean/account_page/widgets/web_sessions/util","metaserver/static/js/modules/clean/account_page/components/action_table","metaserver/static/js/modules/clean/account_page/components/loading","metaserver/static/js/modules/clean/account_page/components/info_tooltip","metaserver/static/js/modules/clean/active_user","metaserver/static/js/modules/clean/account_page/widgets/web_sessions/api"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m,p,f){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebSessions=void 0,s=a.__importStar(s);const g=(n=a.__importDefault(n)).default(l.Sprite)` margin-top: -3px; margin-right: var(--spacing__base_unit); `,_=n.default.div` display: flex; align-items: center; &:nth-child(1) { margin-left: var(--spacing__base_unit); } `,v=n.default.div` display: flex; align-items: flex-start; justify-content: center; flex-direction: column; `;function h({session:e,column:t}){if("browser"===t){const t=i.intl.formatMessage({id:"MLLXJ9",defaultMessage:"{browser_name} on {os_name}"},{browser_name:e.browser_name,os_name:e.os_name});return s.default.createElement(_,null,s.default.createElement(g,{group:"web",name:c.getBrowserIcon(e.browser_name),alt:""}),s.default.createElement("span",null,t))}if("location"===t)return s.default.createElement(s.default.Fragment,null,e.location||i.intl.formatMessage({id:"vHgZs0",defaultMessage:"Unknown"}));if("most_recent_activity"===t){const t=e.is_current?i.intl.formatMessage({id:"6K4ty0",defaultMessage:"Current session"}):o.ago(e.last_activity),a=s.default.createElement(v,null,s.default.createElement("div",null,s.default.createElement("b",null,i.intl.formatMessage({id:"G2xST/",defaultMessage:"Signed in"})),": ",o.ago(e.created)),s.default.createElement("div",null,s.default.createElement("b",null,i.intl.formatMessage({id:"EfUQcM",defaultMessage:"IP Address"})),": ",e.ip_address));return s.default.createElement(m.InfoTooltip,{prompt:t,content:a})}return null}t.WebSessions=function(){const[e,t]=s.useState(!1),[n,o]=s.useState([]);let l;s.useEffect(()=>{(()=>{a.__awaiter(this,void 0,void 0,(function*(){t(!0),o(yield f.getWebSessions(p.mustGetActiveUser().id)),t(!1)}))})()},[]),l="personal"===p.mustGetActiveUser().role?i.intl.formatMessage({id:"eHVNIL",defaultMessage:"These browsers are currently signed in to your personal Dropbox account."}):i.intl.formatMessage({id:"Kh0llv",defaultMessage:"These browsers are currently signed in to your work Dropbox account."});const c={browser:i.intl.formatMessage({id:"VKLPXm",defaultMessage:"Browser"}),location:i.intl.formatMessage({id:"0hnGgQ",defaultMessage:"Location"}),most_recent_activity:i.intl.formatMessage({id:"5z5P+5",defaultMessage:"Most recent activity"})};return s.default.createElement("div",{className:"account-page-block account-page-block--web-sessions"},s.default.createElement("h2",{className:"account-page-block__heading"},i.intl.formatMessage({id:"qy1Y7J",defaultMessage:"Web browsers"})),s.default.createElement("p",{className:"account-page-block__subtext"},l),e?s.default.createElement(u.Loading,null):s.default.createElement(d.ActionTable,{keys:["browser","location","most_recent_activity"],headers:c,data:n,renderRowDetail:(e,t)=>s.default.createElement(h,{session:e,column:t}),onClosePressed:function(e){return a.__awaiter(this,void 0,void 0,(function*(){t(!0),yield f.requestSessionUnlink(p.mustGetActiveUser().id,e),o(n.filter(t=>t.login_id!==e.login_id)),t(!1),r.Notify.success(i.intl.formatMessage({id:"pQ+CTN",defaultMessage:"Successfully logged out of remote web session."}))}))},hideClose:e=>e.is_current,sortFunction:function(e,t){return e.is_current||t.is_current?Number(t.is_current)-Number(e.is_current):t.last_activity-e.last_activity},tableClass:["four-column-table","web-sessions-table"],dismissAriaLabel:e=>i.intl.formatMessage({id:"RqEn6C",defaultMessage:"{ location } End session"},{location:e.location}),dismissHeaderAriaLabel:i.intl.formatMessage({id:"jA9MMw",defaultMessage:"End session"})}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/mobile_contacts/api",["require","exports","tslib","metaserver/static/js/modules/clean/deprecated_ajax/ajax_as_promised_jquery","metaserver/static/js/modules/clean/active_user"],(function(e,t,a,s,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeContactsForDevice=t.getConnectedDevices=void 0,t.getConnectedDevices=function(){return a.__awaiter(this,void 0,void 0,(function*(){return s.WebRequest({url:"/account/mobile_contact_devices",subject_user:n.mustGetActiveUserId(),dataType:"json"})}))},t.removeContactsForDevice=function(e){return a.__awaiter(this,void 0,void 0,(function*(){return s.WebRequest({url:"/account/purge_contacts_from_device",subject_user:n.mustGetActiveUserId(),dataType:"json",data:{device_id:e.device_id,app_id:e.app_id}})}))}})),define("metaserver/static/js/modules/clean/account_page/widgets/mobile_contacts/view",["require","exports","tslib","react","styled-components","spectrum/icon_form/index","metaserver/static/js/modules/core/i18n","metaserver/static/js/modules/clean/account_page/components/account_table","metaserver/static/js/modules/clean/account_page/components/loading","metaserver/static/js/modules/clean/account_page/widgets/mobile_contacts/api","metaserver/static/js/modules/clean/datetime/datetime","metaserver/static/js/modules/clean/react/sprite","metaserver/static/js/modules/clean/react/components/modal"],(function(e,t,a,s,n,i,r,o,l,c,d,u,m){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.MobileContacts=void 0,s=a.__importStar(s);const p=(n=a.__importDefault(n)).default(u.Sprite)` margin-right: var(--spacing__base_unit); `,f=n.default(o.HeaderRow)` th:nth-child(1) { width: 60%; } th:nth-child(2) { width: 30%; } th:nth-child(3) { width: 10%; } `;t.MobileContacts=function(){const[e,t]=s.useState(!1),[n,u]=s.useState([]);if(s.useEffect(()=>{(()=>{a.__awaiter(this,void 0,void 0,(function*(){t(!0),u(yield c.getConnectedDevices()),t(!1)}))})()},[]),e)return s.default.createElement("div",{className:"account-page-block account-page-block--mobile-contacts"},s.default.createElement(l.Loading,null));const g=r.intl.formatMessage({id:"oRar4M",defaultMessage:"You’ve imported contacts from the following mobile devices."}),_=r.intl.formatMessage({id:"ewbeK0",defaultMessage:"You haven’t imported contacts from any mobile devices."}),v=0===n.length?_:g;return s.default.createElement("div",{className:"account-page-block"},s.default.createElement("h2",{className:"account-page-block__heading"},r.intl.formatMessage({id:"bU2V03",defaultMessage:"Mobile contacts"})),s.default.createElement("p",{className:"account-page-block__subtext"},v),n.length>0&&s.default.createElement(o.Table,null,s.default.createElement(o.TableHead,null,s.default.createElement(f,null,s.default.createElement(o.HeaderCell,null,r.intl.formatMessage({id:"edehVw",defaultMessage:"Device name"})),s.default.createElement(o.HeaderCell,null,r.intl.formatMessage({id:"5z5P+5",defaultMessage:"Most recent activity"})),s.default.createElement(o.HeaderCell,null))),s.default.createElement(o.TableBody,null,n.map((e,t)=>{const a=r.intl.formatMessage({id:"FvXtZK",defaultMessage:"{device_name} icon"},{device_name:e.device_name});return s.default.createElement(o.BodyRow,{key:t},s.default.createElement(o.BodyCell,null,s.default.createElement(p,{group:"web",name:e.sprite,alt:a})," ",e.device_name),s.default.createElement(o.BodyCell,null,d.ago(e.last_activity_ms)),s.default.createElement(o.BodyCell,null,s.default.createElement(i.IconForm,{name:"cancel",onClick:()=>(function(e){m.SimpleModal.show({title_text:r.intl.formatMessage({id:"HsXino",defaultMessage:"Remove imported contacts?"}),body_html:r.intl.formatMessage({id:"segCBY",defaultMessage:"This will remove the contacts imported from this device and sign you out of the Dropbox mobile app. If you sign into the app later, your contacts may be imported to Dropbox again."}),confirm_text:r.intl.formatMessage({id:"gEIkEu",defaultMessage:"Remove contacts"}),cancel_text:r.intl.formatMessage({id:"d9/SE1",defaultMessage:"Cancel"}),autoclose:!0,confirm_callback:()=>c.removeContactsForDevice(e)})})(e)})))}))))}})),define("metaserver/static/js/modules/clean/react/campaigns/api",["require","exports","tslib","metaserver/static/js/modules/clean/active_user","metaserver/static/js/api_v2/default_user_client","metaserver/static/js/modules/core/exception"],(function(e,t,a,s,n,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getBestCampaignsForUser=void 0,i=a.__importStar(i),t.getBestCampaignsForUser=function(e){if(!e.campaign_properties||0===Object.keys(e.campaign_properties).length)throw new Error("campaign_properties cannot be empty");const t=s.mustGetActiveUser();return new n.DefaultUserApiV2Client(t).ns("campaigns_toolkit").rpc("get_best_campaigns_for_user",e,{}).catch(t=>(i.reportException({err:t,tags:["fetchCampaigns","activation-platform","activation","onboarding-activation"],severity:i.SEVERITY.NONCRITICAL,exc_extra:{args:e}}),{campaigns:[],campaigns_to_slots:{}}))}})),define("metaserver/static/js/modules/clean/react/campaigns/campaign_hooks",["require","exports","react","metaserver/static/js/modules/clean/react/campaigns/campaign_events_api","metaserver/static/js/modules/clean/react/campaigns/emitter"],(function(e,t,a,s,n){"use strict";function i(e){s.logCampaignImpression(e)}function r(e){s.logCampaignImpressionDeclined(e)}Object.defineProperty(t,"__esModule",{value:!0}),t.useCampaignDismissed=t.useCampaignClick=t.useCampaignAsync=t.useCampaign=void 0,t.useCampaign=function(e,t){a.useEffect(()=>{(null==e?void 0:e.campaignImpressionId)&&(t?r(e):i(e))},[])},t.useCampaignAsync=function(){return{onCampaignImpression:a.useCallback((function(e,t){e.campaignImpressionId&&(t?r(e):i(e))}),[])}},t.useCampaignClick=function(e,t){return{onCampaignClickCallback:a.useCallback((function(){(null==e?void 0:e.campaignImpressionId)&&s.logCampaignClick(e,t)}),[e,t])}},t.useCampaignDismissed=function(e){return{onCampaignDismissedCallback:a.useCallback((function(){(null==e?void 0:e.campaignId)&&n.emitCampaignDismissed(null==e?void 0:e.campaignId),(null==e?void 0:e.campaignImpressionId)&&(s.logCampaignDismissed(e),s.setCampaignDismissedInUserMetadata(null==e?void 0:e.campaignId,null==e?void 0:e.campaignImpressionId,null==e?void 0:e.userId))}),[e])}}}));var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,s){void 0===s&&(s=a),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[a]}})}:function(e,t,a,s){void 0===s&&(s=a),e[s]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t};define("metaserver/static/js/modules/clean/react/campaigns/campaign_formats/banner/loadable_banner",["require","exports","metaserver/static/js/modules/clean/react/async/loadable"],(function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncCampaignBanner=void 0,t.AsyncCampaignBanner=a.Loadable({loader:()=>new Promise((t,a)=>{e(["metaserver/static/js/modules/clean/react/campaigns/campaign_formats/banner/banner"],t,a)}).then(__importStar).then(({CampaignBanner:e})=>e)})}));__createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,s){void 0===s&&(s=a),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[a]}})}:function(e,t,a,s){void 0===s&&(s=a),e[s]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t};define("metaserver/static/js/modules/clean/react/campaigns/campaign_formats/banner/loadable_campaign_banner",["require","exports","metaserver/static/js/modules/clean/react/async/loadable"],(function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncCampaignBanner=void 0,t.AsyncCampaignBanner=a.Loadable({loader:()=>new Promise((t,a)=>{e(["metaserver/static/js/modules/clean/react/campaigns/campaign_formats/banner/campaign_banner"],t,a)}).then(__importStar).then(({CampaignBannerConversionComponent:e})=>e)})})),define("metaserver/static/js/modules/clean/react/campaigns/campaign_formats/index",["require","exports","tslib","react","metaserver/static/js/modules/clean/react/campaigns/campaign_formats/banner/loadable_banner","metaserver/static/js/modules/clean/react/campaigns/emitter","metaserver/static/js/modules/clean/react/campaigns/types","metaserver/static/js/modules/clean/react/campaigns/utils","metaserver/static/js/modules/clean/react/campaigns/errors"],(function(e,t,a,s,n,i,r,o,l){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CampaignFormatWithListener=t.CampaignFormat=t.CAMPAIGN_FORMATS=void 0,s=a.__importStar(s),t.CAMPAIGN_FORMATS={[r.CampaignFormats.BANNER]:n.AsyncCampaignBanner},t.CampaignFormat=({allowedComponents:e,impression:a})=>{var n,i,r,c;const d=null===(i=null===(n=a.campaign_variant_descriptor)||void 0===n?void 0:n.variant_content)||void 0===i?void 0:i.format,u=t.CAMPAIGN_FORMATS[d],m=o.checkForRequiredKeysInContentDictionary(a);if(!e.includes(d)||!u||!m)return l.logCampaignFormatFailedRenderError(new l.CampaignFormatFailedRenderError(e.includes(d)?null:d||"undefined",u?null:d||"undefined",!m)),null;const p=null===(c=null===(r=a.campaign_variant_descriptor)||void 0===r?void 0:r.variant_content)||void 0===c?void 0:c.container;if(p){const e={"data-testid":"campaign-format-container"};return s.default.createElement(p.tag||"div",Object.assign(Object.assign({},e),p.props),s.default.createElement(u,Object.assign({},a)))}return s.default.createElement(u,Object.assign({},a))},t.CampaignFormatWithListener=({allowedComponents:e,slotId:a})=>{const[n,r]=s.useState();return s.useEffect(()=>(i.campaignsEmitter.on(a,r),()=>{i.campaignsEmitter.off(a)}),[]),n?s.default.createElement(t.CampaignFormat,Object.assign({},{allowedComponents:e,impression:n})):null}})),define("metaserver/static/js/modules/clean/react/campaigns/campaign_formats/index_new",["require","exports","tslib","react","metaserver/static/js/modules/clean/react/campaigns/emitter","metaserver/static/js/modules/clean/react/campaigns/filters/index","metaserver/static/js/modules/clean/react/campaigns/history_utils","metaserver/static/js/modules/clean/react/campaigns/campaign_formats/banner/loadable_campaign_banner","metaserver/static/js/modules/clean/react/campaigns/campaign_formats/menu/loadable_campaign_menu_item","metaserver/static/js/modules/clean/react/campaigns/campaign_formats/modal/loadable_campaign_modal","metaserver/static/js/modules/clean/react/campaigns/campaign_formats/snackbar/loadable_campaign_snackbar"],(function(e,t,a,s,n,i,r,o,l,c,d){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CampaignSlot=t.shouldCampaignRender=t.preloadCampaign=t.CampaignFormat=void 0,s=a.__importStar(s),t.CampaignFormat=e=>{var t;const a=null===(t=e.campaign.content)||void 0===t?void 0:t[".tag"];if(!a)return null;switch(a){case"banner_campaign_format":return s.default.createElement(o.AsyncCampaignBanner,Object.assign({},e));case"menu_item_campaign_format":return s.default.createElement(l.AsyncCampaignMenuItem,Object.assign({},e));case"snackbar_campaign_format":return s.default.createElement(d.AsyncCampaignSnackbar,Object.assign({},e));case"modal_campaign_format":return s.default.createElement(c.AsyncCampaignModal,Object.assign({},e));default:return null}},t.preloadCampaign=e=>{var t;const a=r.getEvents(e);if(a&&a.length>0){const{data:e,context:s}=a[a.length-1],n=i.getFiltersForCampaign(null===(t=e.campaign)||void 0===t?void 0:t.campaign.campaign_id);return{campaignProps:e.campaign,contextData:s,filters:n}}return{}},t.shouldCampaignRender=(e,t,a)=>{if(t&&!e)return!0;if(t&&e){const s={campaignProps:t,contextData:a};return e.every(e=>e(s))}return!1},t.CampaignSlot=({slotId:e,initialState:a={campaignProps:void 0,contextData:void 0,filters:void 0,loggingParams:void 0}})=>{const[{campaignProps:r,contextData:o,filters:l,loggingParams:c},d]=s.useState(a),u=s.useMemo(()=>t.shouldCampaignRender(l,r,o),[r,o,l]);if(s.useEffect(()=>{const t=({data:e}={data:{}})=>{var t;const a=i.getFiltersForCampaign(null===(t=null==e?void 0:e.campaign)||void 0===t?void 0:t.campaign.campaign_id);d({campaignProps:(null==e?void 0:e.campaign)||r,contextData:(null==e?void 0:e.context)||o,filters:a||l,loggingParams:(null==e?void 0:e.loggingParams)||c})};return n.campaignsEmitter.on(e,t),()=>{n.campaignsEmitter.off(e,t)}},[]),r&&u){const e=Object.assign(Object.assign({},r),{contextData:o,loggingParams:c});return s.default.createElement(t.CampaignFormat,Object.assign({},e))}return null},t.CampaignSlot.displayName="CampaignSlot"}));__createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,s){void 0===s&&(s=a),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[a]}})}:function(e,t,a,s){void 0===s&&(s=a),e[s]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t};define("metaserver/static/js/modules/clean/react/campaigns/campaign_formats/menu/loadable_campaign_menu_item",["require","exports","metaserver/static/js/modules/clean/react/async/loadable"],(function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncCampaignMenuItem=void 0,t.AsyncCampaignMenuItem=a.Loadable({loader:()=>new Promise((t,a)=>{e(["metaserver/static/js/modules/clean/react/campaigns/campaign_formats/menu/campaign_menu_item"],t,a)}).then(__importStar).then(({CampaignMenuItemConversionComponent:e})=>e)})}));__createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,s){void 0===s&&(s=a),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[a]}})}:function(e,t,a,s){void 0===s&&(s=a),e[s]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t};define("metaserver/static/js/modules/clean/react/campaigns/campaign_formats/snackbar/loadable_campaign_snackbar",["require","exports","metaserver/static/js/modules/clean/react/async/loadable"],(function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncCampaignSnackbar=void 0,t.AsyncCampaignSnackbar=a.Loadable({loader:()=>new Promise((t,a)=>{e(["metaserver/static/js/modules/clean/react/campaigns/campaign_formats/snackbar/campaign_snackbar"],t,a)}).then(__importStar).then(({CampaignSnackbarConversionComponent:e})=>e)})}));__createBinding=this&&this.__createBinding||(Object.create?function(e,t,a,s){void 0===s&&(s=a),Object.defineProperty(e,s,{enumerable:!0,get:function(){return t[a]}})}:function(e,t,a,s){void 0===s&&(s=a),e[s]=t[a]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var a in e)"default"!==a&&Object.prototype.hasOwnProperty.call(e,a)&&__createBinding(t,e,a);return __setModuleDefault(t,e),t};define("metaserver/static/js/modules/clean/react/campaigns/campaign_formats/modal/loadable_campaign_modal",["require","exports","metaserver/static/js/modules/clean/react/async/loadable"],(function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AsyncCampaignModal=void 0,t.AsyncCampaignModal=a.Loadable({loader:()=>new Promise((t,a)=>{e(["metaserver/static/js/modules/clean/react/campaigns/campaign_formats/modal/campaign_modal"],t,a)}).then(__importStar).then(({CampaignModalConversionComponent:e})=>e)})})),define("metaserver/static/js/modules/clean/react/campaigns/emitter",["require","exports","tslib","eventemitter3"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.publishEvent=t.emitPageLoaded=t.emitCampaignDismissed=t.emitCampaignToSlot=t.getSlotFromCampaignFormatProps=t.getSlotFromImpression=t.campaignsEmitter=t.CampaignsEventEmitter=t.CAMPAIGN_EVENT=t.PAGE_LOADED=t.CAMPAIGN_DISMISSED=void 0,s=a.__importDefault(s),t.CAMPAIGN_DISMISSED="campaign-dismissed",t.PAGE_LOADED="page-loaded",t.CAMPAIGN_EVENT="campaign-event";class n extends s.default{constructor(){super(),this.allEventBuffers={}}on(e,t){super.on(e,t);const a=this.allEventBuffers[e.toString()];return void 0!==a&&a.forEach(t=>{super.emit(e,t)}),this}emit(e,t){return t&&"object"==typeof t&&"name"in t&&(void 0===this.allEventBuffers[t.name]&&(this.allEventBuffers[t.name]=[]),this.allEventBuffers[t.name].push(t)),super.emit(e,t)}}t.CampaignsEventEmitter=n,t.campaignsEmitter=new n,t.getSlotFromImpression=e=>{var t,a,s;return null===(s=null===(a=null===(t=null==e?void 0:e.campaign_variant_descriptor)||void 0===t?void 0:t.variant_content)||void 0===a?void 0:a.slot)||void 0===s?void 0:s[".tag"]},t.getSlotFromCampaignFormatProps=e=>{var t;return null===(t=null==e?void 0:e.slotId)||void 0===t?void 0:t[".tag"]},t.emitCampaignToSlot=(e,a,s)=>{const n=t.getSlotFromCampaignFormatProps(e);n&&"other"!==n&&t.campaignsEmitter.emit(n,{name:n,data:{campaign:e,context:a,loggingParams:s}})},t.emitCampaignDismissed=e=>{t.campaignsEmitter.emit(t.CAMPAIGN_DISMISSED,e)},t.emitPageLoaded=e=>{t.campaignsEmitter.emit(t.PAGE_LOADED,{name:t.PAGE_LOADED,data:{page:e}})},t.publishEvent=(e,a={})=>{t.campaignsEmitter.emit(t.CAMPAIGN_EVENT,{name:e,data:a})}})),define("metaserver/static/js/modules/clean/react/campaigns/errors",["require","exports","tslib","metaserver/static/js/modules/core/exception"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.logCampaignFormatFailedRenderError=t.CampaignFormatFailedRenderError=t.logCampaignFormatMissingRequiredContentError=t.CampaignFormatMissingRequiredContentError=void 0,s=a.__importStar(s);class n extends Error{constructor(e,t){super("The following required properties are missing from the content dictionary for the "+e+" format: "+t.join(", ")),Object.setPrototypeOf(this,n.prototype)}}t.CampaignFormatMissingRequiredContentError=n,t.logCampaignFormatMissingRequiredContentError=function(e){s.reportException({err:e,severity:s.SEVERITY.NONCRITICAL,tags:["campaigns","toolkit","missing","required","properties"]})};class i extends Error{constructor(e,t,a){super((null==e?"":`The format: ${e} is not allowed `)+(null==t?"":`There is no matching format component for: ${t} `)+(a?"":"Required keys are missing")),Object.setPrototypeOf(this,i.prototype)}}t.CampaignFormatFailedRenderError=i,t.logCampaignFormatFailedRenderError=function(e){s.reportException({err:e,severity:s.SEVERITY.NONCRITICAL,tags:["campaigns","toolkit","FormatFailedRender"]})}})),define("metaserver/static/js/modules/clean/react/campaigns/filters/index",["require","exports","metaserver/static/js/modules/clean/react/campaigns/filters/constants","metaserver/static/js/modules/clean/react/campaigns/filters/shop_filters"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getFiltersForCampaign=t.CAMPAIGNS_TO_FILTERS=void 0,t.CAMPAIGNS_TO_FILTERS={[a.SHOP_MENU_ITEM_CAMPAIGN_ID]:[s.isScreenSizeSupportedForShopCampaigns,s.checkSelectedFilesShopEligibility,s.qualifyShopByVersionId],[a.SHOP_MENU_ITEM_CAMPAIGN_ID_TEST]:[s.isScreenSizeSupportedForShopCampaigns,s.checkSelectedFilesShopEligibility],[a.SHOP_MODAL_CAMPAIGN_ID]:[s.isScreenSizeSupportedForShopCampaigns,s.hasOpenedShareSettings,s.checkSelectedFilesShopEligibility,s.qualifyShopByVersionId],[a.SHOP_MODAL_CAMPAIGN_ID_TEST]:[s.isScreenSizeSupportedForShopCampaigns,s.hasOpenedShareSettings,s.checkSelectedFilesShopEligibility]},t.getFiltersForCampaign=function(e=-1){return t.CAMPAIGNS_TO_FILTERS[e]||[]}})),define("metaserver/static/js/modules/clean/react/campaigns/filters/constants",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.SHOP_MODAL_TEST=t.SHOP_MODAL_CAMPAIGN_ID_TEST=t.SHOP_MENU_ITEM_TEST=t.SHOP_MENU_ITEM_CAMPAIGN_ID_TEST=t.SHOP_MODAL_CONTROL=t.SHOP_MODAL_V1=t.SHOP_MODAL_CAMPAIGN_ID=t.SHOP_MENU_ITEM_CONTROL=t.SHOP_MENU_ITEM_V1=t.SHOP_MENU_ITEM_CAMPAIGN_ID=void 0,t.SHOP_MENU_ITEM_CAMPAIGN_ID=6014,t.SHOP_MENU_ITEM_V1=13826,t.SHOP_MENU_ITEM_CONTROL=13827,t.SHOP_MODAL_CAMPAIGN_ID=6113,t.SHOP_MODAL_V1=13981,t.SHOP_MODAL_CONTROL=13980,t.SHOP_MENU_ITEM_CAMPAIGN_ID_TEST=5921,t.SHOP_MENU_ITEM_TEST=13789,t.SHOP_MODAL_CAMPAIGN_ID_TEST=6119,t.SHOP_MODAL_TEST=13970})),define("metaserver/static/js/modules/clean/react/campaigns/filters/shop_filters",["require","exports","metaserver/static/js/modules/clean/react/campaigns/filters/constants","metaserver/static/js/modules/clean/react/campaigns/types","metaserver/static/js/modules/clean/react/onboarding/logging/events","metaserver/static/js/modules/clean/react/onboarding/logging/logging","metaserver/static/js/modules/clean/react/campaigns/history_utils"],(function(e,t,a,s,n,i,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isScreenSizeSupportedForShopCampaigns=t.hasOpenedShareSettings=t.qualifyShopByVersionId=t.checkSelectedFilesShopEligibility=void 0;const o=["bmp","cr2","gif","ico","ithmb","jpeg","jpg","nef","png","raw","svg","tif","tiff","wbmp","webp","aac","aif","aifc","aiff","au","flac","m4a","mid","mp3","m4b","m4p","m4r","oga","ogg","opus","ra","ram","spx","wav","wm","3gp","3gpp","3gpp2","3g2","asf","avi","dv","dvi","flv","m2t","mp4","m4v","mkv","mov","mpeg","mpg","mts","ogv","ogx","rm","rmvb","ts","vob","webm","wm","pdf"];t.checkSelectedFilesShopEligibility=({contextData:e})=>Object.keys(e.fileExts).every(e=>o.includes(e)),t.qualifyShopByVersionId=({campaignProps:e,contextData:t})=>{const{campaign_id:s,version_id:r}=e.campaign,{fileExts:o,referrer:l}=t;let c="UNKNOWN";return s===a.SHOP_MENU_ITEM_CAMPAIGN_ID?r===a.SHOP_MENU_ITEM_V1?c="V1":r===a.SHOP_MENU_ITEM_CONTROL&&(c="CONTROL"):s===a.SHOP_MODAL_CAMPAIGN_ID&&(r===a.SHOP_MODAL_V1?c="V1":r===a.SHOP_MODAL_CONTROL&&(c="CONTROL")),t.shouldLogQualifyEvent&&i.OALogger.logToProEvents(n.ShopEntryPointEvents.SHOP_ENTRY_POINT_QUALIFY,{experiment:"core_act_shop_entry_point",location:l,file_exts:o,campaignId:s,versionId:r,variantName:c}),"V1"===c},t.hasOpenedShareSettings=({contextData:e})=>{const t=r.hasEventInHistory(s.CampaignEvents.SHARE_MODAL_SETTINGS_OPENED,e);return t&&r.removeEventFromHistory(s.CampaignEvents.SHARE_MODAL_SETTINGS_OPENED,e),t},t.isScreenSizeSupportedForShopCampaigns=()=>screen.availWidth>=625||screen.availHeight>=570})),define("metaserver/static/js/modules/clean/react/campaigns/history_utils",["require","exports","lodash","metaserver/static/js/modules/clean/react/campaigns/emitter"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeEventFromHistory=t.resetHistoryForEvent=t.hasEventInHistory=t.getHistoryForEvent=t.getEvents=t.getEventBuffers=t.filterOutEvent=t.filterForEvent=void 0;const n=(e={},t={})=>Object.entries(t).every(([t,s])=>a.isEqual(e[t],s));t.filterForEvent=(e,t)=>e.filter(({data:e})=>n(null==e?void 0:e.context,t)),t.filterOutEvent=(e,t)=>e.filter(({data:e})=>!n(null==e?void 0:e.context,t)),t.getEventBuffers=()=>s.campaignsEmitter.allEventBuffers,t.getEvents=(e=null)=>e?t.getEventBuffers()[e]||[]:a.flatten(Object.values(t.getEventBuffers())),t.getHistoryForEvent=(e,a=null)=>{const s=t.getEvents(e);return a&&s.length?t.filterForEvent(s,a):s},t.hasEventInHistory=(e,a)=>!!t.filterForEvent(t.getEvents(e),a).length,t.resetHistoryForEvent=e=>{s.campaignsEmitter.allEventBuffers[e]=[]},t.removeEventFromHistory=(e,a)=>{if(t.getEventBuffers()[e])return a?void(s.campaignsEmitter.allEventBuffers[e]=t.filterOutEvent(t.getEventBuffers()[e],a)):t.resetHistoryForEvent(e)}})),define("metaserver/static/js/modules/clean/react/campaigns/types",["require","exports"],(function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CampaignEvents=t.ActionHandlers=t.CampaignFormats=void 0,(function(e){e.BANNER="banner"})(t.CampaignFormats||(t.CampaignFormats={})),(function(e){e.LAUNCH_URL_IN_NEW_TAB="launch_url_in_new_tab",e.OPEN_URL_IN_NEW_TAB="open_url_in_new_tab"})(t.ActionHandlers||(t.ActionHandlers={})),(function(e){e.SHARE_MODAL_CLOSED="share_modal_closed",e.SHARE_MODAL_SETTINGS_OPENED="share_modal_settings_opened"})(t.CampaignEvents||(t.CampaignEvents={}))})),define("metaserver/static/js/modules/clean/react/campaigns/utils",["require","exports","metaserver/static/js/modules/clean/react/campaigns/errors","metaserver/static/js/modules/clean/react/campaigns/types"],(function(e,t,a,s){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.handleCampaignMenuSelection=t.checkForRequiredKeysInContentDictionary=t.requiredPropMapping=void 0,t.requiredPropMapping={[s.CampaignFormats.BANNER]:["message","cta_button_text","on_cta_button_click"]},t.checkForRequiredKeysInContentDictionary=function(e){var s,n,i,r;const o=null===(n=null===(s=e.campaign_variant_descriptor)||void 0===s?void 0:s.variant_content)||void 0===n?void 0:n.format,l=(null===(r=null===(i=e.campaign_variant_descriptor)||void 0===i?void 0:i.variant_content)||void 0===r?void 0:r.content)||{},c=t.requiredPropMapping[o]||[];for(const e of c)if(!(e in l))return a.logCampaignFormatMissingRequiredContentError(new a.CampaignFormatMissingRequiredContentError(o||"",c.filter(e=>!l[e]))),!1;return!0},t.handleCampaignMenuSelection=(e,t,a)=>{if(e.hasOwnProperty("campaignHandler"))return e.campaignHandler(t);a(e)}})); //# sourceMappingURL=pkg-account_security.min.js-vfljLQK-3.map