SC.MODULE_INFO['cloudkit/error_catcher'].source = "SC.stringsFor(\"en-us\",{\"ErrorCatcher.Dialog.Title\":\"%@ has stopped responding.\",\"ErrorCatcher.Dialog.Title.NoApp\":\"Application has unexpectedly stopped.\",\"ErrorCatcher.Dialog.Text\":\"An error has prevented this application from working properly. Help Apple improve its products by sending us diagnostic and usage information about iCloud.\",\"ErrorCatcher.Dialog.Caption\":'By clicking “Send to Apple” you agree that Apple will collect and use this information as part of its support services and to improve its products and services. This report will include personal information such as your member name and user data. To learn more about Apple\\'s Privacy Policy, see https://www.apple.com/privacy/.',\"ErrorCatcher.Dialog.Details\":\"Details\",\"ErrorCatcher.Dialog.ReloadButton\":\"Reload\",\"ErrorCatcher.Dialog.ReportButton\":\"Send to Apple\",\"ErrorCatcher.Dialog.CloseButton\":\"Close\"}),CK.errorCatcher.mixin({MAX_RECENT_LOG_MESSAGES_SIZE:48e3,initMixin:function(){this._radarComponents=SC.merge(this._radarComponents,{contacts:{name:\"iCloud Contacts Web App\",version:\"All\"},mail:{name:\"iCloud Mail Web Client\",version:\"All\"},find:{name:\"iCloud FMiP Web\",version:\"1.0\"},fmf:{name:\"iCloud FMF Web\",version:\"1.0\"},calendar:{name:\"iCloud Calendar Web App\",version:\"All\"},cloudos:{name:\"iCloud CloudOS\",version:\"All\"},notes:{name:\"iCloud Notes Web App (IMAP)\",version:\"All\"},notes2:{name:\"iCloud Notes Web App\",version:\"All\"},photos:{name:\"iCloud Photos Web App\",version:\"All\"},reminders:{name:\"iCloud Reminders Web App\",version:\"All\"},iclouddrive:{name\n:\"iCloud Drive Web App\",version:\"All\"},settings:{name:\"iCloud Settings Web App\",version:\"All\"}})},moduleDidLoad:function(e,t){this.customize&&this.customize();var n=t.applicationName||\"cloudos\",r=SC.clone(t,YES),i;r.type=t.type,r=this._fieldsForHash(r,n),this.displayExceptionDialog(r,n,t)},displayExceptionDialog:function(e,t,n){var r,i=\"ErrorCatcher.Dialog.Text\".loc(),s=\"ErrorCatcher.Dialog.Caption\".loc(),o=e.type,u=e.text,a,f,l=CloudOS.getAppInfo(t);l?r=l.get(\"displayName\"):r=(\"AppTitle.\"+t).loc(),e.errorTitle?f=e.errorTitle:r&&!CK.currentApplication?f=\"ErrorCatcher.Dialog.Title\".loc(r):f=\"ErrorCatcher.Dialog.Title.NoApp\".loc(),o!==\"exception\"&&(f=n.title?n.title:f,i=n.message?n.message:i);var c=this;this._alert=CW.Alert.show({message:f,description:i,escapeHTML:YES,layout:{centerX:0,width:500,centerY:0,minHeight:160,zIndex:1e4},image:\"icon-icloud error\",leftButton:function(){var e=CloudOS.isCloudOSClient?COS.authController.get(\"isAppleInternal\"):!1;if(!e)return;return{title:\"Create Radar\",action:\"createRadar\"}}(),rightButton:{title:\"ErrorCatcher.Dialog.ReportButton\".loc(),action:\"report\"},middleButton:{title:CK.errorCatcher._shouldReload(n.isFatal,t)?\"ErrorCatcher.Dialog.ReloadButton\".loc():\"ErrorCatcher.Dialog.CloseButton\".loc(),action:\"close\"},close:function(){c.exitErrorCatcher(n,t),this.remove()},report:function(){c.sendErrorReport(e,t,n),this.remove()},createRadar:function(){var n=c._radarComponents[t],r=window.encodeURIComponent(n?n.name:\"iCloud Web\"),i=window.encodeURIComponent(n?n.version:\"All\"),s=window.encodeURIComponent(e.error||\"\"),o=window.encodeURIComponent(\"* SUMMARY\\nRecap the problem title and/or include more descriptive summary information.\\n\\n* ERROR CATCHER LOG\\n\\n\"+\nu),a=\"rdar://new/problem/component=%@&version=%@&title=%@&description=%@\".fmt(r,i,s,o);window.setTimeout(function(){window.location.href=a},1)},extraViewPadding:{top:15,bottom:8},extraView:CW.DetailsDisclosureView.design({caption:s,disclosureTitle:\"ErrorCatcher.Dialog.Details\".loc(),contentView:SC.TextFieldView.design({layout:{height:90},isTextArea:YES,isVisible:NO,value:u,escapeHTML:YES,isEditable:NO,render:function(e){var t=this.get(\"value\"),n=SC.browser.isEdge?' style=\"height: 100%;\"':\"\";this.get(\"escapeHTML\")&&(t=SC.RenderContext.escapeHTML(t)),e.setClass(\"text-area\",YES),e.push('
'),e.push('\")}})})}),CloudOS.recordStat(\"ErrorCatcherWasDisplayed\",{error:\"Error Catcher was displayed\",appName:t,type:n.type,isFatal:n.isFatal,reportedErrorTitle:e.error||e.errorTitle})},exitErrorCatcher:function(e,t){e.isFatal&&(CK.errorCatcher._shouldReload(YES,t)?CK.reloadWithReason(\"exitErrorCatcher\"):CloudOS.isCloudOSClient?CloudOS.appController.exitApplication(t,CK.EXIT_NON_FATAL):CK.currentApplication&&CK.currentApplication.isWindowApplication&&window.close()),e.dismissCallback&&e.dismissCallback.call(),CK.errorCatcher.set(\"isReporting\",NO)},sendErrorReport:function(e,t,n){var r=e.error||e.type,i=this,s,o,u,a,f=URI(window.location.href).domain();e.text=null,u={appName:t,errorType:n.type,errorTitle:r},u.error=u.errorTitle;for(s in e)o=e[s],o!==undefined&&o!==null&&(u[s]=o);a=CW.Request.postUrl(\"/reportError\"),a.set(\"addressPrefix\",\"https://feedbackws.%{currentDomain}\".fmt({currentDomain\n:f})),a.set(\"useCrossDomain\",YES),a.set(\"isJSON\",YES),a.set(\"attachIdentifyingHeaders\",NO),a.header(\"Content-Type\",\"text/plain\"),a.notify(200,this,function(e){return i.exitErrorCatcher(n,t),YES}),a.notify(0,this,function(e){return i.exitErrorCatcher(n,t),YES}),SC.debug(\"CloudKit: Sending error catcher report for “%@”\",t),a.send(u)},_fieldsForHash:function(e,t){e||(e={});var n,r,i;e.buildNumber=SC.buildNumber,e.masteringNumber=SC.masteringNumber,e.time=(new Date).toString()+\" (\"+Math.floor(new Date)+\")\",e.host=window.location.host,e.userAgent=navigator.userAgent+\"\",e.title=undefined,e.message=undefined,e.error&&(e.error=e.error.replace(/(\\r\\n|\\n|\\r|\\t)/gm,\" \")),n=CloudOS.isCloudOSClient?CloudOS.authController&&CloudOS.authController.get(\"user\"):CloudOS.getUser(),n&&n.get&&(r=n.get(\"dsid\"),e.dsid=n.get(\"dsid\")),e.environment=function(){return CloudOS.isCloudOSClient?COS.authController.get(\"environment\"):CloudOS.getEnvironment()}(),CloudOS.isCloudOSClient&&(e.cloudosLog=function(){return SC.Logger.stringifyRecordedLogMessages()||\"\"}().substr(-this.MAX_RECENT_LOG_MESSAGES_SIZE)),e.applicationLog&&(e.applicationLog=e.applicationLog.substr(-this.MAX_RECENT_LOG_MESSAGES_SIZE));var s=[],o,u,a,f,l,c,h,p;for(o in e){u=e[o];if(!u)continue;a=\"\",c=YES;for(f=0,l=o.length;f